[
https://issues.apache.org/jira/browse/HBASE-10366?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jeffrey Zhong updated HBASE-10366:
----------------------------------
Attachment: hbase-10366-v1.patch
Thanks All for the reviews! v1 patch adds a unit test.
[[email protected]] The Javadoc for current hasFilterRow() is all right because
new filter implementation should follow that way in the future. I modified some
comments in my previous patch to specifically call out that 0.94 hasFilterRow()
has different semantics.
> 0.94 filterRow() may be skipped in 0.96(or onwards) code
> --------------------------------------------------------
>
> Key: HBASE-10366
> URL: https://issues.apache.org/jira/browse/HBASE-10366
> Project: HBase
> Issue Type: Bug
> Components: Filters
> Reporter: Jeffrey Zhong
> Assignee: Jeffrey Zhong
> Priority: Critical
> Fix For: 0.98.0, 0.96.2
>
> Attachments: hbase-10366-v1.patch, hbase-10366.patch
>
>
> HBASE-6429 combines both filterRow & filterRow(List<KeyValue> kvs) functions
> in Filter.
> While 0.94 code or older, it may not implement hasFilterRow as HBase-6429
> expected because 0.94(old) hasFilterRow only returns true when
> filterRow(List<KeyValue> kvs) is overridden not the filterRow(). Therefore,
> the filterRow() will be skipped.
> Since we don't ask 0.94 users to update their existing filter code, the issue
> will cause scan returns unexpected keyvalues and break the backward
> compatibility.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)