You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "ChiaPing Tsai (JIRA)" <ji...@apache.org> on 2016/11/22 08:29:58 UTC
[jira] [Created] (HBASE-17158) Avoid lock leak caused by
HRegion#doDelta
ChiaPing Tsai created HBASE-17158:
-------------------------------------
Summary: Avoid lock leak caused by HRegion#doDelta
Key: HBASE-17158
URL: https://issues.apache.org/jira/browse/HBASE-17158
Project: HBase
Issue Type: Bug
Affects Versions: 2.0.0
Reporter: ChiaPing Tsai
Fix For: 2.0.0
{code:title=HRegion.java|borderStyle=solid}
private Result doDelta(Operation op, Mutation mutation, long nonceGroup, long nonce,
boolean returnResults) throws IOException {
checkReadOnly();
checkResources();
checkRow(mutation.getRow(), op.toString());
checkFamilies(mutation.getFamilyCellMap().keySet());
this.writeRequestsCount.increment();
WriteEntry writeEntry = null;
startRegionOperation(op);
List<Cell> results = returnResults? new ArrayList<Cell>(mutation.size()): null;
RowLock rowLock = getRowLockInternal(mutation.getRow(), false);
MemstoreSize memstoreSize = new MemstoreSize();
}
{code}
The getRowLockInternal() should be moved inside the try block so that the timeout won't cause the lock leak. Otherwise, we will stuck in HRegion#doClose when closing.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)