[
https://issues.apache.org/jira/browse/HBASE-18127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16108873#comment-16108873
]
stack commented on HBASE-18127:
-------------------------------
Should be defined in CP base class or Interface under coprocessor package
rather than in top-level HConstants.
1368 @InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.COPROC)
1369 @InterfaceStability.Evolving
1370 public static enum CoprocessorOperation {
1371 BATCH_MUTATE, PROCESS_ROWS_WITH_LOCKS;
1372 };
We've been working to hide implementations used by CPs so we can hide/change
implementation. Do same here. OperationContext should be Interface?
What is a 'hook'?
Context is done for RowProcessor only. Should this notion be across CPs?
This breaks CPs? Its a 2.0 hbase-only facility?
> Enable state to be passed between the region observer coprocessor hook calls
> ----------------------------------------------------------------------------
>
> Key: HBASE-18127
> URL: https://issues.apache.org/jira/browse/HBASE-18127
> Project: HBase
> Issue Type: New Feature
> Reporter: Lars Hofhansl
> Assignee: Abhishek Singh Chouhan
> Attachments: HBASE-18127.master.001.patch,
> HBASE-18127.master.002.patch, HBASE-18127.master.002.patch
>
>
> Allow regionobserver to optionally skip postPut/postDelete when
> postBatchMutate was called.
> Right now a RegionObserver can only statically implement one or the other. In
> scenarios where we need to work sometimes on the single postPut and
> postDelete hooks and sometimes on the batchMutate hooks, there is currently
> no place to convey this information to the single hooks. I.e. the work has
> been done in the batch, skip the single hooks.
> There are various solutions:
> 1. Allow some state to be passed _per operation_.
> 2. Remove the single hooks and always only call batch hooks (with a default
> wrapper for the single hooks).
> 3. more?
> [~apurtell], what we had discussed a few days back.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)