hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ted Yu <yuzhih...@gmail.com>
Subject Re: HBase0.92: In Filter, ReturnCode.NEXT_ROW may lead to next columnFamily but not next row?
Date Thu, 23 Feb 2012 03:07:56 GMT
N:
Can you publish your code on pastebin or somewhere ?
Mailing list strips attachment.

Thanks

On Tue, Feb 21, 2012 at 5:47 PM, NNever <nneverwei@gmail.com> wrote:

> Attach is my test customFilter code --- TestFilter.
> It just simply extends FilterBase and do some system.out...
> You can just try any Table has more than one columnFamily like below:
>
> *Scan scan = new Scan();*
> *scan.setFilter(new TestFilter());*
> *hTable.getScanner(scan);*
>
> and look the HBase's log...
>
> It seems there is truely a BUG here....When filterKeyValue return
> ReturnCode.NEXT_ROW, it jump to next columnFamily but not next row...
> also there is one thing strange, why the fitlerRow() not be called?
>
> 2012/2/21 <yuzhihong@gmail.com>
>
> The javadoc says filterRow() will still be called.
>>
>> Can you show us your filterRow() code ?
>>
>> Thanks
>>
>>
>>
>> On Feb 21, 2012, at 7:28 AM, NNever <nneverwei@gmail.com> wrote:
>>
>> > Hi~
>> >
>> > One customFilter,  Override filterKeyValue(KeyValue v).
>> > when the filter filterKeyValue a row's first keyValue, it will return
>> > "ReturnCode.NEXT_ROW" to jump to next row.
>> >
>> > But what infact is, the result changes when there are more than one
>> > columnFamily:(here are some logs)
>> >
>> > [filterRowKey] PERSONA1
>> > [filterKeyValue] family:info | qualifier:active | value:\x00
>> > [filterKeyValue] returnCode is NEXT_ROW
>> > [reset]
>> > [filterRowKey] PERSONA2
>> > [filterKeyValue] family:info | qualifier:active | value:\x00
>> > [filterKeyValue] returnCode is NEXT_ROW
>> > [reset]
>> > [filterRowKey] PERSONA3
>> > [filterKeyValue] family:info | qualifier:active | value:\x00
>> > [filterKeyValue] returnCode is NEXT_ROW
>> > [filterKeyValue] family:npo | qualifier:059201 | value:
>> > [filterKeyValue] returnCode is NEXT_ROW
>> > [reset]
>> > [filterRowKey] PERSONA4
>> > [filterKeyValue] family:cert | qualifier:certSN | value:
>> > PERSONAL4314120472582094317514215676313826416149
>> > [filterKeyValue] returnCode is NEXT_ROW
>> > [filterKeyValue] family:info | qualifier:active | value:\x00
>> > [filterKeyValue] returnCode is NEXT_ROW
>> > [filterKeyValue] family:npo | qualifier:059201 | value:
>> > [filterKeyValue] returnCode is NEXT_ROW
>> > [reset]
>> >
>> > the Table schema is
>> > User
>> > info:name, info:address, info:active.... (info family, every record has
>> > values)
>> > npo:xxxx.....(npo family may be not exist)
>> > cert:certSN, cert:certType....(cert family may be not exist)
>> >
>> > As you can see from the log, once a row has more than one family values,
>> > The ReturnCode.NEXT_ROW will not jump to next row but pass the left
>> > qualifier values and jump to next fmaily.
>> > Why? It's a bug or just design to be like this?
>> > Thanks~
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message