[
https://issues.apache.org/jira/browse/HBASE-11423?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14052827#comment-14052827
]
Lars Hofhansl commented on HBASE-11423:
---------------------------------------
Hmm... It seems counter to the design to open the MVCC transaction before we
apply the actual edits. In HBase it is imperative that all mvcc transaction
finish quickly because they are strictly serialized.
It's worse even that doProcessRowWithTimeout - as its name implies - can
timeout, holding up *all* following transactions if the MVCC transaction was
opened before. And the MVCC transaction is not needed (by HBase itself) until
we actually apply the edits.
The default multirow processor does not time out, though, so from that angle it
is OK.
Is there no way to pull this entire logic into the RowProcessor itself? Or to
change the coprocessor hook to not require the MVCC transaction started.
So not sure what to say. If there's no other way let's commit, the patch is
functionally correct as far as I can tell.
I guess that makes me -0.
> Visibility label and per cell ACL feature not working with HTable#mutateRow()
> and MultiRowMutationEndpoint
> ----------------------------------------------------------------------------------------------------------
>
> Key: HBASE-11423
> URL: https://issues.apache.org/jira/browse/HBASE-11423
> Project: HBase
> Issue Type: Bug
> Components: Coprocessors, security
> Affects Versions: 0.98.0
> Reporter: Anoop Sam John
> Assignee: Anoop Sam John
> Priority: Blocker
> Fix For: 0.99.0, 1.0.0, 0.98.4
>
> Attachments: HBASE-11423.patch
>
>
> This is because pre/postBatchMutate() APIs are not getting called from
> HRegion#processRowsWithLocks()
--
This message was sent by Atlassian JIRA
(v6.2#6252)