Fix shard deadlock in 3 nodes
[controller.git] / opendaylight / md-sal / sal-distributed-datastore / src / test / java / org / opendaylight / controller / cluster / datastore / ShardTest.java
index cca0bffaa806b444ff2a3befa19c005e6da378a7..e8f7e32310b8971de356a4cc3f26049f239b417b 100644 (file)
@@ -38,6 +38,7 @@ import java.io.IOException;
 import java.util.Collections;
 import java.util.HashSet;
 import java.util.Map;
+import java.util.Optional;
 import java.util.Set;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
@@ -671,7 +672,7 @@ public class ShardTest extends AbstractShardTest {
                 final TransactionIdentifier transactionID = nextTransactionId();
                 final BatchedModifications batched = new BatchedModifications(transactionID,
                         DataStoreVersions.CURRENT_VERSION);
-                batched.setReady(true);
+                batched.setReady();
                 batched.setTotalMessagesSent(2);
 
                 shard.tell(batched, getRef());
@@ -714,7 +715,7 @@ public class ShardTest extends AbstractShardTest {
                 final Throwable cause = failure.cause();
 
                 batched = new BatchedModifications(transactionID, DataStoreVersions.CURRENT_VERSION);
-                batched.setReady(true);
+                batched.setReady();
                 batched.setTotalMessagesSent(2);
 
                 shard.tell(batched, getRef());
@@ -845,7 +846,8 @@ public class ShardTest extends AbstractShardTest {
                 failure = expectMsgClass(Failure.class);
                 assertEquals("Failure cause type", NoShardLeaderException.class, failure.cause().getClass());
 
-                shard.tell(new ReadyLocalTransaction(txId, mock(DataTreeModification.class), true), getRef());
+                shard.tell(new ReadyLocalTransaction(txId, mock(DataTreeModification.class), true, Optional.empty()),
+                        getRef());
                 failure = expectMsgClass(Failure.class);
                 assertEquals("Failure cause type", NoShardLeaderException.class, failure.cause().getClass());
             }
@@ -910,7 +912,8 @@ public class ShardTest extends AbstractShardTest {
 
                 final TransactionIdentifier txId = nextTransactionId();
                 modification.ready();
-                final ReadyLocalTransaction readyMessage = new ReadyLocalTransaction(txId, modification, true);
+                final ReadyLocalTransaction readyMessage =
+                        new ReadyLocalTransaction(txId, modification, true, Optional.empty());
 
                 shard.tell(readyMessage, getRef());
 
@@ -943,7 +946,8 @@ public class ShardTest extends AbstractShardTest {
 
                 final TransactionIdentifier txId = nextTransactionId();
                 modification.ready();
-                final ReadyLocalTransaction readyMessage = new ReadyLocalTransaction(txId, modification, false);
+                final ReadyLocalTransaction readyMessage =
+                        new ReadyLocalTransaction(txId, modification, false, Optional.empty());
 
                 shard.tell(readyMessage, getRef());
 
@@ -1571,7 +1575,7 @@ public class ShardTest extends AbstractShardTest {
                         .apply(modification3);
                 modification3.ready();
                 final ReadyLocalTransaction readyMessage = new ReadyLocalTransaction(transactionID3, modification3,
-                        true);
+                        true, Optional.empty());
                 shard.tell(readyMessage, getRef());
 
                 // Commit the first Tx. After completing, the second should