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

stack commented on HBASE-1831:
------------------------------

So, chatting w/ Ryan on this topic, he suggests that support for stateful 
filters is going to be a bear -- there's splitting and then what if 
regionserver crashes, etc.  At the moment we figure a filter wants to stop the 
scan by testing the last regions endrow against the filter run client-side.   
Would it be enough my removing this and just adding the flag above which allows 
filters server-side to stop the scan (by passing back null result out of batch 
next)?  There'd be no getFilter to pick up a filters state and pass it from one 
region to the next.

There is going to be a problem though when fellas want to do filters that 
return 20 row results only or that want to have a filter skip 1000 rows; to do 
this, we'd something to run client-side.

> Scanning API must be reworked to allow for fully functional Filters 
> client-side
> -------------------------------------------------------------------------------
>
>                 Key: HBASE-1831
>                 URL: https://issues.apache.org/jira/browse/HBASE-1831
>             Project: Hadoop HBase
>          Issue Type: Bug
>    Affects Versions: 0.20.0
>            Reporter: Jonathan Gray
>            Priority: Critical
>             Fix For: 0.20.1, 0.21.0
>
>
> Right now, a client replays part of the Filter locally by calling 
> filterRowKey() and filterAllRemaining() to determine whether it should 
> continue to the next region.
> A number of new filters rely on filterKeyValue() and other calls to alter 
> state.  It's also a false assumption that all rows/keys affecting a filter 
> returning true for FAR will be seen client-side (what about those that failed 
> the filter).
> This issue is about dealing with Filters properly from the client-side.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to