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)