Przeglądaj źródła

YARN-5927. BaseContainerManagerTest::waitForNMContainerState timeout accounting is not accurate. (Kai Sasaki via kasha)

Karthik Kambatla 8 lat temu
rodzic
commit
8c4b6d16a5

+ 5 - 5
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/BaseContainerManagerTest.java

@@ -310,13 +310,13 @@ public abstract class BaseContainerManagerTest {
         new HashSet<>(finalStates);
         new HashSet<>(finalStates);
     int timeoutSecs = 0;
     int timeoutSecs = 0;
     do {
     do {
-      Thread.sleep(2000);
+      Thread.sleep(1000);
       containerStatus =
       containerStatus =
           containerManager.getContainerStatuses(request)
           containerManager.getContainerStatuses(request)
               .getContainerStatuses().get(0);
               .getContainerStatuses().get(0);
       LOG.info("Waiting for container to get into one of states " + fStates
       LOG.info("Waiting for container to get into one of states " + fStates
           + ". Current state is " + containerStatus.getState());
           + ". Current state is " + containerStatus.getState());
-      timeoutSecs += 2;
+      timeoutSecs += 1;
     } while (!fStates.contains(containerStatus.getState())
     } while (!fStates.contains(containerStatus.getState())
         && timeoutSecs < timeOutMax);
         && timeoutSecs < timeOutMax);
     LOG.info("Container state is " + containerStatus.getState());
     LOG.info("Container state is " + containerStatus.getState());
@@ -371,7 +371,7 @@ public abstract class BaseContainerManagerTest {
         .containermanager.container.ContainerState currentState = null;
         .containermanager.container.ContainerState currentState = null;
     int timeoutSecs = 0;
     int timeoutSecs = 0;
     do {
     do {
-      Thread.sleep(2000);
+      Thread.sleep(1000);
       container =
       container =
           containerManager.getContext().getContainers().get(containerID);
           containerManager.getContext().getContainers().get(containerID);
       if (container != null) {
       if (container != null) {
@@ -381,9 +381,9 @@ public abstract class BaseContainerManagerTest {
         LOG.info("Waiting for NM container to get into one of the following " +
         LOG.info("Waiting for NM container to get into one of the following " +
             "states: " + finalStates + ". Current state is " + currentState);
             "states: " + finalStates + ". Current state is " + currentState);
       }
       }
-      timeoutSecs += 2;
+      timeoutSecs += 1;
     } while (!finalStates.contains(currentState)
     } while (!finalStates.contains(currentState)
-        && timeoutSecs++ < timeOutMax);
+        && timeoutSecs < timeOutMax);
     LOG.info("Container state is " + currentState);
     LOG.info("Container state is " + currentState);
     Assert.assertTrue("ContainerState is not correct (timedout)",
     Assert.assertTrue("ContainerState is not correct (timedout)",
         finalStates.contains(currentState));
         finalStates.contains(currentState));