[ 
https://issues.apache.org/jira/browse/HBASE-18144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16051736#comment-16051736
 ] 

Allan Yang commented on HBASE-18144:
------------------------------------

{code}
/**
   * A version of getRowLock(byte[], boolean) to use when a region operation 
has already been
   * started (the calling thread has already acquired the region-close-guard 
lock).
   */
  protected RowLock getRowLockInternal(byte[] row, boolean waitForLock) throws 
IOException {
    HashedBytes rowKey = new HashedBytes(row);
    RowLockContext rowLockContext = new RowLockContext(rowKey);
{code}
There is a parameter called waitForLock. In branch-1.1 if the batch put thread 
already got some row to write(their locks are possessed), then when getting the 
next lock, it will pass false to this parameter. So it won't wait for another 
lock but process the gotten ones.

> Forward-port the old exclusive row lock; there are scenarios where it 
> performs better
> -------------------------------------------------------------------------------------
>
>                 Key: HBASE-18144
>                 URL: https://issues.apache.org/jira/browse/HBASE-18144
>             Project: HBase
>          Issue Type: Bug
>          Components: Increment
>    Affects Versions: 1.2.5
>            Reporter: stack
>            Assignee: stack
>             Fix For: 2.0.0, 1.3.2, 1.2.7
>
>         Attachments: DisorderedBatchAndIncrementUT.patch, 
> HBASE-18144.master.001.patch
>
>
> Description to follow.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to