This is an automated email from the ASF dual-hosted git repository.

shashikant pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-ratis.git


The following commit(s) were added to refs/heads/master by this push:
     new 85281b2  RATIS-1015. Fix Failed UT: testBasicInstallSnapshot (#162)
85281b2 is described below

commit 85281b201d42a4031a2ecd32cbee6636fa459265
Author: runzhiwang <[email protected]>
AuthorDate: Mon Aug 3 21:29:53 2020 +0800

    RATIS-1015. Fix Failed UT: testBasicInstallSnapshot (#162)
---
 .../org/apache/ratis/statemachine/RaftSnapshotBaseTest.java    | 10 +++++++++-
 .../apache/ratis/statemachine/SimpleStateMachine4Testing.java  |  4 ++++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git 
a/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
 
b/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
index 8742b29..e9b90a2 100644
--- 
a/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
+++ 
b/ratis-server/src/test/java/org/apache/ratis/statemachine/RaftSnapshotBaseTest.java
@@ -45,6 +45,7 @@ import org.apache.ratis.proto.RaftProtos.LogEntryProto;
 import org.apache.ratis.statemachine.impl.SimpleStateMachineStorage;
 import org.apache.ratis.util.FileUtils;
 import org.apache.ratis.util.JavaUtils;
+import org.apache.ratis.util.LifeCycle;
 import org.apache.ratis.util.Log4jUtils;
 import org.junit.After;
 import org.junit.Assert;
@@ -230,11 +231,18 @@ public abstract class RaftSnapshotBaseTest extends 
BaseTest {
       }
 
       // add two more peers
+      String[] newPeers = new String[]{"s3", "s4"};
       MiniRaftCluster.PeerChanges change = cluster.addNewPeers(
-          new String[]{"s3", "s4"}, true);
+          newPeers, true);
       // trigger setConfiguration
       cluster.setConfiguration(change.allPeersInNewConf);
 
+      for (String newPeer : newPeers) {
+        RaftServerImpl s = 
cluster.getRaftServerImpl(RaftPeerId.valueOf(newPeer));
+        SimpleStateMachine4Testing simpleStateMachine = 
SimpleStateMachine4Testing.get(s);
+        Assert.assertTrue(simpleStateMachine.getLifeCycleState() == 
LifeCycle.State.RUNNING);
+      }
+
       // Verify installSnapshot counter on leader before restart.
       verifyInstallSnapshotMetric(cluster.getLeader());
       RaftServerTestUtil.waitAndCheckNewConf(cluster, 
change.allPeersInNewConf, 0, null);
diff --git 
a/ratis-server/src/test/java/org/apache/ratis/statemachine/SimpleStateMachine4Testing.java
 
b/ratis-server/src/test/java/org/apache/ratis/statemachine/SimpleStateMachine4Testing.java
index 950f1ce..45761eb 100644
--- 
a/ratis-server/src/test/java/org/apache/ratis/statemachine/SimpleStateMachine4Testing.java
+++ 
b/ratis-server/src/test/java/org/apache/ratis/statemachine/SimpleStateMachine4Testing.java
@@ -231,6 +231,10 @@ public class SimpleStateMachine4Testing extends 
BaseStateMachine {
   public synchronized void reinitialize() throws IOException {
     LOG.info("Reinitializing " + this);
     loadSnapshot(storage.findLatestSnapshot());
+    if (getLifeCycleState() == LifeCycle.State.PAUSED) {
+      getLifeCycle().transition(LifeCycle.State.STARTING);
+      getLifeCycle().transition(LifeCycle.State.RUNNING);
+    }
   }
 
   @Override

Reply via email to