[
https://issues.apache.org/jira/browse/HBASE-15417?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15186067#comment-15186067
]
Harry Harpham commented on HBASE-15417:
---------------------------------------
Thank you for the response!
> Calls to ObserverContext#bypass in a region observer's prePut method are
> inconsistent
> -------------------------------------------------------------------------------------
>
> Key: HBASE-15417
> URL: https://issues.apache.org/jira/browse/HBASE-15417
> Project: HBase
> Issue Type: Bug
> Components: Coprocessors
> Reporter: Harry Harpham
> Priority: Minor
>
> Calling ctx.bypass(), where ctx is the ObserverContext object passed in to
> the region observer's prePut method, results in some inconsistent behavior.
> If every other put in the batch is also bypassed, the region observer sees
> none of these in its postPut method. If there is at least one other put
> which is not bypassed, the region observer sees all of the puts in the batch
> _including those which were bypassed_.
> The end result is that, after bypassing a put, that put may or may not end up
> in the region observer's postPut method. This behavior is dependent solely
> on which other puts the bypassed put is batched together with.
> I tried to find existing tickets for this issue, but was unable to.
> Apologies if I missed something. The closest issues I could find were
> HBASE-4331 and HBASE-11503, but those didn't seem to quite hit it.
> Additionally, I threw together a quick demonstration of this issue:
> https://github.com/hwh33/bypass-inconsistency-demo. You can run that demo in
> memory using the testing utility or against a running cluster. I actually
> haven't had time to test it against a cluster though, so you may encounter
> bugs if running in that mode (but hopefully not!).
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)