[
https://issues.apache.org/jira/browse/HBASE-18770?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
stack updated HBASE-18770:
--------------------------
Status: Patch Available (was: Open)
Here is changeset log:
{code}
HBASE-18770 Remove bypass method in ObserverContext and implement the
'bypass' logic case by case
Changes Coprocessor context 'bypass' semantic. Changes default so
it is NOT supported; only a couple of preXXX methods in
RegionObserver allow it: e.g. preGet and prePut but not preFlush, etc.
Changes Coprocessor 'complete' semantic too. It only has an effect
on those methods that support 'bypass'; i.e. you can only exit
a Coprocessor chain early via 'complete' on methods that are
bypassable.
See javadoc for whether a Coprocessor Observer method supports
'bypass'. If no mention, 'bypass' is NOT supported.
M
hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/CoprocessorHost.java
Added passing of 'bypassable' argument to the execOperation methods.
Methods that support 'bypass' must set this flag.
M
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
Refactoring in here is minor. A few methods that used support bypass
no longer do so removed the check and the need of an if/else meant a
left-shift in some code.
M
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
Ditto
M
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionCoprocessorHost.java
In here label explicitly those methods that are bypassable.
Some changes to make sure we call the corresponding execOperation.
TODO: What to do w/ the Scanner methods.
{code}
> Remove bypass method in ObserverContext and implement the 'bypass' logic case
> by case
> -------------------------------------------------------------------------------------
>
> Key: HBASE-18770
> URL: https://issues.apache.org/jira/browse/HBASE-18770
> Project: HBase
> Issue Type: Sub-task
> Components: Coprocessors
> Reporter: Duo Zhang
> Assignee: stack
> Priority: Critical
> Fix For: 2.0.0-alpha-4
>
> Attachments: HBASE-18770.master.001.patch,
> HBASE-18770.master.002.patch
>
>
> http://search-hadoop.com/m/HBase/YGbbXd0RDCIHSC1
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)