You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Sergey Shelukhin (JIRA)" <ji...@apache.org> on 2013/12/11 01:25:07 UTC
[jira] [Updated] (HBASE-10069) Potential duplicate calls to
log#appendNoSync() in HRegion#doMiniBatchMutation()
[ https://issues.apache.org/jira/browse/HBASE-10069?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergey Shelukhin updated HBASE-10069:
-------------------------------------
Attachment: HBASE-10069.patch
> 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
> Attachments: HBASE-10069.patch
>
>
> 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.4#6159)