[ 
https://issues.apache.org/jira/browse/HBASE-18797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16167467#comment-16167467
 ] 

Abhishek Singh Chouhan commented on HBASE-18797:
------------------------------------------------

I was thinking about what would be the best way to go about this. Currently 
filterKeyValue is overridden by all the filters and there is no default 
behavior in FilterBase.
- Deprecate filterKeyValue and add a default behavior in filterbase that 
includes all except when we filter all remaining. This way new implementations 
won't have to override a deprecated method.
- Add filterCell with default behavior in filterbase to call filterKeyValue, 
this way existing clients will still work. Will do cleanup on the RS side so 
that we use new API and not the Deprecated one.
- All the existing filters will have both filterCell and filterKeyValue (this 
will just call filterCell). This way the current clients calling filterKeyValue 
on any of these will get the same behavior rather than getting the new default 
behavior mentioned above.
In 3.0 we'll be able to remove the old api and cleanup would be easy since all 
internal references to filterKeyValue will just be a call to filterCell which 
can be easily removed.
wdyt [~anoop.hbase] [~ram_krish] 

> Deprecate Filter#filterKeyValue and add Filter#filterCell
> ---------------------------------------------------------
>
>                 Key: HBASE-18797
>                 URL: https://issues.apache.org/jira/browse/HBASE-18797
>             Project: HBase
>          Issue Type: Sub-task
>          Components: API, Filters
>            Reporter: Abhishek Singh Chouhan
>            Assignee: Abhishek Singh Chouhan
>            Priority: Critical
>             Fix For: 2.0.0-alpha-3
>
>
> Part of filter package cleanup.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to