[ https://issues.apache.org/jira/browse/HBASE-16989?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15677833#comment-15677833 ]
stack commented on HBASE-16989: ------------------------------- +1 > RowProcess#postBatchMutate doesn’t be executed before the mvcc transaction > completion > ------------------------------------------------------------------------------------- > > Key: HBASE-16989 > URL: https://issues.apache.org/jira/browse/HBASE-16989 > Project: HBase > Issue Type: Bug > Affects Versions: 2.0.0 > Reporter: ChiaPing Tsai > Assignee: ChiaPing Tsai > Fix For: 2.0.0 > > Attachments: HBASE-16989.v0.patch, HBASE-16989.v1.patch, > HBASE-16989.v2.patch, HBASE-16989.v3.patch, HBASE-16989.v4.patch > > > After the [HBASE-15158|https://issues.apache.org/jira/browse/HBASE-15158], > RowProcess#postBatchMutate will be executed “after” the mvcc transaction > completion. > {code:title=HRegion#processRowsWithLocks} > // STEP 8. Complete mvcc. > mvcc.completeAndWait(writeEntry); > writeEntry = null; > > // STEP 9. Release region lock > if (locked) { > this.updatesLock.readLock().unlock(); > locked = false; > } > > // STEP 10. Release row lock(s) > releaseRowLocks(acquiredRowLocks); > > // STEP 11. call postBatchMutate hook > processor.postBatchMutate(this); > {code} > {code:title=RowProcess#postBatchMutate} > /** > * The hook to be executed after the process() and applying the Mutations > to region. The > * difference of this one with {@link #postProcess(HRegion, WALEdit, > boolean)} is this hook will > * be executed before the mvcc transaction completion. > */ > void postBatchMutate(HRegion region) throws IOException; > {code} > Do we ought to revamp the comment of RowProcess#postBatchMutate or change the > call order? > I prefer the former, because the HRegion#doMiniBatchMutate() also call > postBatchMutate() after the mvcc transaction completion. > Any comment? Thanks. -- This message was sent by Atlassian JIRA (v6.3.4#6332)