X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FShard.java;h=02a14022c4366d1cef8380da0183e8ec19e56a4a;hb=175f38490b56c4b4e0ec356b17b91f887b295da4;hp=e9f543f0f20cf852019982888be55b8f1e0bb1e3;hpb=f508ba6d5a2a16d66b879dae928ec1a4878da729;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/Shard.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/Shard.java index e9f543f0f2..02a14022c4 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/Shard.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/Shard.java @@ -23,6 +23,7 @@ import java.util.Map; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import javax.annotation.Nonnull; +import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; import org.opendaylight.controller.cluster.common.actor.CommonConfig; import org.opendaylight.controller.cluster.common.actor.MessageTracker; import org.opendaylight.controller.cluster.common.actor.MessageTracker.Error; @@ -62,7 +63,6 @@ import org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyn import org.opendaylight.controller.cluster.raft.messages.AppendEntriesReply; import org.opendaylight.controller.cluster.raft.messages.ServerRemoved; import org.opendaylight.yangtools.concepts.Identifier; -import org.opendaylight.yangtools.util.StringIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; @@ -170,7 +170,8 @@ public class Shard extends RaftActor { new Dispatchers(context().system().dispatchers()).getDispatcherPath( Dispatchers.DispatcherType.Transaction), self(), getContext(), shardMBean); - snapshotCohort = new ShardSnapshotCohort(transactionActorFactory, store, LOG, this.name); + snapshotCohort = new ShardSnapshotCohort(builder.getId().getMemberName(), transactionActorFactory, store, + LOG, this.name); messageRetrySupport = new ShardTransactionMessageRetrySupport(this); } @@ -334,7 +335,7 @@ public class Shard extends RaftActor { private void handleCommitTransaction(final CommitTransaction commit) { if (isLeader()) { - if(!commitCoordinator.handleCommit(new StringIdentifier(commit.getTransactionID()), getSender(), this)) { + if(!commitCoordinator.handleCommit(commit.getTransactionID(), getSender(), this)) { shardMBean.incrementFailedTransactionsCount(); } } else { @@ -433,7 +434,7 @@ public class Shard extends RaftActor { LOG.debug("{}: Can committing transaction {}", persistenceId(), canCommit.getTransactionID()); if (isLeader()) { - commitCoordinator.handleCanCommit(new StringIdentifier(canCommit.getTransactionID()), getSender(), this); + commitCoordinator.handleCanCommit(canCommit.getTransactionID(), getSender(), this); } else { ActorSelection leader = getLeader(); if (leader == null) { @@ -563,8 +564,8 @@ public class Shard extends RaftActor { doAbortTransaction(abort.getTransactionID(), getSender()); } - void doAbortTransaction(final String transactionID, final ActorRef sender) { - commitCoordinator.handleAbort(new StringIdentifier(transactionID), sender, this); + void doAbortTransaction(final TransactionIdentifier transactionID, final ActorRef sender) { + commitCoordinator.handleAbort(transactionID, sender, this); } private void handleCreateTransaction(final Object message) { @@ -590,7 +591,7 @@ public class Shard extends RaftActor { } ActorRef transactionActor = createTransaction(createTransaction.getTransactionType(), - createTransaction.getTransactionId(), createTransaction.getTransactionChainId()); + createTransaction.getTransactionId()); getSender().tell(new CreateTransactionReply(Serialization.serializedActorPath(transactionActor), createTransaction.getTransactionId(), createTransaction.getVersion()).toSerializable(), getSelf()); @@ -599,15 +600,14 @@ public class Shard extends RaftActor { } } - private ActorRef createTransaction(int transactionType, String transactionId, String transactionChainId) { + private ActorRef createTransaction(int transactionType, TransactionIdentifier transactionId) { LOG.debug("{}: Creating transaction : {} ", persistenceId(), transactionId); return transactionActorFactory.newShardTransaction(TransactionType.fromInt(transactionType), - transactionId, transactionChainId); + transactionId); } private void commitWithNewTransaction(final BatchedModifications modification) { - ReadWriteShardDataTreeTransaction tx = store.newReadWriteTransaction(modification.getTransactionID(), - modification.getTransactionChainID()); + ReadWriteShardDataTreeTransaction tx = store.newReadWriteTransaction(modification.getTransactionID()); modification.apply(tx.getSnapshot()); try { snapshotCohort.syncCommitTransaction(tx);