[ https://issues.apache.org/jira/browse/HBASE-15082?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15091880#comment-15091880 ]
Anoop Sam John commented on HBASE-15082: ---------------------------------------- As per the steps in doMinibatchMutation, we have {code} // STEP 6. Complete mvcc. 3117 WALKey.completeMvcc(walKey); 3118 // Clear walKey so don't complete for second time in finally below. 3119 walKey = null; 3120 3121 // STEP 7. Release row locks, etc. 3122 if (locked) { 3123 this.updatesLock.readLock().unlock(); 3124 locked = false; 3125 } {code} Completed the mvcc and so fwded the readPnt and after that only releasing the readlock on 'updatesLock'. For a flush we need write lock on 'updatesLock' means by the time the flush happens, all cells going to be into snapshot and so flush will be read ready. So we no longer need persist the seqId in Cells? I believe so. Then we will have good optimization in read path.. > Fix merge of MVCC and SequenceID performance regression > ------------------------------------------------------- > > Key: HBASE-15082 > URL: https://issues.apache.org/jira/browse/HBASE-15082 > Project: HBase > Issue Type: Sub-task > Components: Performance > Reporter: stack > Assignee: stack > Priority: Critical > Fix For: 2.0.0, 1.2.0, 1.3.0 > > Attachments: 15082.patch, 15082v2.patch, 15082v2.txt, 15082v3.txt, > 15082v4.patch, 15082v5.patch, 15082v6.patch, 15082v7.patch > > > This is general fix for increments (appends, checkAnd*) perf-regression > identified in the parent issue. HBASE-15031 has a narrow fix for branch-1.1 > and branch-1.0. -- This message was sent by Atlassian JIRA (v6.3.4#6332)