You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2013/12/03 00:10:35 UTC
[jira] [Created] (HBASE-10069) Potential duplicate calls to
log#appendNoSync() in HRegion#doMiniBatchMutation()
Ted Yu created HBASE-10069:
------------------------------
Summary: Potential duplicate calls to log#appendNoSync() in HRegion#doMiniBatchMutation()
Key: HBASE-10069
URL: https://issues.apache.org/jira/browse/HBASE-10069
Project: HBase
Issue Type: Task
Reporter: Ted Yu
Priority: Minor
In HRegion#doMiniBatchMutation():
{code}
if (nonceGroup != currentNonceGroup || nonce != currentNonce) {
if (walEdit.size() > 0) {
assert isInReplay;
txid = this.log.appendNoSync(this.getRegionInfo(), htableDescriptor.getTableName(),
walEdit, m.getClusterIds(), now, htableDescriptor, this.sequenceId, true,
currentNonceGroup, currentNonce);
hasWalAppends = true;
}
currentNonceGroup = nonceGroup;
currentNonce = nonce;
}
// Add WAL edits by CP
WALEdit fromCP = batchOp.walEditsFromCoprocessors[i];
if (fromCP != null) {
for (KeyValue kv : fromCP.getKeyValues()) {
walEdit.add(kv);
}
}
...
Mutation mutation = batchOp.getMutation(firstIndex);
if (walEdit.size() > 0) {
txid = this.log.appendNoSync(this.getRegionInfo(), this.htableDescriptor.getTableName(),
walEdit, mutation.getClusterIds(), now, this.htableDescriptor, this.sequenceId,
true, currentNonceGroup, currentNonce);
hasWalAppends = true;
}
{code}
If fromCP is null, there may not be new edits added to walEdit.
But log#appendNoSync() would be called one more time at line 2368.
--
This message was sent by Atlassian JIRA
(v6.1#6144)