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

Varun Sharma commented on HBASE-5257:
-------------------------------------

Hey guys,

Sorry but I did not see the work log and the earlier proposal(s) - I am new to 
JIRA but regarding my above thought - that is more close to the 
"excludeVersions()" option mentioned in the issue - since versions are 
discarded in this approach. Btw, we would also need one change to 
FilterList.filterKeyValue() where INCLUDE_AND_SEEK_NEXT_COL would override 
INCLUDE so if one filter returned INCLUDE and another 
INCLUDE_AND_SEEK_NEXT_COL, the result is INCLUDE_AND_SEEK_NEXT_COL - this would 
mean that we can mix ColumnPaginationFilter/ColumnCountGetFilter with other 
filters but we would only get back the latest column versions. I doubt if there 
is a compelling use case for counting/pagination of versions... my 2 cents.

Thanks !
Varun
                
> Allow filter to be evaluated after version handling
> ---------------------------------------------------
>
>                 Key: HBASE-5257
>                 URL: https://issues.apache.org/jira/browse/HBASE-5257
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Lars Hofhansl
>
> There are various usecases and filter types where evaluating the filter 
> before version are handled either do not make sense, or make filter handling 
> more complicated.
> Also see this comment in ScanQueryMatcher:
> {code}
>     /**
>      * Filters should be checked before checking column trackers. If we do
>      * otherwise, as was previously being done, ColumnTracker may increment 
> its
>      * counter for even that KV which may be discarded later on by Filter. 
> This
>      * would lead to incorrect results in certain cases.
>      */
> {code}
> So we had Filters after the column trackers (which do the version checking), 
> and then moved it.
> Should be at the discretion of the Filter.
> Could either add a new method to FilterBase (maybe excludeVersions() or 
> something). Or have a new Filter wrapper (like WhileMatchFilter), that should 
> only be used as outmost filter and indicates the same (maybe 
> ExcludeVersionsFilter).
> See latest comments on HBASE-5229 for motivation.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to