You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jason Dai (JIRA)" <ji...@apache.org> on 2012/09/18 14:16:07 UTC

[jira] [Commented] (HBASE-6805) Extend co-processor framework to provide observers for filter operations

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

Jason Dai commented on HBASE-6805:
----------------------------------

HBASE-6429 introduced a FilterWrap that wraps the filter operations at the region server side, and we can use that to call related observers around the filter operations. Specifically, we need to
# Add related observer functions (e.g., preFilterKeyValue) in RegionCoprocessorHost
# In the prepareScanner method, wrap the filter (in the Scan) to FilterWrap  (so that the region server always calls the related methods in FilterWrap)
# In the related methods of FilterWrap (e.g., FilterWrap.filterKeyvalue), call the observers (e.g., preFilterKeyValue and postFilterKeyValue) before and after the actual method call to Filter.filterKeyValue()

I'll upload a patch for review shortly.

                
> Extend co-processor framework to provide observers for filter operations
> ------------------------------------------------------------------------
>
>                 Key: HBASE-6805
>                 URL: https://issues.apache.org/jira/browse/HBASE-6805
>             Project: HBase
>          Issue Type: Sub-task
>          Components: coprocessors
>    Affects Versions: 0.96.0
>            Reporter: Jason Dai
>
> There are several filter operations (e.g., filterKeyValue, filterRow, transform, etc.) at the region server side that either exclude KVs from the returned results, or transform the returned KV. We need to provide observers (e.g., preFilterKeyValue and postFilterKeyValue) for these operations in the same way as the observers for other data access operations (e.g., preGet and postGet). This extension is needed to support DOT (e.g., extracting individual fields from the document in the observers before passing them to the related filter operations) 

--
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