فهرست منبع

HDDS-1332. Add some logging for flaky test testStartStopDatanodeStateMachine. Contributed by Arpit Agarwal. (#649)

Arpit Agarwal 6 سال پیش
والد
کامیت
b4ed81c4e6

+ 0 - 1
hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/DatanodeStateMachine.java

@@ -397,7 +397,6 @@ public class DatanodeStateMachine implements Closeable {
   @VisibleForTesting
   public boolean isDaemonStopped() {
     return this.executorService.isShutdown()
-        && this.getContext().getExecutionCount() == 0
         && this.getContext().getState() == DatanodeStates.SHUTDOWN;
   }
 

+ 7 - 2
hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java

@@ -16,6 +16,7 @@
  */
 package org.apache.hadoop.ozone.container.common;
 
+import com.google.common.base.Supplier;
 import com.google.common.collect.Maps;
 import com.google.common.util.concurrent.ThreadFactoryBuilder;
 import org.apache.hadoop.conf.Configuration;
@@ -165,8 +166,12 @@ public class TestDatanodeStateMachine {
       stateMachine.startDaemon();
       SCMConnectionManager connectionManager =
           stateMachine.getConnectionManager();
-      GenericTestUtils.waitFor(() -> connectionManager.getValues().size() == 1,
-          1000, 30000);
+      GenericTestUtils.waitFor(
+          () -> {
+            LOG.info("connectionManager.getValues().size() is {}",
+                connectionManager.getValues().size());
+            return connectionManager.getValues().size() == 1;
+          }, 1000, 30000);
 
       stateMachine.stopDaemon();
       assertTrue(stateMachine.isDaemonStopped());