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%2Fdatabroker%2Factors%2Fdds%2FRemoteProxyTransaction.java;h=3b5f80ffe8bc02ee267620f7bfafdbcd1cf01a2a;hb=59ffaa4e95ffc8f8f04d1ca8d4f45f2ac1ef23b6;hp=829be478f00a6210c88a027547d1fe6a76ec135a;hpb=b24517538beb4f44e6a9a96e68e4bf48156b480f;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/RemoteProxyTransaction.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/RemoteProxyTransaction.java index 829be478f0..3b5f80ffe8 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/RemoteProxyTransaction.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/RemoteProxyTransaction.java @@ -78,8 +78,8 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction { private volatile Exception operationFailure; RemoteProxyTransaction(final ProxyHistory parent, final TransactionIdentifier identifier, - final boolean snapshotOnly, final boolean sendReadyOnSeal) { - super(parent); + final boolean snapshotOnly, final boolean sendReadyOnSeal, final boolean isDone) { + super(parent, isDone); this.snapshotOnly = snapshotOnly; this.sendReadyOnSeal = sendReadyOnSeal; builder = new ModifyTransactionRequestBuilder(identifier, localActor()); @@ -138,13 +138,6 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction { isSnapshotOnly()), t -> completeRead(future, t), future); } - @Override - void doAbort() { - ensureInitializedBuilder(); - builder.setAbort(); - flushBuilder(); - } - private void ensureInitializedBuilder() { if (!builderBusy) { builder.setSequence(nextSequence()); @@ -256,7 +249,8 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction { recordFinishedRequest(response); } - private ModifyTransactionRequest abortRequest() { + @Override + ModifyTransactionRequest abortRequest() { ensureInitializedBuilder(); builder.setAbort(); final ModifyTransactionRequest ret = builder.build(); @@ -365,9 +359,9 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction { sendRequest(new TransactionDoCommitRequest(getIdentifier(), nextSequence(), localActor()), callback); } else if (request instanceof TransactionAbortRequest) { ensureFlushedBuider(); - sendAbort(callback); + sendDoAbort(callback); } else if (request instanceof TransactionPurgeRequest) { - sendPurge(); + enqueuePurge(callback); } else { throw new IllegalArgumentException("Unhandled request {}" + request); } @@ -490,9 +484,9 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction { enqueuedTicks); } else if (request instanceof TransactionAbortRequest) { ensureFlushedBuider(optTicks); - enqueueAbort(callback, enqueuedTicks); + enqueueDoAbort(callback, enqueuedTicks); } else if (request instanceof TransactionPurgeRequest) { - enqueuePurge(enqueuedTicks); + enqueuePurge(callback, enqueuedTicks); } else if (request instanceof IncrementTransactionSequenceRequest) { final IncrementTransactionSequenceRequest req = (IncrementTransactionSequenceRequest) request; ensureFlushedBuider(optTicks);