diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java index 3e7a735a41..05360aba2d 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/scheduler/TestContainerSchedulerQueuing.java @@ -766,11 +766,9 @@ public class TestContainerSchedulerQueuing extends BaseContainerManagerTest { ContainerScheduler containerScheduler = containerManager.getContainerScheduler(); // Ensure all containers are properly queued. - int numTries = 30; - while ((containerScheduler.getNumQueuedContainers() < 6) && - (numTries-- > 0)) { - Thread.sleep(100); - } + GenericTestUtils.waitFor( + () -> containerScheduler.getNumQueuedContainers() == 6 + && metrics.getQueuedOpportunisticContainers() == 6, 100, 3000); Assert.assertEquals(6, containerScheduler.getNumQueuedContainers()); Assert.assertEquals(6, metrics.getQueuedOpportunisticContainers()); Assert.assertEquals(0, metrics.getQueuedGuaranteedContainers()); @@ -779,11 +777,8 @@ public class TestContainerSchedulerQueuing extends BaseContainerManagerTest { .newInstance(); containerQueuingLimit.setMaxQueueLength(2); containerScheduler.updateQueuingLimit(containerQueuingLimit); - numTries = 30; - while ((containerScheduler.getNumQueuedContainers() > 2) && - (numTries-- > 0)) { - Thread.sleep(100); - } + GenericTestUtils.waitFor( + () -> containerScheduler.getNumQueuedContainers() == 2, 100, 3000); Assert.assertEquals(2, containerScheduler.getNumQueuedContainers()); List statList = new ArrayList();