[
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)