You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Lars Hofhansl (JIRA)" <ji...@apache.org> on 2019/05/28 05:45:00 UTC
[jira] [Commented] (HBASE-21158) Empty qualifier cell should not be
returned if it does not match QualifierFilter
[ https://issues.apache.org/jira/browse/HBASE-21158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16849352#comment-16849352 ]
Lars Hofhansl commented on HBASE-21158:
---------------------------------------
This causes *very* subtle changes, and actually break Phoenix secondary indexing.
Furthermore is different between
* branch-1.3 (check remove)
* branch-1.4 (check still present)
* branch-1 (check removed, grrrr, took me 3h to track this down)
* branch-2 (check still present) and
* master (check removed)
This is bad. And bad that we managed to leave it all in different states in different HBase branches.
What happened here?
[~apurtell],
> Empty qualifier cell should not be returned if it does not match QualifierFilter
> --------------------------------------------------------------------------------
>
> Key: HBASE-21158
> URL: https://issues.apache.org/jira/browse/HBASE-21158
> Project: HBase
> Issue Type: Bug
> Components: Filters
> Affects Versions: 3.0.0, 2.2.0
> Reporter: Guangxu Cheng
> Assignee: Guangxu Cheng
> Priority: Critical
> Fix For: 3.0.0, 1.3.3, 1.2.8, 2.2.0, 1.4.8, 2.1.1, 2.0.3
>
> Attachments: HBASE-21158.branch-1.001.patch, HBASE-21158.master.001.patch, HBASE-21158.master.002.patch, HBASE-21158.master.003.patch, HBASE-21158.master.004.patch
>
>
> {code:xml}
> hbase(main):002:0> put 'testTable','testrow','f:testcol1','testvalue1'
> 0 row(s) in 0.0040 seconds
> hbase(main):003:0> put 'testTable','testrow','f:','testvalue2'
> 0 row(s) in 0.0070 seconds
> # get row with empty column f:, result is correct.
> hbase(main):004:0> scan 'testTable',{FILTER => "QualifierFilter (=, 'binary:')"}
> ROW COLUMN+CELL
> testrow column=f:, timestamp=1536218563581, value=testvalue2
> 1 row(s) in 0.0460 seconds
> # get row with column f:testcol1, result is incorrect.
> hbase(main):005:0> scan 'testTable',{FILTER => "QualifierFilter (=, 'binary:testcol1')"}
> ROW COLUMN+CELL
> testrow column=f:, timestamp=1536218563581, value=testvalue2
> testrow column=f:testcol1, timestamp=1536218550827, value=testvalue1
> 1 row(s) in 0.0070 seconds
> {code}
> As the above operation, when the row contains empty qualifier column, empty qualifier cell is always returned when using QualifierFilter.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)