diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/pom.xml b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/pom.xml
index 365ae8cd30501..ac072347769b0 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/pom.xml
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/pom.xml
@@ -271,7 +271,11 @@
org.glassfish.jersey.media
jersey-media-json-jettison
-
+
+ org.mockito
+ mockito-junit-jupiter
+ test
+
com.github.stefanbirkner
system-rules
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/ACLsTestBase.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/ACLsTestBase.java
index 26e3ee2920d0a..4391c4177bb50 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/ACLsTestBase.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/ACLsTestBase.java
@@ -24,6 +24,7 @@
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.QueuePath;
+import org.junit.jupiter.api.BeforeEach;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.apache.hadoop.conf.Configuration;
@@ -33,7 +34,6 @@
import org.apache.hadoop.yarn.api.ApplicationClientProtocol;
import org.apache.hadoop.yarn.conf.YarnConfiguration;
import org.apache.hadoop.yarn.ipc.YarnRPC;
-import org.junit.Before;
public abstract class ACLsTestBase {
@@ -65,7 +65,7 @@ public abstract class ACLsTestBase {
YarnRPC rpc;
InetSocketAddress rmAddress;
- @Before
+ @BeforeEach
public void setup() throws InterruptedException, IOException {
conf = createConfiguration();
rpc = YarnRPC.create(conf);
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/QueueACLsTestBase.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/QueueACLsTestBase.java
index 84e86fa6168b4..deb6644e2b63e 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/QueueACLsTestBase.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/QueueACLsTestBase.java
@@ -41,8 +41,8 @@
import org.apache.hadoop.yarn.exceptions.YarnException;
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppState;
import org.apache.hadoop.yarn.util.resource.Resources;
-import org.junit.After;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.Test;
public abstract class QueueACLsTestBase extends ACLsTestBase {
@@ -59,7 +59,7 @@ public abstract class QueueACLsTestBase extends ACLsTestBase {
abstract public void updateConfigWithDAndD1Queues(String rootAcl,
String queueDAcl, String queueD1Acl) throws IOException;
- @After
+ @AfterEach
public void tearDown() {
if (resourceManager != null) {
resourceManager.stop();
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/activities/TestActivitiesManager.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/activities/TestActivitiesManager.java
index 003311605f993..73e2d2b92ac4f 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/activities/TestActivitiesManager.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/activities/TestActivitiesManager.java
@@ -55,18 +55,22 @@
import org.apache.hadoop.yarn.server.resourcemanager.webapp.RMWSConsts;
import org.apache.hadoop.yarn.server.resourcemanager.webapp.dao.AppActivitiesInfo;
import org.apache.hadoop.yarn.server.scheduler.SchedulerRequestKey;
-import org.apache.hadoop.util.SystemClock;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.apache.hadoop.yarn.util.SystemClock;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
import org.apache.hadoop.yarn.util.resource.Resources;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.common.fica.FiCaSchedulerApp;
-import org.mockito.Mockito;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
/**
* Test class for {@link ActivitiesManager}.
@@ -89,26 +93,26 @@ public class TestActivitiesManager {
private ThreadPoolExecutor threadPoolExecutor;
- @Before
+ @BeforeEach
public void setup() {
- rmContext = Mockito.mock(RMContext.class);
+ rmContext = mock(RMContext.class);
Configuration conf = new Configuration();
- Mockito.when(rmContext.getYarnConfiguration()).thenReturn(conf);
- ResourceScheduler scheduler = Mockito.mock(ResourceScheduler.class);
- Mockito.when(scheduler.getMinimumResourceCapability())
+ when(rmContext.getYarnConfiguration()).thenReturn(conf);
+ ResourceScheduler scheduler = mock(ResourceScheduler.class);
+ when(scheduler.getMinimumResourceCapability())
.thenReturn(Resources.none());
- Mockito.when(rmContext.getScheduler()).thenReturn(scheduler);
- LeafQueue mockQueue = Mockito.mock(LeafQueue.class);
+ when(rmContext.getScheduler()).thenReturn(scheduler);
+ LeafQueue mockQueue = mock(LeafQueue.class);
Map rmApps = new ConcurrentHashMap<>();
- Mockito.doReturn(rmApps).when(rmContext).getRMApps();
+ doReturn(rmApps).when(rmContext).getRMApps();
apps = new ArrayList<>();
for (int i = 0; i < NUM_APPS; i++) {
ApplicationAttemptId appAttemptId =
TestUtils.getMockApplicationAttemptId(i, 0);
- RMApp mockApp = Mockito.mock(RMApp.class);
- Mockito.doReturn(appAttemptId.getApplicationId()).when(mockApp)
+ RMApp mockApp = mock(RMApp.class);
+ doReturn(appAttemptId.getApplicationId()).when(mockApp)
.getApplicationId();
- Mockito.doReturn(FinalApplicationStatus.UNDEFINED).when(mockApp)
+ doReturn(FinalApplicationStatus.UNDEFINED).when(mockApp)
.getFinalApplicationStatus();
rmApps.put(appAttemptId.getApplicationId(), mockApp);
FiCaSchedulerApp app =
@@ -163,12 +167,12 @@ public void testRecordingDifferentNodeActivitiesInMultiThreads()
}
// Check activities for all nodes should be recorded and every node should
// have only one allocation information.
- Assert.assertEquals(NUM_NODES,
+ assertEquals(NUM_NODES,
activitiesManager.historyNodeAllocations.size());
for (List> nodeAllocationsForThisNode :
activitiesManager.historyNodeAllocations.values()) {
- Assert.assertEquals(1, nodeAllocationsForThisNode.size());
- Assert.assertEquals(1, nodeAllocationsForThisNode.get(0).size());
+ assertEquals(1, nodeAllocationsForThisNode.size());
+ assertEquals(1, nodeAllocationsForThisNode.get(0).size());
}
}
@@ -207,7 +211,7 @@ public void testRecordingSchedulerActivitiesForMultiNodesInMultiThreads()
future.get();
}
// Check activities for multi-nodes should be recorded only once
- Assert.assertEquals(1, activitiesManager.historyNodeAllocations.size());
+ assertEquals(1, activitiesManager.historyNodeAllocations.size());
}
@@ -254,13 +258,14 @@ public void testRecordingAppActivitiesInMultiThreads()
Queue appAllocations =
activitiesManager.completedAppAllocations
.get(randomApp.getApplicationId());
- Assert.assertEquals(nTasks, appAllocations.size());
+ assertEquals(nTasks, appAllocations.size());
for(AppAllocation aa : appAllocations) {
- Assert.assertEquals(NUM_NODES, aa.getAllocationAttempts().size());
+ assertEquals(NUM_NODES, aa.getAllocationAttempts().size());
}
}
- @Test (timeout = 30000)
+ @Test
+ @Timeout(value = 30)
public void testAppActivitiesTTL() throws Exception {
long cleanupIntervalMs = 100;
long appActivitiesTTL = 1000;
@@ -295,7 +300,7 @@ public void testAppActivitiesTTL() throws Exception {
AppActivitiesInfo appActivitiesInfo = newActivitiesManager
.getAppActivitiesInfo(app.getApplicationId(), null, null, null, -1,
false, 3);
- Assert.assertEquals(numActivities,
+ assertEquals(numActivities,
appActivitiesInfo.getAllocations().size());
// sleep until all app activities expired
Thread.sleep(cleanupIntervalMs + appActivitiesTTL);
@@ -303,11 +308,12 @@ public void testAppActivitiesTTL() throws Exception {
appActivitiesInfo = newActivitiesManager
.getAppActivitiesInfo(app.getApplicationId(), null, null, null, -1,
false, 3);
- Assert.assertEquals(0,
+ assertEquals(0,
appActivitiesInfo.getAllocations().size());
}
- @Test (timeout = 30000)
+ @Test
+ @Timeout(value = 30)
public void testAppActivitiesPerformance() {
// start recording activities for first app
SchedulerApplicationAttempt app = apps.get(0);
@@ -343,12 +349,12 @@ public void testAppActivitiesPerformance() {
AppActivitiesInfo appActivitiesInfo = activitiesManager
.getAppActivitiesInfo(app.getApplicationId(), null, null, null, -1,
false, 100);
- Assert.assertEquals(numActivities,
+ assertEquals(numActivities,
appActivitiesInfo.getAllocations().size());
- Assert.assertEquals(1,
+ assertEquals(1,
appActivitiesInfo.getAllocations().get(0).getChildren()
.size());
- Assert.assertEquals(numNodes,
+ assertEquals(numNodes,
appActivitiesInfo.getAllocations().get(0).getChildren()
.get(0).getChildren().size());
return null;
@@ -361,15 +367,15 @@ public void testAppActivitiesPerformance() {
AppActivitiesInfo appActivitiesInfo = activitiesManager
.getAppActivitiesInfo(app.getApplicationId(), null, null,
RMWSConsts.ActivitiesGroupBy.DIAGNOSTIC, -1, false, 100);
- Assert.assertEquals(numActivities,
+ assertEquals(numActivities,
appActivitiesInfo.getAllocations().size());
- Assert.assertEquals(1,
+ assertEquals(1,
appActivitiesInfo.getAllocations().get(0).getChildren()
.size());
- Assert.assertEquals(1,
+ assertEquals(1,
appActivitiesInfo.getAllocations().get(0).getChildren()
.get(0).getChildren().size());
- Assert.assertEquals(numNodes,
+ assertEquals(numNodes,
appActivitiesInfo.getAllocations().get(0).getChildren()
.get(0).getChildren().get(0).getNodeIds().size());
return null;
@@ -382,14 +388,14 @@ public void testAppActivitiesPerformance() {
AppActivitiesInfo appActivitiesInfo = activitiesManager
.getAppActivitiesInfo(app.getApplicationId(), null, null,
RMWSConsts.ActivitiesGroupBy.DIAGNOSTIC, -1, true, 100);
- Assert.assertEquals(1, appActivitiesInfo.getAllocations().size());
- Assert.assertEquals(1,
+ assertEquals(1, appActivitiesInfo.getAllocations().size());
+ assertEquals(1,
appActivitiesInfo.getAllocations().get(0).getChildren()
.size());
- Assert.assertEquals(1,
+ assertEquals(1,
appActivitiesInfo.getAllocations().get(0).getChildren()
.get(0).getChildren().size());
- Assert.assertEquals(numNodes,
+ assertEquals(numNodes,
appActivitiesInfo.getAllocations().get(0).getChildren()
.get(0).getChildren().get(0).getNodeIds().size());
return null;
@@ -398,7 +404,8 @@ public void testAppActivitiesPerformance() {
testingTimes);
}
- @Test (timeout = 10000)
+ @Test
+ @Timeout(value = 10)
public void testAppActivitiesMaxQueueLengthUpdate()
throws TimeoutException, InterruptedException {
Configuration conf = new Configuration();
@@ -413,46 +420,46 @@ public void testAppActivitiesMaxQueueLengthUpdate()
for (int i = 0; i < numNodes; i++) {
mockNodes.put(NodeId.newInstance("node" + i, 0), mock(RMNode.class));
}
- CapacityScheduler cs = Mockito.mock(CapacityScheduler.class);
- RMContext mockRMContext = Mockito.mock(RMContext.class);
- Mockito.when(mockRMContext.getRMNodes()).thenReturn(mockNodes);
- Mockito.when(mockRMContext.getYarnConfiguration()).thenReturn(conf);
- Mockito.when(mockRMContext.getScheduler()).thenReturn(cs);
+ CapacityScheduler cs = mock(CapacityScheduler.class);
+ RMContext mockRMContext = mock(RMContext.class);
+ when(mockRMContext.getRMNodes()).thenReturn(mockNodes);
+ when(mockRMContext.getYarnConfiguration()).thenReturn(conf);
+ when(mockRMContext.getScheduler()).thenReturn(cs);
/*
* Test for async-scheduling with multi-node placement disabled
*/
- Mockito.when(cs.isMultiNodePlacementEnabled()).thenReturn(false);
+ when(cs.isMultiNodePlacementEnabled()).thenReturn(false);
int numAsyncSchedulerThreads = 3;
- Mockito.when(cs.getNumAsyncSchedulerThreads())
+ when(cs.getNumAsyncSchedulerThreads())
.thenReturn(numAsyncSchedulerThreads);
ActivitiesManager newActivitiesManager =
new ActivitiesManager(mockRMContext);
- Assert.assertEquals(1,
+ assertEquals(1,
newActivitiesManager.getAppActivitiesMaxQueueLength());
newActivitiesManager.init(conf);
newActivitiesManager.start();
GenericTestUtils.waitFor(
() -> newActivitiesManager.getAppActivitiesMaxQueueLength()
== numNodes * numAsyncSchedulerThreads, 100, 3000);
- Assert.assertEquals(15,
+ assertEquals(15,
newActivitiesManager.getAppActivitiesMaxQueueLength());
/*
* Test for HB-driven scheduling with multi-node placement disabled
*/
- Mockito.when(cs.getNumAsyncSchedulerThreads()).thenReturn(0);
+ when(cs.getNumAsyncSchedulerThreads()).thenReturn(0);
GenericTestUtils.waitFor(
() -> newActivitiesManager.getAppActivitiesMaxQueueLength()
== numNodes * 1.2, 100, 3000);
- Assert.assertEquals(6,
+ assertEquals(6,
newActivitiesManager.getAppActivitiesMaxQueueLength());
/*
* Test for scheduling with multi-node placement enabled
*/
- Mockito.when(cs.isMultiNodePlacementEnabled()).thenReturn(true);
+ when(cs.isMultiNodePlacementEnabled()).thenReturn(true);
GenericTestUtils.waitFor(
() -> newActivitiesManager.getAppActivitiesMaxQueueLength()
== configuredAppActivitiesMaxQueueLength, 100, 3000);
- Assert.assertEquals(1,
+ assertEquals(1,
newActivitiesManager.getAppActivitiesMaxQueueLength());
}
@@ -480,8 +487,8 @@ public class TestingActivitiesManager extends ActivitiesManager {
public TestingActivitiesManager(RMContext rmContext) {
super(rmContext);
- super.completedNodeAllocations = Mockito.spy(new ConcurrentHashMap<>());
- Mockito.doAnswer((invocationOnMock) -> {
+ super.completedNodeAllocations = spy(new ConcurrentHashMap<>());
+ doAnswer((invocationOnMock) -> {
NodeId nodeId = (NodeId) invocationOnMock.getArguments()[0];
List nodeAllocations =
(List) invocationOnMock.getArguments()[1];
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerPreemptionTestBase.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerPreemptionTestBase.java
index b739c1e0e1796..cec2e119d45a9 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerPreemptionTestBase.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerPreemptionTestBase.java
@@ -32,10 +32,11 @@
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ResourceScheduler;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.common.fica.FiCaSchedulerApp;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.common.fica.FiCaSchedulerNode;
-import org.apache.hadoop.util.Clock;
-import org.junit.Assert;
-import org.junit.Before;
+import org.apache.hadoop.yarn.util.Clock;
+import org.junit.jupiter.api.BeforeEach;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.fail;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -49,7 +50,7 @@ public class CapacitySchedulerPreemptionTestBase {
Clock clock;
- @Before
+ @BeforeEach
void setUp() throws Exception {
conf = new CapacitySchedulerConfiguration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -106,7 +107,7 @@ public void waitNumberOfLiveContainersFromApp(FiCaSchedulerApp app,
waitNum++;
}
- Assert.fail();
+ fail();
}
public void waitNumberOfReservedContainersFromApp(FiCaSchedulerApp app,
@@ -122,7 +123,7 @@ public void waitNumberOfReservedContainersFromApp(FiCaSchedulerApp app,
waitNum++;
}
- Assert.fail();
+ fail();
}
public void waitNumberOfLiveContainersOnNodeFromApp(FiCaSchedulerNode node,
@@ -144,7 +145,7 @@ public void waitNumberOfLiveContainersOnNodeFromApp(FiCaSchedulerNode node,
waitNum++;
}
- Assert.fail(
+ fail(
"Check #live-container-on-node-from-app, actual=" + total + " expected="
+ expected);
}
@@ -160,6 +161,6 @@ public void checkNumberOfPreemptionCandidateFromApp(
}
}
- Assert.assertEquals(expected, total);
+ assertEquals(expected, total);
}
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueCalculationTestBase.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueCalculationTestBase.java
index 0f539f8b74e63..f2e8d6e361f86 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueCalculationTestBase.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueCalculationTestBase.java
@@ -26,7 +26,7 @@
import org.apache.hadoop.yarn.server.resourcemanager.nodelabels.RMNodeLabelsManager;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ResourceScheduler;
import org.apache.hadoop.yarn.util.resource.ResourceCalculator;
-import org.junit.Before;
+import org.junit.jupiter.api.BeforeEach;
import java.io.IOException;
@@ -52,7 +52,7 @@ public class CapacitySchedulerQueueCalculationTestBase {
protected CapacitySchedulerConfiguration csConf;
protected NullRMNodeLabelsManager mgr;
- @Before
+ @BeforeEach
public void setUp() throws Exception {
csConf = new CapacitySchedulerConfiguration();
csConf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueHelpers.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueHelpers.java
index 757c86de305d1..e7ffca95bc621 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueHelpers.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerQueueHelpers.java
@@ -21,9 +21,8 @@
import java.util.List;
import java.util.Map;
-import org.junit.Assert;
-
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
public final class CapacitySchedulerQueueHelpers {
@@ -386,18 +385,18 @@ public static void checkQueueStructureCapacities(CapacityScheduler cs,
CSQueue rootQueue = cs.getRootQueue();
for (Map.Entry entry : capacities.entrySet()) {
CSQueue queue = findQueue(rootQueue, entry.getKey());
- Assert.assertNotNull(queue);
+ assertNotNull(queue);
assertQueueCapacities(queue, entry.getValue());
}
}
public static void assertQueueCapacities(CSQueue q, ExpectedCapacities capacities) {
final float epsilon = 1e-4f;
- assertEquals("capacity", capacities.getCapacity(), q.getCapacity(), epsilon);
- assertEquals("absolute capacity", capacities.getAbsCapacity(),
- q.getAbsoluteCapacity(), epsilon);
- assertEquals("maximum capacity", 1.0f, q.getMaximumCapacity(), epsilon);
- assertEquals("absolute maximum capacity", 1.0f, q.getAbsoluteMaximumCapacity(), epsilon);
+ assertEquals(capacities.getCapacity(), q.getCapacity(), epsilon, "capacity");
+ assertEquals(capacities.getAbsCapacity(),
+ q.getAbsoluteCapacity(), epsilon, "absolute capacity");
+ assertEquals(1.0f, q.getMaximumCapacity(), epsilon, "maximum capacity");
+ assertEquals(1.0f, q.getAbsoluteMaximumCapacity(), epsilon, "absolute maximum capacity");
}
public static CSQueue findQueue(CSQueue root, String queuePath) {
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerTestUtilities.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerTestUtilities.java
index e7781b7108af8..f5cbef61638f7 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerTestUtilities.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerTestUtilities.java
@@ -52,13 +52,14 @@
import org.apache.hadoop.yarn.server.resourcemanager.security.AppPriorityACLsManager;
import org.apache.hadoop.yarn.server.utils.BuilderUtils;
import org.apache.hadoop.yarn.util.resource.ResourceUtils;
-import org.junit.Assert;
import java.io.IOException;
import java.util.Set;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerQueueHelpers.setupQueueConfAmbiguousQueue;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerQueueHelpers.setupQueueConfiguration;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -84,7 +85,7 @@ public static void checkPendingResource(MockRM rm, String queueName, int memory,
String label) {
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
CSQueue queue = cs.getQueue(queueName);
- Assert.assertEquals(
+ assertEquals(
memory,
queue.getQueueResourceUsage()
.getPending(label == null ? RMNodeLabelsManager.NO_LABEL : label)
@@ -96,7 +97,7 @@ public static void checkPendingResourceGreaterThanZero(MockRM rm, String queueNa
String label) {
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
CSQueue queue = cs.getQueue(queueName);
- Assert.assertTrue(queue.getQueueResourceUsage()
+ assertTrue(queue.getQueueResourceUsage()
.getPending(label == null ? RMNodeLabelsManager.NO_LABEL : label)
.getMemorySize() > 0);
}
@@ -230,11 +231,11 @@ public static NodeManager registerNode(ResourceManager rm, String hostName,
}
public static void checkApplicationResourceUsage(int expected, Application application) {
- Assert.assertEquals(expected, application.getUsedResources().getMemorySize());
+ assertEquals(expected, application.getUsedResources().getMemorySize());
}
public static void checkNodeResourceUsage(int expected, NodeManager node) {
- Assert.assertEquals(expected, node.getUsed().getMemorySize());
+ assertEquals(expected, node.getUsed().getMemorySize());
node.checkResourceUsage();
}
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/QueueAssertionBuilder.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/QueueAssertionBuilder.java
index 329d8b1bedbd2..06a084eb5175e 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/QueueAssertionBuilder.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/QueueAssertionBuilder.java
@@ -20,7 +20,6 @@
import org.apache.hadoop.yarn.api.records.Resource;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.QueueResourceQuotas;
-import org.junit.Assert;
import java.util.ArrayList;
import java.util.LinkedHashMap;
@@ -32,6 +31,8 @@
import static org.apache.hadoop.yarn.nodelabels.CommonNodeLabelsManager.NO_LABEL;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CSQueueUtils.EPSILON;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.fail;
/**
* Provides a fluent API to assert resource and capacity attributes of queues.
@@ -141,7 +142,7 @@ public void withResourceSupplier(
BiFunction assertion, String messageInfo) {
CSQueue queue = cs.getQueue(queuePath.getFullPath());
if (queue == null) {
- Assert.fail("Queue " + queuePath + " is not found");
+ fail("Queue " + queuePath + " is not found");
}
assertionType = messageInfo;
@@ -152,7 +153,7 @@ public void withCapacitySupplier(
BiFunction assertion, String messageInfo) {
CSQueue queue = cs.getQueue(queuePath.getFullPath());
if (queue == null) {
- Assert.fail("Queue " + queuePath + " is not found");
+ fail("Queue " + queuePath + " is not found");
}
assertionType = messageInfo;
valueSupplier = () -> assertion.apply(queue.getQueueCapacities(), label);
@@ -187,14 +188,14 @@ public void finishAssertion() {
String errorMessage = String.format(RESOURCE_ASSERTION_ERROR_MESSAGE,
assertion.assertionType, assertionEntry.getKey(),
assertion.expectedResource.toString(), assertion.label);
- Assert.assertEquals(errorMessage, assertion.expectedResource,
- assertion.resourceSupplier.get());
+ assertEquals(assertion.expectedResource,
+ assertion.resourceSupplier.get(), errorMessage);
} else {
String errorMessage = String.format(ASSERTION_ERROR_MESSAGE,
assertion.assertionType, assertionEntry.getKey(), assertion.expectedValue,
assertion.label);
- Assert.assertEquals(errorMessage, assertion.expectedValue,
- assertion.valueSupplier.get(), EPSILON);
+ assertEquals(assertion.expectedValue,
+ assertion.valueSupplier.get(), EPSILON, errorMessage);
}
}
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAMAllocatedToNonExclusivePartition.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAMAllocatedToNonExclusivePartition.java
index 9b498011439e1..6517c7bc0847a 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAMAllocatedToNonExclusivePartition.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAMAllocatedToNonExclusivePartition.java
@@ -18,6 +18,8 @@
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Set;
@@ -42,9 +44,8 @@
import org.apache.hadoop.yarn.server.resourcemanager.rmcontainer.RMContainerState;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ResourceScheduler;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.apache.hadoop.thirdparty.com.google.common.collect.ImmutableMap;
@@ -52,7 +53,7 @@ public class TestAMAllocatedToNonExclusivePartition {
private Configuration conf;
private RMNodeLabelsManager mgr;
- @Before
+ @BeforeEach
public void setUp() throws Exception {
conf = new YarnConfiguration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -120,7 +121,7 @@ public RMNodeLabelsManager createNodeLabelManager() {
// Request a container and it also should be allocated to non-partition node of h1
am1.allocate("*", 1024, 1, new ArrayList());
containerId = ContainerId.newContainerId(am1.getApplicationAttemptId(), 2);
- Assert.assertTrue(rm1.waitForState(nm1, containerId, RMContainerState.ALLOCATED));
+ assertTrue(rm1.waitForState(nm1, containerId, RMContainerState.ALLOCATED));
rm1.close();
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceConfiguration.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceConfiguration.java
index 2443f723653cc..30dc355c9968a 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceConfiguration.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceConfiguration.java
@@ -17,6 +17,11 @@
*/
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
+
import java.io.IOException;
import java.util.Arrays;
import java.util.HashSet;
@@ -32,8 +37,7 @@
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ResourceScheduler;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.event.NodeRemovedSchedulerEvent;
import org.apache.hadoop.yarn.util.resource.Resources;
-import org.junit.Assert;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
public class TestAbsoluteResourceConfiguration {
@@ -225,24 +229,24 @@ public void testSimpleMinMaxResourceConfigurartionPerQueue()
CapacitySchedulerConfiguration csConf = setupSimpleQueueConfiguration(false);
setupMinMaxResourceConfiguration(csConf);
- Assert.assertEquals("Min resource configured for QUEUEA is not correct",
- QUEUE_A_MINRES,
- csConf.getMinimumResourceRequirement("", QUEUEA_FULL, resourceTypes));
- Assert.assertEquals("Max resource configured for QUEUEA is not correct",
- QUEUE_A_MAXRES,
- csConf.getMaximumResourceRequirement("", QUEUEA_FULL, resourceTypes));
- Assert.assertEquals("Min resource configured for QUEUEB is not correct",
- QUEUE_B_MINRES,
- csConf.getMinimumResourceRequirement("", QUEUEB_FULL, resourceTypes));
- Assert.assertEquals("Max resource configured for QUEUEB is not correct",
- QUEUE_B_MAXRES,
- csConf.getMaximumResourceRequirement("", QUEUEB_FULL, resourceTypes));
- Assert.assertEquals("Min resource configured for QUEUEC is not correct",
- QUEUE_C_MINRES,
- csConf.getMinimumResourceRequirement("", QUEUEC_FULL, resourceTypes));
- Assert.assertEquals("Max resource configured for QUEUEC is not correct",
- QUEUE_C_MAXRES,
- csConf.getMaximumResourceRequirement("", QUEUEC_FULL, resourceTypes));
+ assertEquals(QUEUE_A_MINRES,
+ csConf.getMinimumResourceRequirement("", QUEUEA_FULL, resourceTypes),
+ "Min resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ csConf.getMaximumResourceRequirement("", QUEUEA_FULL, resourceTypes),
+ "Max resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_B_MINRES,
+ csConf.getMinimumResourceRequirement("", QUEUEB_FULL, resourceTypes),
+ "Min resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ csConf.getMaximumResourceRequirement("", QUEUEB_FULL, resourceTypes),
+ "Max resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_C_MINRES,
+ csConf.getMinimumResourceRequirement("", QUEUEC_FULL, resourceTypes),
+ "Min resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ csConf.getMaximumResourceRequirement("", QUEUEC_FULL, resourceTypes),
+ "Max resource configured for QUEUEC is not correct");
csConf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
ResourceScheduler.class);
@@ -268,13 +272,13 @@ public void testSimpleMinMaxResourceConfigurartionPerQueue()
cs.getRootQueue().updateClusterResource(cs.getClusterResource(),
new ResourceLimits(cs.getClusterResource()));
- Assert.assertEquals(QUEUE_D_TEMPL_MINRES,
+ assertEquals(QUEUE_D_TEMPL_MINRES,
d1.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MINRES,
+ assertEquals(QUEUE_D_TEMPL_MINRES,
d1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MAXRES,
+ assertEquals(QUEUE_D_TEMPL_MAXRES,
d1.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MAXRES,
+ assertEquals(QUEUE_D_TEMPL_MAXRES,
d1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
/**
@@ -289,22 +293,22 @@ public void testSimpleMinMaxResourceConfigurartionPerQueue()
cs.getRootQueue().updateClusterResource(cs.getClusterResource(),
new ResourceLimits(cs.getClusterResource()));
- Assert.assertEquals(Resource.newInstance(0, 0),
+ assertEquals(Resource.newInstance(0, 0),
d2.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals(Resource.newInstance(0, 0),
+ assertEquals(Resource.newInstance(0, 0),
d2.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MAXRES,
+ assertEquals(QUEUE_D_TEMPL_MAXRES,
d2.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MAXRES,
+ assertEquals(QUEUE_D_TEMPL_MAXRES,
d2.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MINRES,
+ assertEquals(QUEUE_D_TEMPL_MINRES,
d1.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MINRES,
+ assertEquals(QUEUE_D_TEMPL_MINRES,
d1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MAXRES,
+ assertEquals(QUEUE_D_TEMPL_MAXRES,
d1.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals(QUEUE_D_TEMPL_MAXRES,
+ assertEquals(QUEUE_D_TEMPL_MAXRES,
d1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
rm.close();
@@ -336,9 +340,10 @@ public void testNormalizationAfterNodeRemoval() throws Exception {
Resource resParent = cs.getQueue(QUEUEA_FULL.getFullPath()).getEffectiveCapacity("");
// Check if there is no overcommitment on behalf of the child queues
- Assert.assertTrue(String.format("Summarized resource %s of all children is greater than " +
- "their parent's %s", res, resParent),
- Resources.lessThan(cs.getResourceCalculator(), cs.getClusterResource(), res, resParent));
+ assertTrue(Resources.lessThan(cs.getResourceCalculator(),
+ cs.getClusterResource(), res, resParent),
+ String.format("Summarized resource %s of all children is greater than " +
+ "their parent's %s", res, resParent));
rm.stop();
}
@@ -364,37 +369,49 @@ public void testEffectiveMinMaxResourceConfigurartionPerQueue()
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
LeafQueue qA = (LeafQueue) cs.getQueue(QUEUEA);
- Assert.assertNotNull(qA);
- Assert.assertEquals("Min resource configured for QUEUEA is not correct",
- QUEUE_A_MINRES, qA.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEA is not correct",
- QUEUE_A_MAXRES, qA.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEA is not correct",
- QUEUE_A_MINRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA is not correct",
- QUEUE_A_MAXRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qA);
+ assertEquals(QUEUE_A_MINRES,
+ qA.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MINRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA is not correct");
LeafQueue qB = (LeafQueue) cs.getQueue(QUEUEB);
- Assert.assertNotNull(qB);
- Assert.assertEquals("Min resource configured for QUEUEB is not correct",
- QUEUE_B_MINRES, qB.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEB is not correct",
- QUEUE_B_MAXRES, qB.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEB is not correct",
- QUEUE_B_MINRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB is not correct",
- QUEUE_B_MAXRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qB);
+ assertEquals(QUEUE_B_MINRES,
+ qB.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MINRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB is not correct");
LeafQueue qC = (LeafQueue) cs.getQueue(QUEUEC);
- Assert.assertNotNull(qC);
- Assert.assertEquals("Min resource configured for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qC);
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEC is not correct");
rm.stop();
}
@@ -440,7 +457,7 @@ public void testSimpleValidateAbsoluteResourceConfig() throws Exception {
try {
cs.reinitialize(csConf1, rm.getRMContext());
} catch (IOException e) {
- Assert.fail();
+ fail();
}
rm.stop();
@@ -456,38 +473,50 @@ public void testSimpleValidateAbsoluteResourceConfig() throws Exception {
cs = (CapacityScheduler) rm.getResourceScheduler();
LeafQueue qA1 = (LeafQueue) cs.getQueue(QUEUEA1);
- Assert.assertEquals("Effective Min resource for QUEUEA1 is not correct",
- QUEUE_A1_MINRES, qA1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA1 is not correct",
- QUEUE_A_MAXRES, qA1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertEquals(QUEUE_A1_MINRES,
+ qA1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA1 is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA1 is not correct");
LeafQueue qA2 = (LeafQueue) cs.getQueue(QUEUEA2);
- Assert.assertEquals("Effective Min resource for QUEUEA2 is not correct",
- QUEUE_A2_MINRES, qA2.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA2 is not correct",
- QUEUE_A_MAXRES, qA2.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertEquals(QUEUE_A2_MINRES,
+ qA2.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA2 is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA2.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA2 is not correct");
LeafQueue qB1 = (LeafQueue) cs.getQueue(QUEUEB1);
- Assert.assertNotNull(qB1);
- Assert.assertEquals("Min resource configured for QUEUEB1 is not correct",
- QUEUE_B1_MINRES, qB1.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEB1 is not correct",
- QUEUE_B_MAXRES, qB1.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEB1 is not correct",
- QUEUE_B1_MINRES, qB1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB1 is not correct",
- QUEUE_B_MAXRES, qB1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qB1);
+ assertEquals(QUEUE_B1_MINRES,
+ qB1.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEB1 is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB1.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEB1 is not correct");
+ assertEquals(QUEUE_B1_MINRES,
+ qB1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB1 is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB1 is not correct");
LeafQueue qC = (LeafQueue) cs.getQueue(QUEUEC);
- Assert.assertNotNull(qC);
- Assert.assertEquals("Min resource configured for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qC);
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEC is not correct");
// 3. Create a new config and make sure one queue's min resource is more
// than its max resource configured.
@@ -500,10 +529,10 @@ public void testSimpleValidateAbsoluteResourceConfig() throws Exception {
try {
cs.reinitialize(csConf3, rm.getRMContext());
- Assert.fail();
+ fail();
} catch (IOException e) {
- Assert.assertTrue(e instanceof IOException);
- Assert.assertEquals(
+ assertTrue(e instanceof IOException);
+ assertEquals(
"Failed to re-init queues : Min resource configuration "
+ " is greater than its "
+ "max value: "
@@ -521,15 +550,14 @@ public void testSimpleValidateAbsoluteResourceConfig() throws Exception {
try {
cs.reinitialize(csConf4, rm.getRMContext());
- Assert.fail();
+ fail();
} catch (IOException e) {
- Assert.assertTrue(e instanceof IOException);
- Assert
- .assertEquals(
- "Failed to re-init queues : Max resource configuration "
- + " is greater than parents max value:"
- + " in queue:root.queueB.queueB1",
- e.getMessage());
+ assertTrue(e instanceof IOException);
+ assertEquals(
+ "Failed to re-init queues : Max resource configuration "
+ + " is greater than parents max value:"
+ + " in queue:root.queueB.queueB1",
+ e.getMessage());
}
rm.stop();
}
@@ -575,13 +603,13 @@ public void testComplexValidateAbsoluteResourceConfig() throws Exception {
try {
cs.reinitialize(csConf, rm.getRMContext());
if (csConf.isLegacyQueueMode()) {
- Assert.fail("legacy queue mode does not support mixed queue modes");
+ fail("legacy queue mode does not support mixed queue modes");
}
} catch (IOException e) {
if (!csConf.isLegacyQueueMode()) {
- Assert.fail("new queue mode supports mixed queue modes");
+ fail("new queue mode supports mixed queue modes");
}
- Assert.assertTrue(e.getMessage().contains("Failed to re-init queues"));
+ assertTrue(e.getMessage().contains("Failed to re-init queues"));
}
// 2. Create a new config and make sure one queue's min resource is more
@@ -596,13 +624,13 @@ public void testComplexValidateAbsoluteResourceConfig() throws Exception {
try {
cs.reinitialize(csConf1, rm.getRMContext());
if (csConf.isLegacyQueueMode()) {
- Assert.fail("legacy queue mode enforces that parent.capacity >= sum(children.capacity)");
+ fail("legacy queue mode enforces that parent.capacity >= sum(children.capacity)");
}
} catch (IOException e) {
if (!csConf.isLegacyQueueMode()) {
- Assert.fail("new queue mode allows that parent.capacity >= sum(children.capacity)");
+ fail("new queue mode allows that parent.capacity >= sum(children.capacity)");
}
- Assert.assertEquals("Failed to re-init queues : Parent Queues capacity: "
+ assertEquals("Failed to re-init queues : Parent Queues capacity: "
+ " is less than to its children:"
+ " for queue:queueA", e.getMessage());
}
@@ -656,7 +684,7 @@ public void testValidateAbsoluteResourceConfig() throws Exception {
try {
cs.reinitialize(csConf, rm.getRMContext());
} catch (IOException e) {
- Assert.fail(e.getMessage());
+ fail(e.getMessage());
}
rm.stop();
}
@@ -692,9 +720,10 @@ public void testDownscalingForLabels() throws Exception {
Resource childrenResource = root.getChildQueues().stream().map(q -> q.getEffectiveCapacity(
X_LABEL)).reduce(Resources::add).orElse(Resource.newInstance(0, 0));
- Assert.assertTrue("Children of root have more resource than overall cluster resource",
- Resources.greaterThan(cs.getResourceCalculator(), cs.getClusterResource(),
- root.getEffectiveCapacity(X_LABEL), childrenResource));
+ assertTrue(Resources.greaterThan(cs.getResourceCalculator(),
+ cs.getClusterResource(),
+ root.getEffectiveCapacity(X_LABEL), childrenResource),
+ "Children of root have more resource than overall cluster resource");
rm.stop();
}
@@ -721,37 +750,49 @@ public void testEffectiveResourceAfterReducingClusterResource()
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
LeafQueue qA = (LeafQueue) cs.getQueue(QUEUEA);
- Assert.assertNotNull(qA);
- Assert.assertEquals("Min resource configured for QUEUEA is not correct",
- QUEUE_A_MINRES, qA.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEA is not correct",
- QUEUE_A_MAXRES, qA.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEA is not correct",
- QUEUE_A_MINRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA is not correct",
- QUEUE_A_MAXRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qA);
+ assertEquals(QUEUE_A_MINRES,
+ qA.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MINRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA is not correct");
LeafQueue qB = (LeafQueue) cs.getQueue(QUEUEB);
- Assert.assertNotNull(qB);
- Assert.assertEquals("Min resource configured for QUEUEB is not correct",
- QUEUE_B_MINRES, qB.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEB is not correct",
- QUEUE_B_MAXRES, qB.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEB is not correct",
- QUEUE_B_MINRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB is not correct",
- QUEUE_B_MAXRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qB);
+ assertEquals(QUEUE_B_MINRES,
+ qB.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MINRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB is not correct");
LeafQueue qC = (LeafQueue) cs.getQueue(QUEUEC);
- Assert.assertNotNull(qC);
- Assert.assertEquals("Min resource configured for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertNotNull(qC);
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEC is not correct");
// unregister one NM.
rm.unRegisterNode(nm1);
@@ -759,20 +800,26 @@ public void testEffectiveResourceAfterReducingClusterResource()
// After loosing one NM, effective min res of queueA will become just
// above half. Hence A's min will be 60Gi and 6 cores and max will be
// 128GB and 20 cores.
- Assert.assertEquals("Effective Min resource for QUEUEA is not correct",
- QUEUEA_REDUCED, qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA is not correct",
- QUEUEMAX_REDUCED, qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
-
- Assert.assertEquals("Effective Min resource for QUEUEB is not correct",
- QUEUEB_REDUCED, qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB is not correct",
- QUEUEMAX_REDUCED, qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
-
- Assert.assertEquals("Effective Min resource for QUEUEC is not correct",
- QUEUEC_REDUCED, qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEC is not correct",
- QUEUEMAX_REDUCED, qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
+ assertEquals(QUEUEA_REDUCED,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA is not correct");
+ assertEquals(QUEUEMAX_REDUCED,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA is not correct");
+
+ assertEquals(QUEUEB_REDUCED,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB is not correct");
+ assertEquals(QUEUEMAX_REDUCED,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB is not correct");
+
+ assertEquals(QUEUEC_REDUCED,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEC is not correct");
+ assertEquals(QUEUEMAX_REDUCED,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEC is not correct");
rm.stop();
}
@@ -800,83 +847,110 @@ public void testEffectiveResourceAfterIncreasingClusterResource()
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
ParentQueue qA = (ParentQueue) cs.getQueue(QUEUEA);
- Assert.assertNotNull(qA);
- Assert.assertEquals("Min resource configured for QUEUEA is not correct",
- QUEUE_A_MINRES, qA.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEA is not correct",
- QUEUE_A_MAXRES, qA.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEA is not correct",
- QUEUE_A_MINRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA is not correct",
- QUEUE_A_MAXRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEA is not correct",
- 0.4, qA.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEA is not correct",
- 0.8, qA.getAbsoluteMaximumCapacity(), DELTA);
+ assertNotNull(qA);
+ assertEquals(QUEUE_A_MINRES,
+ qA.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MINRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA is not correct");
+ assertEquals(0.4,
+ qA.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEA is not correct");
+ assertEquals(0.8,
+ qA.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEA is not correct");
ParentQueue qB = (ParentQueue) cs.getQueue(QUEUEB);
- Assert.assertNotNull(qB);
- Assert.assertEquals("Min resource configured for QUEUEB is not correct",
- QUEUE_B_MINRES, qB.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEB is not correct",
- QUEUE_B_MAXRES, qB.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEB is not correct",
- QUEUE_B_MINRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB is not correct",
- QUEUE_B_MAXRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEB is not correct",
- 0.2, qB.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEB is not correct",
- 0.6, qB.getAbsoluteMaximumCapacity(), DELTA);
+ assertNotNull(qB);
+ assertEquals(QUEUE_B_MINRES,
+ qB.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MINRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB is not correct");
+ assertEquals(0.2,
+ qB.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEB is not correct");
+ assertEquals(0.6, qB.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEB is not correct");
LeafQueue qC = (LeafQueue) cs.getQueue(QUEUEC);
- Assert.assertNotNull(qC);
- Assert.assertEquals("Min resource configured for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEC is not correct",
- 0.1, qC.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEC is not correct",
- 0.6, qC.getAbsoluteMaximumCapacity(), DELTA);
+ assertNotNull(qC);
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEC is not correct");
+ assertEquals(0.1,
+ qC.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEC is not correct");
+ assertEquals(0.6,
+ qC.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEC is not correct");
LeafQueue qA1 = (LeafQueue) cs.getQueue(QUEUEA1);
- Assert.assertEquals("Effective Min resource for QUEUEA1 is not correct",
- QUEUE_A1_MINRES, qA1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA1 is not correct",
- QUEUE_A_MAXRES, qA1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEA1 is not correct",
- 0.2, qA1.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEA1 is not correct",
- 0.8, qA1.getAbsoluteMaximumCapacity(), DELTA);
+ assertEquals(QUEUE_A1_MINRES,
+ qA1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA1 is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA1 is not correct");
+ assertEquals(0.2,
+ qA1.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEA1 is not correct");
+ assertEquals(0.8,
+ qA1.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEA1 is not correct");
LeafQueue qA2 = (LeafQueue) cs.getQueue(QUEUEA2);
- Assert.assertEquals("Effective Min resource for QUEUEA2 is not correct",
- QUEUE_A2_MINRES, qA2.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA2 is not correct",
- QUEUE_A_MAXRES, qA2.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEA2 is not correct",
- 0.2, qA2.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEA2 is not correct",
- 0.8, qA2.getAbsoluteMaximumCapacity(), DELTA);
+ assertEquals(QUEUE_A2_MINRES,
+ qA2.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA2 is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA2.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA2 is not correct");
+ assertEquals(0.2, qA2.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEA2 is not correct");
+ assertEquals(0.8, qA2.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEA2 is not correct");
LeafQueue qB1 = (LeafQueue) cs.getQueue(QUEUEB1);
- Assert.assertEquals("Min resource configured for QUEUEB1 is not correct",
- QUEUE_B1_MINRES, qB1.usageTracker.getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals("Max resource configured for QUEUEB1 is not correct",
- QUEUE_B_MAXRES, qB1.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource());
- Assert.assertEquals("Effective Min resource for QUEUEB1 is not correct",
- QUEUE_B1_MINRES, qB1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB1 is not correct",
- QUEUE_B_MAXRES, qB1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEB1 is not correct",
- 0.16, qB1.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEB1 is not correct",
- 0.6, qB1.getAbsoluteMaximumCapacity(), DELTA);
+ assertEquals(QUEUE_B1_MINRES,
+ qB1.usageTracker.getQueueResourceQuotas().getConfiguredMinResource(),
+ "Min resource configured for QUEUEB1 is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB1.usageTracker.getQueueResourceQuotas().getConfiguredMaxResource(),
+ "Max resource configured for QUEUEB1 is not correct");
+ assertEquals(QUEUE_B1_MINRES,
+ qB1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB1 is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB1 is not correct");
+ assertEquals(0.16, qB1.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEB1 is not correct");
+ assertEquals(0.6, qB1.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEB1 is not correct");
// add new NM.
rm.registerNode("127.0.0.3:1234", 125 * GB, 20);
@@ -884,59 +958,71 @@ public void testEffectiveResourceAfterIncreasingClusterResource()
// There will be no change in effective resource when nodes are added.
// Since configured capacity was based on initial node capacity, a
// re configurations is needed to use this added capacity.
- Assert.assertEquals("Effective Min resource for QUEUEA is not correct",
- QUEUE_A_MINRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA is not correct",
- QUEUE_A_MAXRES, qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEA is not correct",
- 0.266, qA.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEA is not correct",
- 0.533, qA.getAbsoluteMaximumCapacity(), DELTA);
-
- Assert.assertEquals("Effective Min resource for QUEUEB is not correct",
- QUEUE_B_MINRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB is not correct",
- QUEUE_B_MAXRES, qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEB is not correct",
- 0.133, qB.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEB is not correct",
- 0.4, qB.getAbsoluteMaximumCapacity(), DELTA);
-
- Assert.assertEquals("Effective Min resource for QUEUEC is not correct",
- QUEUE_C_MINRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEC is not correct",
- QUEUE_C_MAXRES, qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEC is not correct",
- 0.066, qC.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEC is not correct",
- 0.4, qC.getAbsoluteMaximumCapacity(), DELTA);
-
- Assert.assertEquals("Effective Min resource for QUEUEB1 is not correct",
- QUEUE_B1_MINRES, qB1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEB1 is not correct",
- QUEUE_B_MAXRES, qB1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEB1 is not correct",
- 0.106, qB1.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEB1 is not correct",
- 0.4, qB1.getAbsoluteMaximumCapacity(), DELTA);
-
- Assert.assertEquals("Effective Min resource for QUEUEA1 is not correct",
- QUEUE_A1_MINRES, qA1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA1 is not correct",
- QUEUE_A_MAXRES, qA1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEA1 is not correct",
- 0.133, qA1.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEA1 is not correct",
- 0.533, qA1.getAbsoluteMaximumCapacity(), DELTA);
-
- Assert.assertEquals("Effective Min resource for QUEUEA2 is not correct",
- QUEUE_A2_MINRES, qA2.usageTracker.getQueueResourceQuotas().getEffectiveMinResource());
- Assert.assertEquals("Effective Max resource for QUEUEA2 is not correct",
- QUEUE_A_MAXRES, qA2.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource());
- Assert.assertEquals("Absolute capacity for QUEUEA2 is not correct",
- 0.133, qA2.getAbsoluteCapacity(), DELTA);
- Assert.assertEquals("Absolute Max capacity for QUEUEA2 is not correct",
- 0.533, qA2.getAbsoluteMaximumCapacity(), DELTA);
+ assertEquals(QUEUE_A_MINRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA is not correct");
+ assertEquals(0.266, qA.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEA is not correct");
+ assertEquals(0.533, qA.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEA is not correct");
+
+ assertEquals(QUEUE_B_MINRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB is not correct");
+ assertEquals(0.133, qB.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEB is not correct");
+ assertEquals(0.4, qB.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEB is not correct");
+
+ assertEquals(QUEUE_C_MINRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEC is not correct");
+ assertEquals(QUEUE_C_MAXRES,
+ qC.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEC is not correct");
+ assertEquals(0.066, qC.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEC is not correct");
+ assertEquals(0.4, qC.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEC is not correct");
+
+ assertEquals(QUEUE_B1_MINRES,
+ qB1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEB1 is not correct");
+ assertEquals(QUEUE_B_MAXRES,
+ qB1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEB1 is not correct");
+ assertEquals(0.106, qB1.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEB1 is not correct");
+ assertEquals(0.4, qB1.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEB1 is not correct");
+
+ assertEquals(QUEUE_A1_MINRES,
+ qA1.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA1 is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA1.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA1 is not correct");
+ assertEquals(0.133, qA1.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEA1 is not correct");
+ assertEquals(0.533, qA1.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEA1 is not correct");
+
+ assertEquals(QUEUE_A2_MINRES,
+ qA2.usageTracker.getQueueResourceQuotas().getEffectiveMinResource(),
+ "Effective Min resource for QUEUEA2 is not correct");
+ assertEquals(QUEUE_A_MAXRES,
+ qA2.usageTracker.getQueueResourceQuotas().getEffectiveMaxResource(),
+ "Effective Max resource for QUEUEA2 is not correct");
+ assertEquals(0.133, qA2.getAbsoluteCapacity(), DELTA,
+ "Absolute capacity for QUEUEA2 is not correct");
+ assertEquals(0.533, qA2.getAbsoluteMaximumCapacity(), DELTA,
+ "Absolute Max capacity for QUEUEA2 is not correct");
rm.stop();
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceWithAutoQueue.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceWithAutoQueue.java
index 66ab96308f982..ca3e52fec1512 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceWithAutoQueue.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAbsoluteResourceWithAutoQueue.java
@@ -20,10 +20,11 @@
import static org.apache.hadoop.yarn.nodelabels.CommonNodeLabelsManager.NO_LABEL;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CSQueueUtils.EPSILON;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
import java.util.HashMap;
import java.util.HashSet;
@@ -45,9 +46,10 @@
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.queuemanagement.GuaranteedOrZeroCapacityOverTimePolicy;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.policy.FifoOrderingPolicy;
import org.apache.hadoop.yarn.util.resource.DominantResourceCalculator;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -95,13 +97,13 @@ public class TestAbsoluteResourceWithAutoQueue
private static final Resource QUEUE_D_MAXRES =
Resource.newInstance(150 * GB, 20);
- @Before
+ @BeforeEach
public void setUp() throws Exception {
accessibleNodeLabelsOnC.add(NO_LABEL);
}
- @After
+ @AfterEach
public void tearDown() {
if (mockRM != null) {
mockRM.stop();
@@ -163,7 +165,8 @@ private CapacitySchedulerConfiguration setupSimpleQueueConfiguration(
return csConf;
}
- @Test(timeout = 20000)
+ @Test
+ @Timeout(value = 20)
public void testAutoCreateLeafQueueCreation() throws Exception {
try {
@@ -287,20 +290,22 @@ public void testAutoCreateLeafQueueCreation() throws Exception {
}
}
- @Test(expected = Exception.class)
+ @Test
public void testValidateLeafQueueTemplateConfigurations() {
+ assertThrows(Exception.class, () -> {
+ CapacitySchedulerConfiguration csConf = setupSimpleQueueConfiguration(true);
- CapacitySchedulerConfiguration csConf = setupSimpleQueueConfiguration(true);
-
- csConf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
- ResourceScheduler.class);
+ csConf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
+ ResourceScheduler.class);
- mockRM = new MockRM(csConf);
- fail("Exception should be thrown as leaf queue template configuration is "
- + "not same as Parent configuration");
+ mockRM = new MockRM(csConf);
+ fail("Exception should be thrown as leaf queue template configuration is "
+ + "not same as Parent configuration");
+ });
}
- @Test(timeout = 20000)
+ @Test
+ @Timeout(value = 20)
public void testApplicationRunningWithDRF() throws Exception {
CapacitySchedulerConfiguration csConf =
setupSimpleQueueConfiguration(false);
@@ -329,7 +334,7 @@ public void testApplicationRunningWithDRF() throws Exception {
cs = (CapacityScheduler) mockRM.getResourceScheduler();
AutoCreatedLeafQueue autoCreatedLeafQueue =
(AutoCreatedLeafQueue) cs.getQueue(TEST_GROUPUSER);
- assertNotNull("Auto Creation of Queue failed", autoCreatedLeafQueue);
+ assertNotNull(autoCreatedLeafQueue, "Auto Creation of Queue failed");
ManagedParentQueue parentQueue = (ManagedParentQueue) cs.getQueue(QUEUED);
assertEquals(parentQueue, autoCreatedLeafQueue.getParent());
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimits.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimits.java
index ed5ff571e028a..1d3df1198478d 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimits.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimits.java
@@ -19,9 +19,9 @@
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerTestUtilities.setQueueHandler;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
@@ -75,10 +75,10 @@
import org.apache.hadoop.yarn.util.resource.ResourceCalculator;
import org.apache.hadoop.yarn.util.resource.Resources;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.PREFIX;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
import org.mockito.ArgumentMatchers;
-import org.mockito.Mockito;
import org.apache.hadoop.thirdparty.com.google.common.collect.ImmutableMap;
import org.apache.hadoop.thirdparty.com.google.common.collect.ImmutableSet;
@@ -100,7 +100,7 @@ public class TestApplicationLimits {
private CapacitySchedulerContext csContext;
- @Before
+ @BeforeEach
public void setUp() throws IOException {
CapacitySchedulerConfiguration csConf =
new CapacitySchedulerConfiguration();
@@ -635,16 +635,16 @@ public void testHeadroom() throws Exception {
when(amResourceRequest.getCapability()).thenReturn(amResource);
when(rmApp.getAMResourceRequests()).thenReturn(
Collections.singletonList(amResourceRequest));
- Mockito.doReturn(rmApp)
+ doReturn(rmApp)
.when(spyApps).get(ArgumentMatchers.any());
when(spyRMContext.getRMApps()).thenReturn(spyApps);
RMAppAttempt rmAppAttempt = mock(RMAppAttempt.class);
when(rmApp.getRMAppAttempt(any()))
.thenReturn(rmAppAttempt);
when(rmApp.getCurrentAppAttempt()).thenReturn(rmAppAttempt);
- Mockito.doReturn(rmApp)
+ doReturn(rmApp)
.when(spyApps).get(ArgumentMatchers.any());
- Mockito.doReturn(true).when(spyApps)
+ doReturn(true).when(spyApps)
.containsKey(ArgumentMatchers.any());
Priority priority_1 = TestUtils.createMockPriority(1);
@@ -781,7 +781,8 @@ private Set toSet(String... elements) {
return set;
}
- @Test(timeout = 120000)
+ @Test
+ @Timeout(value = 120)
public void testApplicationLimitSubmit() throws Exception {
YarnConfiguration conf = new YarnConfiguration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -985,14 +986,14 @@ public void testAMResourceLimitWithDRCAndFullParent() throws Exception {
Resource expectedAmLimit = Resources.multiply(capacity,
queueA.getMaxAMResourcePerQueuePercent());
Resource amLimit = queueA.calculateAndGetAMResourceLimit();
- assertTrue("AM memory limit is less than expected: Expected: " +
+ assertTrue(amLimit.getMemorySize() >= expectedAmLimit.getMemorySize(),
+ "AM memory limit is less than expected: Expected: " +
expectedAmLimit.getMemorySize() + "; Computed: "
- + amLimit.getMemorySize(),
- amLimit.getMemorySize() >= expectedAmLimit.getMemorySize());
- assertTrue("AM vCore limit is less than expected: Expected: " +
+ + amLimit.getMemorySize());
+ assertTrue(amLimit.getVirtualCores() >= expectedAmLimit.getVirtualCores(),
+ "AM vCore limit is less than expected: Expected: " +
expectedAmLimit.getVirtualCores() + "; Computed: "
- + amLimit.getVirtualCores(),
- amLimit.getVirtualCores() >= expectedAmLimit.getVirtualCores());
+ + amLimit.getVirtualCores());
}
private CapacitySchedulerContext createCSContext(CapacitySchedulerConfiguration csConf,
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimitsByPartition.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimitsByPartition.java
index 6e8c0b02f9473..085e124b68adc 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimitsByPartition.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationLimitsByPartition.java
@@ -17,9 +17,11 @@
*/
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity;
-
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
@@ -66,11 +68,10 @@
import org.apache.hadoop.yarn.util.resource.ResourceCalculator;
import org.apache.hadoop.yarn.util.resource.ResourceUtils;
import org.apache.hadoop.yarn.util.resource.Resources;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
import org.mockito.ArgumentMatchers;
-import org.mockito.Mockito;
import org.apache.hadoop.thirdparty.com.google.common.collect.ImmutableMap;
import org.apache.hadoop.thirdparty.com.google.common.collect.ImmutableSet;
@@ -94,7 +95,7 @@ public class TestApplicationLimitsByPartition {
private final ResourceCalculator resourceCalculator =
new DefaultResourceCalculator();
- @Before
+ @BeforeEach
public void setUp() throws IOException {
conf = new YarnConfiguration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -123,7 +124,8 @@ private void complexNodeLabelMappingToManager() throws IOException {
RMNodeLabelsManager.EMPTY_STRING_SET));
}
- @Test(timeout = 120000)
+ @Test
+ @Timeout(value = 120)
public void testAMResourceLimitWithLabels() throws Exception {
/*
* Test Case:
@@ -198,22 +200,22 @@ public RMNodeLabelsManager createNodeLabelManager() {
CapacityScheduler cs = (CapacityScheduler) rm1.getResourceScheduler();
LeafQueue leafQueue = (LeafQueue) cs.getQueue("a1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
// Only one AM will be activated here and second AM will be still
// pending.
- Assert.assertEquals(2, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
- Assert.assertTrue("AM diagnostics not set properly", app1.getDiagnostics()
- .toString().contains(AMState.ACTIVATED.getDiagnosticMessage()));
- Assert.assertTrue("AM diagnostics not set properly", app2.getDiagnostics()
- .toString().contains(AMState.ACTIVATED.getDiagnosticMessage()));
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString()
- .contains(AMState.INACTIVATED.getDiagnosticMessage()));
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString().contains(
- CSAMContainerLaunchDiagnosticsConstants.QUEUE_AM_RESOURCE_LIMIT_EXCEED));
+ assertEquals(2, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumPendingApplications());
+ assertTrue(app1.getDiagnostics().toString().contains(
+ AMState.ACTIVATED.getDiagnosticMessage()), "AM diagnostics not set properly");
+ assertTrue(app2.getDiagnostics().toString().contains(AMState.ACTIVATED.getDiagnosticMessage()),
+ "AM diagnostics not set properly");
+ assertTrue(pendingApp.getDiagnostics().toString()
+ .contains(AMState.INACTIVATED.getDiagnosticMessage()),
+ "AM diagnostics not set properly");
+ assertTrue(pendingApp.getDiagnostics().toString().contains(
+ CSAMContainerLaunchDiagnosticsConstants.QUEUE_AM_RESOURCE_LIMIT_EXCEED),
+ "AM diagnostics not set properly");
// Now verify the same test case in Queue C1 where label is not configured.
// Submit an app to Queue C1 with empty label
@@ -253,29 +255,30 @@ public RMNodeLabelsManager createNodeLabelManager() {
pendingApp = MockRMAppSubmitter.submit(rm1, data);
leafQueue = (LeafQueue) cs.getQueue("c1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
// 2 apps will be activated, third one will be pending as am-limit
// is reached.
- Assert.assertEquals(2, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString()
- .contains(AMState.INACTIVATED.getDiagnosticMessage()));
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString().contains(
- CSAMContainerLaunchDiagnosticsConstants.QUEUE_AM_RESOURCE_LIMIT_EXCEED));
+ assertEquals(2, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumPendingApplications());
+ assertTrue(pendingApp.getDiagnostics().toString()
+ .contains(AMState.INACTIVATED.getDiagnosticMessage()),
+ "AM diagnostics not set properly");
+ assertTrue(pendingApp.getDiagnostics().toString().contains(
+ CSAMContainerLaunchDiagnosticsConstants.QUEUE_AM_RESOURCE_LIMIT_EXCEED),
+ "AM diagnostics not set properly");
rm1.killApp(app3.getApplicationId());
Thread.sleep(1000);
// After killing one running app, pending app will also get activated.
- Assert.assertEquals(2, leafQueue.getNumActiveApplications());
- Assert.assertEquals(0, leafQueue.getNumPendingApplications());
+ assertEquals(2, leafQueue.getNumActiveApplications());
+ assertEquals(0, leafQueue.getNumPendingApplications());
rm1.close();
}
- @Test(timeout = 120000)
+ @Test
+ @Timeout(value = 120)
public void testAtleastOneAMRunPerPartition() throws Exception {
/*
* Test Case:
@@ -343,11 +346,11 @@ public RMNodeLabelsManager createNodeLabelManager() {
CapacityScheduler cs = (CapacityScheduler) rm1.getResourceScheduler();
LeafQueue leafQueue = (LeafQueue) cs.getQueue("a1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
// Only 1 app will be activated as am-limit for partition "x" is 0.15
- Assert.assertEquals(1, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
+ assertEquals(1, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumPendingApplications());
// Now verify the same test case in Queue C1 which takes default label
// to see queue level am-resource-limit is still working as expected.
@@ -379,15 +382,16 @@ public RMNodeLabelsManager createNodeLabelManager() {
MockRMAppSubmitter.submit(rm1, data);
leafQueue = (LeafQueue) cs.getQueue("c1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
// 1 app will be activated (and it has AM resource more than queue limit)
- Assert.assertEquals(1, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
+ assertEquals(1, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumPendingApplications());
rm1.close();
}
- @Test(timeout = 120000)
+ @Test
+ @Timeout(value = 120)
public void testDefaultAMLimitFromQueueForPartition() throws Exception {
/*
* Test Case:
@@ -446,24 +450,25 @@ public RMNodeLabelsManager createNodeLabelManager() {
CapacityScheduler cs = (CapacityScheduler) rm1.getResourceScheduler();
LeafQueue leafQueue = (LeafQueue) cs.getQueue("a1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
// Only 1 app will be activated as am-limit for queue is 0.2 and same is
// used for partition "x" also.
- Assert.assertEquals(1, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
- Assert.assertTrue("AM diagnostics not set properly", app1.getDiagnostics()
- .toString().contains(AMState.ACTIVATED.getDiagnosticMessage()));
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString()
- .contains(AMState.INACTIVATED.getDiagnosticMessage()));
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString()
- .contains(CSAMContainerLaunchDiagnosticsConstants.QUEUE_AM_RESOURCE_LIMIT_EXCEED));
+ assertEquals(1, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumPendingApplications());
+ assertTrue(app1.getDiagnostics().toString().contains(AMState.ACTIVATED.getDiagnosticMessage()),
+ "AM diagnostics not set properly");
+ assertTrue(pendingApp.getDiagnostics().toString()
+ .contains(AMState.INACTIVATED.getDiagnosticMessage()),
+ "AM diagnostics not set properly");
+ assertTrue(pendingApp.getDiagnostics().toString()
+ .contains(CSAMContainerLaunchDiagnosticsConstants.QUEUE_AM_RESOURCE_LIMIT_EXCEED),
+ "AM diagnostics not set properly");
rm1.close();
}
- @Test(timeout = 120000)
+ @Test
+ @Timeout(value = 120)
public void testUserAMResourceLimitWithLabels() throws Exception {
/*
* Test Case:
@@ -533,12 +538,12 @@ public RMNodeLabelsManager createNodeLabelManager() {
CapacityScheduler cs = (CapacityScheduler) rm1.getResourceScheduler();
LeafQueue leafQueue = (LeafQueue) cs.getQueue("a1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
// Verify active applications count in this queue.
- Assert.assertEquals(2, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumActiveApplications(user_0));
- Assert.assertEquals(0, leafQueue.getNumPendingApplications());
+ assertEquals(2, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumActiveApplications(user_0));
+ assertEquals(0, leafQueue.getNumPendingApplications());
// Submit 3rd app to Queue A1 for label X for user1. Now user1 will have
// 2 applications (2 GB resource) and user0 will have one app (1GB).
@@ -573,19 +578,19 @@ public RMNodeLabelsManager createNodeLabelManager() {
RMApp pendingApp = MockRMAppSubmitter.submit(rm1, data);
// Verify active applications count per user and also in queue level.
- Assert.assertEquals(3, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumActiveApplications(user_0));
- Assert.assertEquals(2, leafQueue.getNumActiveApplications(user_1));
- Assert.assertEquals(1, leafQueue.getNumPendingApplications(user_1));
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
+ assertEquals(3, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumActiveApplications(user_0));
+ assertEquals(2, leafQueue.getNumActiveApplications(user_1));
+ assertEquals(1, leafQueue.getNumPendingApplications(user_1));
+ assertEquals(1, leafQueue.getNumPendingApplications());
//verify Diagnostic messages
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString()
- .contains(AMState.INACTIVATED.getDiagnosticMessage()));
- Assert.assertTrue("AM diagnostics not set properly",
- pendingApp.getDiagnostics().toString().contains(
- CSAMContainerLaunchDiagnosticsConstants.USER_AM_RESOURCE_LIMIT_EXCEED));
+ assertTrue(pendingApp.getDiagnostics().toString()
+ .contains(AMState.INACTIVATED.getDiagnosticMessage()),
+ "AM diagnostics not set properly");
+ assertTrue(pendingApp.getDiagnostics().toString().contains(
+ CSAMContainerLaunchDiagnosticsConstants.USER_AM_RESOURCE_LIMIT_EXCEED),
+ "AM diagnostics not set properly");
rm1.close();
}
@@ -684,7 +689,7 @@ public RMNodeLabelsManager createNodeLabelManager() {
CapacityScheduler cs = (CapacityScheduler) rm1.getResourceScheduler();
LeafQueue leafQueue = (LeafQueue) cs.getQueue("a1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
/*
* capacity of queue A -> 50% for label Y
@@ -696,8 +701,8 @@ public RMNodeLabelsManager createNodeLabelManager() {
* AM resource percent config for queue A1 -> 0.25
* ==> 2.5Gb (3 Gb) is max-am-resource-limit
*/
- Assert.assertEquals(2, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
+ assertEquals(2, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumPendingApplications());
// Submit app3 with 1Gb AM resource to Queue B1 (no_label)
MockRMAppSubmissionData data1 =
@@ -723,7 +728,7 @@ public RMNodeLabelsManager createNodeLabelManager() {
MockRMAppSubmitter.submit(rm1, data);
leafQueue = (LeafQueue) cs.getQueue("b1");
- Assert.assertNotNull(leafQueue);
+ assertNotNull(leafQueue);
/*
* capacity of queue B -> 90% for queue
@@ -738,8 +743,8 @@ public RMNodeLabelsManager createNodeLabelManager() {
*
* Only one app will be activated and all othe will be pending.
*/
- Assert.assertEquals(1, leafQueue.getNumActiveApplications());
- Assert.assertEquals(1, leafQueue.getNumPendingApplications());
+ assertEquals(1, leafQueue.getNumActiveApplications());
+ assertEquals(1, leafQueue.getNumPendingApplications());
rm1.close();
}
@@ -824,16 +829,16 @@ public void testHeadroom() throws Exception {
when(amResourceRequest.getCapability()).thenReturn(amResource);
when(rmApp.getAMResourceRequests()).thenReturn(
Collections.singletonList(amResourceRequest));
- Mockito.doReturn(rmApp)
+ doReturn(rmApp)
.when(spyApps).get(ArgumentMatchers.any());
when(spyRMContext.getRMApps()).thenReturn(spyApps);
RMAppAttempt rmAppAttempt = mock(RMAppAttempt.class);
when(rmApp.getRMAppAttempt(any()))
.thenReturn(rmAppAttempt);
when(rmApp.getCurrentAppAttempt()).thenReturn(rmAppAttempt);
- Mockito.doReturn(rmApp)
+ doReturn(rmApp)
.when(spyApps).get(ArgumentMatchers.any());
- Mockito.doReturn(true).when(spyApps)
+ doReturn(true).when(spyApps)
.containsKey(ArgumentMatchers.any());
Priority priority_1 = TestUtils.createMockPriority(1);
@@ -1008,19 +1013,17 @@ public void testAMLimitByAllResources() throws Exception {
.withQueue(queueName)
.build());
- Assert.assertEquals("PendingApplications should be 1", 1,
- queueA.getNumPendingApplications());
- Assert.assertEquals("Active applications should be 2", 2,
- queueA.getNumActiveApplications());
+ assertEquals(1, queueA.getNumPendingApplications(), "PendingApplications should be 1");
+ assertEquals(2, queueA.getNumActiveApplications(), "Active applications should be 2");
// AMLimit is 2048,7
- Assert.assertEquals(2048,
+ assertEquals(2048,
queueA.getQueueResourceUsage().getAMLimit().getMemorySize());
- Assert.assertEquals(7,
+ assertEquals(7,
queueA.getQueueResourceUsage().getAMLimit().getVirtualCores());
// Used AM Resource is 2048,2
- Assert.assertEquals(2048,
+ assertEquals(2048,
queueA.getQueueResourceUsage().getAMUsed().getMemorySize());
- Assert.assertEquals(2,
+ assertEquals(2,
queueA.getQueueResourceUsage().getAMUsed().getVirtualCores());
rm.close();
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriority.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriority.java
index f91526c457053..9d7f5c1692858 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriority.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriority.java
@@ -19,6 +19,8 @@
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity;
import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -58,16 +60,16 @@
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.event.NodeAddedSchedulerEvent;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.event.SchedulerEvent;
import org.apache.hadoop.yarn.server.utils.BuilderUtils;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
public class TestApplicationPriority {
private final int GB = 1024;
private YarnConfiguration conf;
- @Before
+ @BeforeEach
public void setUp() throws Exception {
conf = new YarnConfiguration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -85,7 +87,7 @@ public void testApplicationOrderingWithPriority() throws Exception {
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
LeafQueue q = (LeafQueue) cs.getQueue("default");
- Assert.assertNotNull(q);
+ assertNotNull(q);
String host = "127.0.0.1";
RMNode node = MockNodes.newNodeInfo(0, MockNodes.newResource(16 * GB), 1,
@@ -176,14 +178,14 @@ public void testApplicationPriorityAllocation() throws Exception {
List allocated1 = am1.allocateAndWaitForContainers("127.0.0.1",
7, 2 * GB, nm1);
- Assert.assertEquals(7, allocated1.size());
- Assert.assertEquals(2 * GB, allocated1.get(0).getResource().getMemorySize());
+ assertEquals(7, allocated1.size());
+ assertEquals(2 * GB, allocated1.get(0).getResource().getMemorySize());
// check node report, 15 GB used (1 AM and 7 containers) and 1 GB available
SchedulerNodeReport report_nm1 = rm.getResourceScheduler().getNodeReport(
nm1.getNodeId());
- Assert.assertEquals(15 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(1 * GB,
+ assertEquals(15 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(1 * GB,
report_nm1.getAvailableResource().getMemorySize());
// Submit the second app App2 with priority 8 (Higher than App1)
@@ -200,8 +202,8 @@ public void testApplicationPriorityAllocation() throws Exception {
// check node report, 16 GB used and 0 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(0 * GB,
+ assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(0 * GB,
report_nm1.getAvailableResource().getMemorySize());
// get scheduler
@@ -223,8 +225,8 @@ public void testApplicationPriorityAllocation() throws Exception {
// check node report, 12 GB used and 4 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(12 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(4 * GB,
+ assertEquals(12 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(4 * GB,
report_nm1.getAvailableResource().getMemorySize());
// send updated request for App1
@@ -236,12 +238,12 @@ public void testApplicationPriorityAllocation() throws Exception {
2, 2 * GB, nm1);
// App2 has got 2 containers now.
- Assert.assertEquals(2, allocated2.size());
+ assertEquals(2, allocated2.size());
// check node report, 16 GB used and 0 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(0 * GB,
+ assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(0 * GB,
report_nm1.getAvailableResource().getMemorySize());
rm.stop();
@@ -274,14 +276,14 @@ public void testPriorityWithPendingApplications() throws Exception {
List allocated1 = am1.allocateAndWaitForContainers("127.0.0.1",
7, 1 * GB, nm1);
- Assert.assertEquals(7, allocated1.size());
- Assert.assertEquals(1 * GB, allocated1.get(0).getResource().getMemorySize());
+ assertEquals(7, allocated1.size());
+ assertEquals(1 * GB, allocated1.get(0).getResource().getMemorySize());
// check node report, 8 GB used (1 AM and 7 containers) and 0 GB available
SchedulerNodeReport report_nm1 = rm.getResourceScheduler().getNodeReport(
nm1.getNodeId());
- Assert.assertEquals(8 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(0 * GB,
+ assertEquals(8 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(0 * GB,
report_nm1.getAvailableResource().getMemorySize());
// Submit the second app App2 with priority 7
@@ -316,8 +318,8 @@ public void testPriorityWithPendingApplications() throws Exception {
// check node report, 1 GB used and 7 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(1 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(7 * GB,
+ assertEquals(1 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(7 * GB,
report_nm1.getAvailableResource().getMemorySize());
rm.stop();
@@ -342,7 +344,7 @@ public void testMaxPriorityValidation() throws Exception {
RMApp app1 = MockRMAppSubmitter.submit(rm, data);
// Application submission should be successful and verify priority
- Assert.assertEquals(app1.getApplicationSubmissionContext().getPriority(),
+ assertEquals(app1.getApplicationSubmissionContext().getPriority(),
maxPriority);
rm.stop();
}
@@ -383,7 +385,7 @@ public void testUpdatePriorityAtRuntime() throws Exception {
.get(app1.getApplicationId()).getCurrentAppAttempt();
// Verify whether the new priority is updated
- Assert.assertEquals(appPriority2, schedulerAppAttempt.getPriority());
+ assertEquals(appPriority2, schedulerAppAttempt.getPriority());
}
@Test
@@ -425,11 +427,12 @@ public void testUpdateInvalidPriorityAtRuntime() throws Exception {
// Verify whether priority 15 is reset to 10
Priority appPriority3 = Priority.newInstance(10);
- Assert.assertEquals(appPriority3, schedulerAppAttempt.getPriority());
+ assertEquals(appPriority3, schedulerAppAttempt.getPriority());
rm.stop();
}
- @Test(timeout = 180000)
+ @Test
+ @Timeout(value = 180)
public void testRMRestartWithChangeInPriority() throws Exception {
conf.setBoolean(YarnConfiguration.RECOVERY_ENABLED, true);
conf.setBoolean(YarnConfiguration.RM_WORK_PRESERVING_RECOVERY_ENABLED,
@@ -481,14 +484,14 @@ public void testRMRestartWithChangeInPriority() throws Exception {
nm1.setResourceTrackerService(rm2.getResourceTrackerService());
// Verify RM Apps after this restart
- Assert.assertEquals(1, rm2.getRMContext().getRMApps().size());
+ assertEquals(1, rm2.getRMContext().getRMApps().size());
// get scheduler app
RMApp loadedApp = rm2.getRMContext().getRMApps()
.get(app1.getApplicationId());
// Verify whether priority 15 is reset to 10
- Assert.assertEquals(appPriority2, loadedApp.getApplicationPriority());
+ assertEquals(appPriority2, loadedApp.getApplicationPriority());
rm2.stop();
rm1.stop();
@@ -521,15 +524,15 @@ public void testApplicationPriorityAllocationWithChangeInPriority()
List allocated1 = am1.allocateAndWaitForContainers("127.0.0.1",
NUM_CONTAINERS, 2 * GB, nm1);
- Assert.assertEquals(7, allocated1.size());
- Assert.assertEquals(2 * GB,
+ assertEquals(7, allocated1.size());
+ assertEquals(2 * GB,
allocated1.get(0).getResource().getMemorySize());
// check node report, 15 GB used (1 AM and 7 containers) and 1 GB available
SchedulerNodeReport report_nm1 =
rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(15 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(1 * GB,
+ assertEquals(15 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(1 * GB,
report_nm1.getAvailableResource().getMemorySize());
// Submit the second app App2 with priority 8 (Higher than App1)
@@ -546,8 +549,8 @@ public void testApplicationPriorityAllocationWithChangeInPriority()
// check node report, 16 GB used and 0 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(0 * GB,
+ assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(0 * GB,
report_nm1.getAvailableResource().getMemorySize());
// get scheduler
@@ -571,8 +574,8 @@ public void testApplicationPriorityAllocationWithChangeInPriority()
// check node report, 12 GB used and 4 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(12 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(4 * GB,
+ assertEquals(12 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(4 * GB,
report_nm1.getAvailableResource().getMemorySize());
// add request for containers App1
@@ -582,11 +585,11 @@ public void testApplicationPriorityAllocationWithChangeInPriority()
List allocated2 = am2.allocateAndWaitForContainers("127.0.0.1",
2, 2 * GB, nm1);
- Assert.assertEquals(2, allocated2.size());
+ assertEquals(2, allocated2.size());
// check node report, 16 GB used and 0 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(0 * GB,
+ assertEquals(16 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(0 * GB,
report_nm1.getAvailableResource().getMemorySize());
// kill 1 more
@@ -604,8 +607,8 @@ public void testApplicationPriorityAllocationWithChangeInPriority()
// check node report, 14 GB used and 2 GB available
report_nm1 = rm.getResourceScheduler().getNodeReport(nm1.getNodeId());
- Assert.assertEquals(14 * GB, report_nm1.getUsedResource().getMemorySize());
- Assert.assertEquals(2 * GB,
+ assertEquals(14 * GB, report_nm1.getUsedResource().getMemorySize());
+ assertEquals(2 * GB,
report_nm1.getAvailableResource().getMemorySize());
// Change the priority of App1 to 3 (lowest)
@@ -623,9 +626,9 @@ public void testApplicationPriorityAllocationWithChangeInPriority()
List allocated3 = am1.allocateAndWaitForContainers("127.0.0.1",
1, 2 * GB, nm1);
- Assert.assertEquals(1, allocated3.size());
+ assertEquals(1, allocated3.size());
// Now App1 will have 5 containers and 1 AM. App2 will have 2 containers.
- Assert.assertEquals(6, schedulerAppAttemptApp1.getLiveContainers().size());
+ assertEquals(6, schedulerAppAttemptApp1.getLiveContainers().size());
rm.stop();
}
@@ -689,8 +692,8 @@ public void testOrderOfActivatingThePriorityApplicationOnRMRestart()
am2.registerAppAttempt();
rm1.drainEvents();
- Assert.assertEquals(2, defaultQueue.getNumActiveApplications());
- Assert.assertEquals(0, defaultQueue.getNumPendingApplications());
+ assertEquals(2, defaultQueue.getNumActiveApplications());
+ assertEquals(0, defaultQueue.getNumPendingApplications());
// App-3 with priority 7 submitted and scheduled. But not activated since
// AMResourceLimit threshold
@@ -702,22 +705,22 @@ public void testOrderOfActivatingThePriorityApplicationOnRMRestart()
RMApp app3 = MockRMAppSubmitter.submit(rm1, data);
rm1.drainEvents();
- Assert.assertEquals(2, defaultQueue.getNumActiveApplications());
- Assert.assertEquals(1, defaultQueue.getNumPendingApplications());
+ assertEquals(2, defaultQueue.getNumActiveApplications());
+ assertEquals(1, defaultQueue.getNumPendingApplications());
Iterator iterator =
defaultQueue.getOrderingPolicy().getSchedulableEntities().iterator();
FiCaSchedulerApp fcApp2 = iterator.next();
- Assert.assertEquals(app2.getCurrentAppAttempt().getAppAttemptId(),
+ assertEquals(app2.getCurrentAppAttempt().getAppAttemptId(),
fcApp2.getApplicationAttemptId());
FiCaSchedulerApp fcApp1 = iterator.next();
- Assert.assertEquals(app1.getCurrentAppAttempt().getAppAttemptId(),
+ assertEquals(app1.getCurrentAppAttempt().getAppAttemptId(),
fcApp1.getApplicationAttemptId());
iterator = defaultQueue.getPendingApplications().iterator();
FiCaSchedulerApp fcApp3 = iterator.next();
- Assert.assertEquals(app3.getCurrentAppAttempt().getAppAttemptId(),
+ assertEquals(app3.getCurrentAppAttempt().getAppAttemptId(),
fcApp3.getApplicationAttemptId());
// create new RM to represent restart and recover state
@@ -729,7 +732,7 @@ public void testOrderOfActivatingThePriorityApplicationOnRMRestart()
nm1.setResourceTrackerService(rm2.getResourceTrackerService());
// Verify RM Apps after this restart
- Assert.assertEquals(3, rm2.getRMContext().getRMApps().size());
+ assertEquals(3, rm2.getRMContext().getRMApps().size());
rm2.drainEvents();
scheduler = rm2.getRMContext().getScheduler();
@@ -747,8 +750,8 @@ public void testOrderOfActivatingThePriorityApplicationOnRMRestart()
// Before NM registration, AMResourceLimit threshold is 0. So no
// applications get activated.
- Assert.assertEquals(0, defaultQueue.getNumActiveApplications());
- Assert.assertEquals(3, defaultQueue.getNumPendingApplications());
+ assertEquals(0, defaultQueue.getNumActiveApplications());
+ assertEquals(3, defaultQueue.getNumPendingApplications());
// NM resync to new RM
nm1.registerNode();
@@ -763,31 +766,32 @@ public void testOrderOfActivatingThePriorityApplicationOnRMRestart()
Thread.sleep(50);
}
- Assert.assertEquals(2, defaultQueue.getNumActiveApplications());
- Assert.assertEquals(1, defaultQueue.getNumPendingApplications());
+ assertEquals(2, defaultQueue.getNumActiveApplications());
+ assertEquals(1, defaultQueue.getNumPendingApplications());
// verify for order of activated applications iterator
iterator =
defaultQueue.getOrderingPolicy().getSchedulableEntities().iterator();
fcApp2 = iterator.next();
- Assert.assertEquals(app2.getCurrentAppAttempt().getAppAttemptId(),
+ assertEquals(app2.getCurrentAppAttempt().getAppAttemptId(),
fcApp2.getApplicationAttemptId());
fcApp1 = iterator.next();
- Assert.assertEquals(app1.getCurrentAppAttempt().getAppAttemptId(),
+ assertEquals(app1.getCurrentAppAttempt().getAppAttemptId(),
fcApp1.getApplicationAttemptId());
// verify for pending application iterator. It should be app-3 attempt
iterator = defaultQueue.getPendingApplications().iterator();
fcApp3 = iterator.next();
- Assert.assertEquals(app3.getCurrentAppAttempt().getAppAttemptId(),
+ assertEquals(app3.getCurrentAppAttempt().getAppAttemptId(),
fcApp3.getApplicationAttemptId());
rm2.stop();
rm1.stop();
}
- @Test(timeout = 120000)
+ @Test
+ @Timeout(value = 120)
public void testUpdatePriorityOnPendingAppAndKillAttempt() throws Exception {
int maxPriority = 10;
int appPriority = 5;
@@ -812,8 +816,8 @@ public void testUpdatePriorityOnPendingAppAndKillAttempt() throws Exception {
((LeafQueue) defaultQueue).getOrderingPolicy().getSchedulableEntities();
// Verify app is in pending state
- Assert.assertEquals("Pending apps should be 1", 1, appsPending.size());
- Assert.assertEquals("Active apps should be 0", 0, activeApps.size());
+ assertEquals(1, appsPending.size(), "Pending apps should be 1");
+ assertEquals(0, activeApps.size(), "Active apps should be 0");
// kill app1 which is pending
killAppAndVerifyOrderingPolicy(rm, defaultQueue, 0, 0, app1);
@@ -826,8 +830,8 @@ public void testUpdatePriorityOnPendingAppAndKillAttempt() throws Exception {
MockRMAppSubmissionData.Builder.createWithMemory(1024, rm)
.withAppPriority(Priority.newInstance(appPriority)).build();
RMApp app2 = MockRMAppSubmitter.submit(rm, data2);
- Assert.assertEquals("Pending apps should be 0", 0, appsPending.size());
- Assert.assertEquals("Active apps should be 1", 1, activeApps.size());
+ assertEquals(0, appsPending.size(), "Pending apps should be 0");
+ assertEquals(1, activeApps.size(), "Active apps should be 1");
MockRMAppSubmissionData data1 =
MockRMAppSubmissionData.Builder.createWithMemory(1024, rm)
.withAppPriority(Priority.newInstance(appPriority)).build();
@@ -836,8 +840,8 @@ public void testUpdatePriorityOnPendingAppAndKillAttempt() throws Exception {
MockRMAppSubmissionData.Builder.createWithMemory(1024, rm)
.withAppPriority(Priority.newInstance(appPriority)).build();
RMApp app4 = MockRMAppSubmitter.submit(rm, data);
- Assert.assertEquals("Pending apps should be 2", 2, appsPending.size());
- Assert.assertEquals("Active apps should be 1", 1, activeApps.size());
+ assertEquals(2, appsPending.size(), "Pending apps should be 2");
+ assertEquals(1, activeApps.size(), "Active apps should be 1");
// kill app3, pending apps should reduce to 1
killAppAndVerifyOrderingPolicy(rm, defaultQueue, 1, 1, app3);
// kill app2, running apps is killed and pending added to running
@@ -865,10 +869,10 @@ private void killAppAndVerifyOrderingPolicy(MockRM rm, CSQueue defaultQueue,
((LeafQueue) defaultQueue).getPendingApplications();
Collection activeApps =
((LeafQueue) defaultQueue).getApplications();
- Assert.assertEquals("Pending apps should be " + appsPendingExpected,
- appsPendingExpected, appsPending.size());
- Assert.assertEquals("Active apps should be " + activeAppsExpected,
- activeAppsExpected, activeApps.size());
+ assertEquals(appsPendingExpected, appsPending.size(),
+ "Pending apps should be " + appsPendingExpected);
+ assertEquals(activeAppsExpected, activeApps.size(),
+ "Active apps should be " + activeAppsExpected);
}
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLConfiguration.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLConfiguration.java
index e2011ff9cdb98..37315bff2fa3a 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLConfiguration.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLConfiguration.java
@@ -17,11 +17,12 @@
*/
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
import java.util.List;
import org.apache.hadoop.yarn.api.records.Priority;
-import org.junit.Assert;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
public class TestApplicationPriorityACLConfiguration {
@@ -117,10 +118,10 @@ private void verifyACLs(List pGroup, String queueUser,
AppPriorityACLGroup group = pGroup.get(0);
String aclString = queueUser + " " + queueGroup;
- Assert.assertEquals(aclString.trim(),
+ assertEquals(aclString.trim(),
group.getACLList().getAclString().trim());
- Assert.assertEquals(maxPriority, group.getMaxPriority().getPriority());
- Assert.assertEquals(defaultPriority,
+ assertEquals(maxPriority, group.getMaxPriority().getPriority());
+ assertEquals(defaultPriority,
group.getDefaultPriority().getPriority());
}
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLs.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLs.java
index 674bb5c8c1eba..36be83e4fddc7 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLs.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestApplicationPriorityACLs.java
@@ -37,9 +37,11 @@
import org.apache.hadoop.yarn.server.resourcemanager.ACLsTestBase;
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppState;
import org.apache.hadoop.yarn.util.resource.Resources;
-import org.junit.Assert;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
public class TestApplicationPriorityACLs extends ACLsTestBase {
@@ -143,9 +145,9 @@ private void submitAppToRMWithInValidAcl(String submitter,
.newInstance(appSubmissionContext);
try {
submitterClient.submitApplication(submitRequest);
- Assert.fail();
+ fail();
} catch (YarnException ex) {
- Assert.assertTrue(ex.getCause() instanceof RemoteException);
+ assertTrue(ex.getCause() instanceof RemoteException);
}
}
@@ -167,10 +169,10 @@ private void verifyAppPriorityIsAccepted(String submitter,
try {
GetApplicationReportResponse response = submitterClient
.getApplicationReport(request);
- Assert.assertEquals(response.getApplicationReport().getPriority(),
+ assertEquals(response.getApplicationReport().getPriority(),
Priority.newInstance(priority));
} catch (YarnException e) {
- Assert.fail("Application submission should not fail.");
+ fail("Application submission should not fail.");
}
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueDeletionPolicy.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueDeletionPolicy.java
index 6ed76b6341c82..a454f77cd1205 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueDeletionPolicy.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueDeletionPolicy.java
@@ -32,12 +32,15 @@
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ResourceScheduler;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.event.AppAttemptRemovedSchedulerEvent;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.event.AppRemovedSchedulerEvent;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.TestCapacitySchedulerNewQueueAutoCreation.MAX_MEMORY;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class TestAutoCreatedQueueDeletionPolicy
extends TestCapacitySchedulerAutoCreatedQueueBase {
@@ -61,7 +64,7 @@ public class TestAutoCreatedQueueDeletionPolicy
/
a1
*/
- @Before
+ @BeforeEach
public void setUp() throws Exception {
csConf = new CapacitySchedulerConfiguration();
csConf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -81,7 +84,7 @@ public void setUp() throws Exception {
csConf.setAutoExpiredDeletionTime(1);
}
- @After
+ @AfterEach
public void tearDown() {
if (mockRM != null) {
mockRM.stop();
@@ -94,14 +97,14 @@ public void testEditSchedule() throws Exception {
// Make sure e not null
AbstractCSQueue e = (AbstractCSQueue) cs.
getQueue("root.e");
- Assert.assertNotNull(e);
- Assert.assertTrue(e.isDynamicQueue());
+ assertNotNull(e);
+ assertTrue(e.isDynamicQueue());
// Make sure e1 not null
AbstractCSQueue e1 = (AbstractCSQueue)cs.
getQueue("root.e.e1");
- Assert.assertNotNull(e1);
- Assert.assertTrue(e1.isDynamicQueue());
+ assertNotNull(e1);
+ assertTrue(e1.isDynamicQueue());
// signal it because of without submit created
e1.setLastSubmittedTimestamp(Time.monotonicNow());
@@ -115,8 +118,8 @@ public void testEditSchedule() throws Exception {
// Make sure user0 not null
AbstractCSQueue user0 = (AbstractCSQueue) cs
.getQueue("root.e.user_0");
- Assert.assertNotNull(user0);
- Assert.assertTrue(user0.isDynamicQueue());
+ assertNotNull(user0);
+ assertTrue(user0.isDynamicQueue());
// Make app finished
AppAttemptRemovedSchedulerEvent event =
new AppAttemptRemovedSchedulerEvent(user0AppAttemptId,
@@ -127,7 +130,7 @@ public void testEditSchedule() throws Exception {
cs.handle(rEvent);
// There are no apps in user0
- Assert.assertEquals(user0.getNumApplications(), 0);
+ assertEquals(user0.getNumApplications(), 0);
// Wait the time expired.
long l1 = user0.getLastSubmittedTimestamp();
@@ -148,29 +151,29 @@ public void testEditSchedule() throws Exception {
// Make sure user_0 , e1 queue
// will be scheduled to mark for deletion
// because it is expired for deletion.
- Assert.assertEquals(policy.getMarkedForDeletion().size(), 2);
- Assert.assertTrue(policy.
+ assertEquals(policy.getMarkedForDeletion().size(), 2);
+ assertTrue(policy.
getMarkedForDeletion().contains("root.e.user_0"));
- Assert.assertTrue(policy.
+ assertTrue(policy.
getMarkedForDeletion().contains("root.e.e1"));
// Make sure the send for deletion is empty for first mark.
- Assert.assertEquals(policy.getSentForDeletion().size(), 0);
+ assertEquals(policy.getSentForDeletion().size(), 0);
// Make sure user_0 , e1 queue will be scheduled to send for deletion
policy.prepareForAutoDeletion();
- Assert.assertEquals(policy.getMarkedForDeletion().size(), 0);
- Assert.assertEquals(policy.getSentForDeletion().size(), 2);
+ assertEquals(policy.getMarkedForDeletion().size(), 0);
+ assertEquals(policy.getSentForDeletion().size(), 2);
// Make sure e1, user0 not null before trigger remove.
e1 = (AbstractCSQueue) cs.getQueue("root.e.e1");
- Assert.assertNotNull(e1);
+ assertNotNull(e1);
user0 = (AbstractCSQueue)cs.getQueue("root.e.user_0");
- Assert.assertNotNull(user0);
+ assertNotNull(user0);
// Make sure e1, user0 will be null after trigger remove.
policy.triggerAutoDeletionForExpiredQueues();
- Assert.assertEquals(policy.getMarkedForDeletion().size(), 0);
- Assert.assertEquals(policy.getSentForDeletion().size(), 0);
+ assertEquals(policy.getMarkedForDeletion().size(), 0);
+ assertEquals(policy.getSentForDeletion().size(), 0);
// Wait e1, user0 auto deleted.
GenericTestUtils.waitFor(()-> cs.getQueue(
@@ -180,13 +183,13 @@ public void testEditSchedule() throws Exception {
"root.e.user_0") == null,
100, 2000);
e1 = (AbstractCSQueue) cs.getQueue("root.e.e1");
- Assert.assertNull(e1);
+ assertNull(e1);
user0 = (AbstractCSQueue)cs.getQueue("root.e.user_0");
- Assert.assertNull(user0);
+ assertNull(user0);
// Make sure e is not null, before schedule.
e = (AbstractCSQueue) cs.getQueue("root.e");
- Assert.assertNotNull(e);
+ assertNotNull(e);
// Expired for e
// Wait e marked for deletion.
@@ -198,29 +201,29 @@ public void testEditSchedule() throws Exception {
}, 100, 2000);
policy.editSchedule();
e = (AbstractCSQueue) cs.getQueue("root.e");
- Assert.assertNotNull(e);
- Assert.assertEquals(policy.getMarkedForDeletion().size(), 1);
- Assert.assertEquals(policy.getSentForDeletion().size(), 0);
- Assert.assertTrue(policy.getMarkedForDeletion().contains("root.e"));
+ assertNotNull(e);
+ assertEquals(policy.getMarkedForDeletion().size(), 1);
+ assertEquals(policy.getSentForDeletion().size(), 0);
+ assertTrue(policy.getMarkedForDeletion().contains("root.e"));
// Make sure e queue will be scheduled to send for deletion
policy.prepareForAutoDeletion();
- Assert.assertEquals(policy.getMarkedForDeletion().size(), 0);
- Assert.assertEquals(policy.getSentForDeletion().size(), 1);
+ assertEquals(policy.getMarkedForDeletion().size(), 0);
+ assertEquals(policy.getSentForDeletion().size(), 1);
// Make sure e not null before trigger remove.
e = (AbstractCSQueue) cs.getQueue("root.e");
- Assert.assertNotNull(e);
+ assertNotNull(e);
// Make sure e will be null after trigger remove.
policy.triggerAutoDeletionForExpiredQueues();
// Wait e1 auto deleted.
GenericTestUtils.waitFor(()-> cs.getQueue(
"root.e") == null, 100, 2000);
- Assert.assertEquals(policy.getMarkedForDeletion().size(), 0);
- Assert.assertEquals(policy.getSentForDeletion().size(), 0);
+ assertEquals(policy.getMarkedForDeletion().size(), 0);
+ assertEquals(policy.getSentForDeletion().size(), 0);
e = (AbstractCSQueue) cs.getQueue("root.e");
- Assert.assertNull(e);
+ assertNull(e);
}
public void prepareForSchedule() throws Exception{
@@ -228,8 +231,8 @@ public void prepareForSchedule() throws Exception{
policy.editSchedule();
// There are no queues should be scheduled
- Assert.assertEquals(policy.getMarkedForDeletion().size(), 0);
- Assert.assertEquals(policy.getSentForDeletion().size(), 0);
+ assertEquals(policy.getMarkedForDeletion().size(), 0);
+ assertEquals(policy.getSentForDeletion().size(), 0);
createQueue("root.e.e1");
}
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueTemplate.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueTemplate.java
index 5b3acf11c4fdd..31d086c712f6a 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueTemplate.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestAutoCreatedQueueTemplate.java
@@ -18,9 +18,12 @@
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNull;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.AUTO_CREATE_CHILD_QUEUE_AUTO_REMOVAL_ENABLE;
@@ -37,7 +40,7 @@ public class TestAutoCreatedQueueTemplate {
private CapacitySchedulerConfiguration conf;
- @Before
+ @BeforeEach
public void setUp() throws Exception {
conf = new CapacitySchedulerConfiguration();
conf.setQueues(ROOT, new String[]{"a"});
@@ -53,8 +56,8 @@ public void testNonWildCardTemplate() {
new AutoCreatedQueueTemplate(conf, TEST_QUEUE_AB);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_ABC);
- Assert.assertEquals("weight is not set", 6f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6);
+ assertEquals(6f, conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC),
+ 10e-6, "weight is not set");
}
@@ -65,8 +68,8 @@ public void testOneLevelWildcardTemplate() {
new AutoCreatedQueueTemplate(conf, TEST_QUEUE_AB);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_ABC);
- Assert.assertEquals("weight is not set", 6f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6);
+ assertEquals(6f, conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6,
+ "weight is not set");
}
@@ -80,10 +83,10 @@ public void testTwoLevelWildcardTemplate() {
new AutoCreatedQueueTemplate(conf, TEST_QUEUE_AB)
.setTemplateEntriesForChild(conf, TEST_QUEUE_ABC);
- Assert.assertEquals("weight is not set", 6f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_AB), 10e-6);
- Assert.assertEquals("weight is not set", 5f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6);
+ assertEquals(6f, conf.getNonLabeledQueueWeight(TEST_QUEUE_AB), 10e-6,
+ "weight is not set");
+ assertEquals(5f, conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6,
+ "weight is not set");
}
@Test
@@ -93,8 +96,8 @@ public void testIgnoredWhenRootWildcarded() {
new AutoCreatedQueueTemplate(conf, ROOT);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_A);
- Assert.assertEquals("weight is set", -1f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_A), 10e-6);
+ assertEquals(-1f, conf.getNonLabeledQueueWeight(TEST_QUEUE_A), 10e-6,
+ "weight is set");
}
@Test
@@ -104,8 +107,7 @@ public void testIgnoredWhenNoParent() {
new AutoCreatedQueueTemplate(conf, ROOT);
template.setTemplateEntriesForChild(conf, ROOT);
- Assert.assertEquals("weight is set", -1f,
- conf.getNonLabeledQueueWeight(ROOT), 10e-6);
+ assertEquals(-1f, conf.getNonLabeledQueueWeight(ROOT), 10e-6, "weight is set");
}
@Test
@@ -115,8 +117,9 @@ public void testWildcardAfterRoot() {
new AutoCreatedQueueTemplate(conf, TEST_QUEUE_A);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_A);
- Assert.assertEquals("acl_submit_applications is set", "user",
- template.getTemplateProperties().get("acl_submit_applications"));
+ assertEquals("user",
+ template.getTemplateProperties().get("acl_submit_applications"),
+ "acl_submit_applications is set");
}
@Test
@@ -129,9 +132,8 @@ public void testTemplatePrecedence() {
new AutoCreatedQueueTemplate(conf, TEST_QUEUE_AB);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_ABC);
- Assert.assertEquals(
- "explicit template does not have the highest precedence", 6f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6);
+ assertEquals(6f, conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6,
+ "explicit template does not have the highest precedence");
CapacitySchedulerConfiguration newConf =
new CapacitySchedulerConfiguration();
@@ -140,8 +142,8 @@ public void testTemplatePrecedence() {
new AutoCreatedQueueTemplate(newConf, TEST_QUEUE_AB);
template.setTemplateEntriesForChild(newConf, TEST_QUEUE_ABC);
- Assert.assertEquals("precedence is invalid", 4f,
- newConf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6);
+ assertEquals(4f, newConf.getNonLabeledQueueWeight(TEST_QUEUE_ABC),
+ 10e-6, "precedence is invalid");
}
@Test
@@ -151,8 +153,8 @@ public void testRootTemplate() {
AutoCreatedQueueTemplate template =
new AutoCreatedQueueTemplate(conf, ROOT);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_A);
- Assert.assertEquals("root property is not set", 2f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_A), 10e-6);
+ assertEquals(2f, conf.getNonLabeledQueueWeight(TEST_QUEUE_A), 10e-6,
+ "root property is not set");
}
@Test
@@ -169,17 +171,17 @@ public void testQueueSpecificTemplates() {
template.setTemplateEntriesForChild(conf, TEST_QUEUE_A);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_B, true);
- Assert.assertNull("default-node-label-expression is set for parent",
- conf.getDefaultNodeLabelExpression(TEST_QUEUE_A));
- Assert.assertEquals("default-node-label-expression is not set for leaf",
- "test", conf.getDefaultNodeLabelExpression(TEST_QUEUE_B));
- Assert.assertFalse("auto queue removal is not disabled for parent",
- conf.isAutoExpiredDeletionEnabled(TEST_QUEUE_A));
- Assert.assertEquals("weight should not be overridden when set by " +
- "queue type specific template",
- 10f, conf.getNonLabeledQueueWeight(TEST_QUEUE_B), 10e-6);
- Assert.assertEquals("weight should be set by common template",
- 2f, conf.getNonLabeledQueueWeight(TEST_QUEUE_A), 10e-6);
+ assertNull(conf.getDefaultNodeLabelExpression(TEST_QUEUE_A),
+ "default-node-label-expression is set for parent");
+ assertEquals("test", conf.getDefaultNodeLabelExpression(TEST_QUEUE_B),
+ "default-node-label-expression is not set for leaf");
+ assertFalse(conf.isAutoExpiredDeletionEnabled(TEST_QUEUE_A),
+ "auto queue removal is not disabled for parent");
+ assertEquals(10f, conf.getNonLabeledQueueWeight(TEST_QUEUE_B),
+ 10e-6, "weight should not be overridden when set by " +
+ "queue type specific template");
+ assertEquals(2f, conf.getNonLabeledQueueWeight(TEST_QUEUE_A), 10e-6,
+ "weight should be set by common template");
}
@@ -195,10 +197,10 @@ public void testWildcardTemplateWithLimitedAutoCreatedQueueDepth() {
new AutoCreatedQueueTemplate(conf, TEST_QUEUE_AB)
.setTemplateEntriesForChild(conf, TEST_QUEUE_ABC);
- Assert.assertEquals("weight is not set", 6f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_AB), 10e-6);
- Assert.assertEquals("weight is not set", 5f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6);
+ assertEquals(6f, conf.getNonLabeledQueueWeight(TEST_QUEUE_AB), 10e-6,
+ "weight is not set");
+ assertEquals(5f, conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6,
+ "weight is not set");
}
@Test
@@ -209,8 +211,8 @@ public void testIgnoredTemplateWithLimitedAutoCreatedQueueDepth() {
new AutoCreatedQueueTemplate(conf, TEST_QUEUE_AB)
.setTemplateEntriesForChild(conf, TEST_QUEUE_ABC);
- Assert.assertEquals("weight is set incorrectly", -1f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6);
+ assertEquals(-1f, conf.getNonLabeledQueueWeight(TEST_QUEUE_ABC), 10e-6,
+ "weight is set incorrectly");
}
@Test
@@ -221,8 +223,8 @@ public void testIgnoredTemplateWhenQueuePathIsInvalid() {
new AutoCreatedQueueTemplate(conf, invalidPath);
template.setTemplateEntriesForChild(conf, TEST_QUEUE_AB);
- Assert.assertEquals("weight is set using invalid queue path", -1f,
- conf.getNonLabeledQueueWeight(TEST_QUEUE_AB), 10e-6);
+ assertEquals(-1f, conf.getNonLabeledQueueWeight(TEST_QUEUE_AB),
+ 10e-6, "weight is set using invalid queue path");
}
private String getTemplateKey(QueuePath queuePath, String entryKey) {
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSAllocateCustomResource.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSAllocateCustomResource.java
index 5c0f5d1d318f6..2dfd17883daf4 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSAllocateCustomResource.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSAllocateCustomResource.java
@@ -44,10 +44,9 @@
import org.apache.hadoop.yarn.util.resource.ResourceCalculator;
import org.apache.hadoop.yarn.util.resource.ResourceUtils;
import org.apache.hadoop.yarn.util.resource.Resources;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import java.io.File;
import java.io.IOException;
@@ -63,7 +62,8 @@
import static org.apache.hadoop.yarn.api.records.ResourceInformation.FPGA_URI;
import static org.apache.hadoop.yarn.api.records.ResourceInformation.GPU_URI;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.MAXIMUM_ALLOCATION_MB;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
/**
* Test case for custom resource container allocation.
@@ -85,7 +85,7 @@ public class TestCSAllocateCustomResource {
private ClusterNodeTracker nodeTracker;
private ClusterMetrics metrics;
- @Before
+ @BeforeEach
public void setUp() throws Exception {
conf = new YarnConfiguration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -94,7 +94,7 @@ public void setUp() throws Exception {
mgr.init(conf);
}
- @After
+ @AfterEach
public void tearDown() {
if (resourceTypesFile != null && resourceTypesFile.exists()) {
resourceTypesFile.delete();
@@ -162,7 +162,7 @@ public void testCapacitySchedulerJobWhenConfigureCustomResourceType()
// Do nm heartbeats 1 times, will allocate a container on nm1
cs.handle(new NodeUpdateSchedulerEvent(rmNode1));
rm.drainEvents();
- Assert.assertEquals(2, schedulerApp1.getLiveContainers().size());
+ assertEquals(2, schedulerApp1.getLiveContainers().size());
rm.close();
}
@@ -193,12 +193,12 @@ public void testCapacitySchedulerInitWithCustomResourceType()
// Ensure the method can get custom resource type from
// CapacitySchedulerConfiguration
- Assert.assertNotEquals(0,
+ assertNotEquals(0,
ResourceUtils
.fetchMaximumAllocationFromConfig(cs.getConfiguration())
.getResourceValue("yarn.io/gpu"));
// Ensure custom resource type exists in queue's maximumAllocation
- Assert.assertNotEquals(0,
+ assertNotEquals(0,
cs.getMaximumResourceCapability("a")
.getResourceValue("yarn.io/gpu"));
rm.close();
@@ -236,26 +236,20 @@ public void testClusterMetricsWithGPU()
}
// Check GPU inc related cluster metrics.
- assertEquals("Cluster Capability Memory incorrect",
- metrics.getCapabilityMB(), (4096 * 8));
- assertEquals("Cluster Capability Vcores incorrect",
- metrics.getCapabilityVirtualCores(), 4 * 8);
- assertEquals("Cluster Capability GPUs incorrect",
- (metrics.getCustomResourceCapability()
- .get(GPU_URI)).longValue(), 4 * 8);
+ assertEquals(metrics.getCapabilityMB(), (4096 * 8), "Cluster Capability Memory incorrect");
+ assertEquals(metrics.getCapabilityVirtualCores(), 4 * 8, "Cluster Capability Vcores incorrect");
+ assertEquals((metrics.getCustomResourceCapability()
+ .get(GPU_URI)).longValue(), 4 * 8, "Cluster Capability GPUs incorrect");
for (RMNode rmNode : rmNodes) {
nodeTracker.removeNode(rmNode.getNodeID());
}
// Check GPU dec related cluster metrics.
- assertEquals("Cluster Capability Memory incorrect",
- metrics.getCapabilityMB(), 0);
- assertEquals("Cluster Capability Vcores incorrect",
- metrics.getCapabilityVirtualCores(), 0);
- assertEquals("Cluster Capability GPUs incorrect",
- (metrics.getCustomResourceCapability()
- .get(GPU_URI)).longValue(), 0);
+ assertEquals(metrics.getCapabilityMB(), 0, "Cluster Capability Memory incorrect");
+ assertEquals(metrics.getCapabilityVirtualCores(), 0, "Cluster Capability Vcores incorrect");
+ assertEquals((metrics.getCustomResourceCapability()
+ .get(GPU_URI)).longValue(), 0, "Cluster Capability GPUs incorrect");
ClusterMetrics.destroy();
rm.stop();
}
@@ -317,17 +311,17 @@ public void testCapacitySchedulerAbsoluteConfWithCustomResourceType()
// Check the gpu resource conf is right.
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
- Assert.assertEquals(aMINRES,
+ assertEquals(aMINRES,
cs.getConfiguration().
getMinimumResourceRequirement("", A, resourceTypes));
- Assert.assertEquals(aMAXRES,
+ assertEquals(aMAXRES,
cs.getConfiguration().
getMaximumResourceRequirement("", A, resourceTypes));
// Check the gpu resource of queue is right.
- Assert.assertEquals(aMINRES, cs.getQueue("root.a").
+ assertEquals(aMINRES, cs.getQueue("root.a").
getQueueResourceQuotas().getConfiguredMinResource());
- Assert.assertEquals(aMAXRES, cs.getQueue("root.a").
+ assertEquals(aMAXRES, cs.getQueue("root.a").
getQueueResourceQuotas().getConfiguredMaxResource());
rm.close();
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSMaxRunningAppsEnforcer.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSMaxRunningAppsEnforcer.java
index 768768e95dbf9..5d002a3cd4691 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSMaxRunningAppsEnforcer.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSMaxRunningAppsEnforcer.java
@@ -18,7 +18,7 @@
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.PREFIX;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.mock;
@@ -43,8 +43,8 @@
import org.apache.hadoop.yarn.server.resourcemanager.security.AppPriorityACLsManager;
import org.apache.hadoop.yarn.util.ControlledClock;
import org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
public class TestCSMaxRunningAppsEnforcer {
private CapacitySchedulerQueueManager queueManager;
@@ -56,7 +56,7 @@ public class TestCSMaxRunningAppsEnforcer {
private ActivitiesManager activitiesManager;
private CapacitySchedulerConfiguration csConfig;
- @Before
+ @BeforeEach
public void setup() throws IOException {
csConfig = new CapacitySchedulerConfiguration();
rmContext = mock(RMContext.class);
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSQueueStore.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSQueueStore.java
index 8ec8d62e74454..ce3439eb1a10a 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSQueueStore.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCSQueueStore.java
@@ -24,13 +24,18 @@
import org.apache.hadoop.yarn.util.resource.DefaultResourceCalculator;
import org.apache.hadoop.yarn.util.resource.ResourceCalculator;
import org.apache.hadoop.yarn.util.resource.Resources;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import java.io.IOException;
-import static org.junit.Assert.*;
-import static org.mockito.Mockito.*;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
public class TestCSQueueStore {
@@ -41,7 +46,7 @@ public class TestCSQueueStore {
private CapacitySchedulerContext csContext;
private CapacitySchedulerQueueContext queueContext;
- @Before
+ @BeforeEach
public void setUp() throws IOException {
CapacitySchedulerConfiguration csConf =
new CapacitySchedulerConfiguration();
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCapacityScheduler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCapacityScheduler.java
index d6b83cca388d8..c77bb26de82cc 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCapacityScheduler.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCapacityScheduler.java
@@ -56,7 +56,6 @@
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerTestUtilities.stopResourceManager;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerTestUtilities.toSet;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerTestUtilities.waitforNMRegistered;
-import static org.assertj.core.api.Assertions.assertThat;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.TestCapacitySchedulerOvercommit.assertContainerKilled;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.TestCapacitySchedulerOvercommit.assertMemory;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.TestCapacitySchedulerOvercommit.assertNoPreemption;
@@ -65,11 +64,20 @@
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.TestCapacitySchedulerOvercommit.updateNodeResource;
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.TestCapacitySchedulerOvercommit.waitMemory;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.junit.jupiter.api.Assertions.fail;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.anyBoolean;
+import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
import java.net.InetSocketAddress;
@@ -195,11 +203,10 @@
import org.apache.hadoop.yarn.util.resource.DominantResourceCalculator;
import org.apache.hadoop.yarn.util.resource.ResourceUtils;
import org.apache.hadoop.yarn.util.resource.Resources;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.mockito.Mockito;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.Timeout;
import java.util.function.Supplier;
import org.apache.hadoop.thirdparty.com.google.common.collect.ImmutableMap;
@@ -217,18 +224,19 @@ public class TestCapacityScheduler {
private static final double DELTA = 0.0001;
- @Before
+ @BeforeEach
public void setUp() throws Exception {
resourceManager = createResourceManager();
mockContext = createMockRMContext();
}
- @After
+ @AfterEach
public void tearDown() throws Exception {
stopResourceManager(resourceManager);
}
- @Test (timeout = 30000)
+ @Test
+ @Timeout(value = 30)
public void testConfValidation() throws Exception {
CapacityScheduler scheduler = new CapacityScheduler();
scheduler.setRMContext(resourceManager.getRMContext());
@@ -242,9 +250,8 @@ public void testConfValidation() throws Exception {
" larger than the max memory allocation.");
} catch (YarnRuntimeException e) {
// Exception is expected.
- assertTrue("The thrown exception is not the expected one.",
- e.getMessage().startsWith(
- "Invalid resource scheduler memory"));
+ assertTrue(e.getMessage().startsWith("Invalid resource scheduler memory"),
+ "The thrown exception is not the expected one.");
}
conf = new YarnConfiguration();
@@ -256,9 +263,8 @@ public void testConfValidation() throws Exception {
" larger than the max vcores allocation.");
} catch (YarnRuntimeException e) {
// Exception is expected.
- assertTrue("The thrown exception is not the expected one.",
- e.getMessage().startsWith(
- "Invalid resource scheduler vcores"));
+ assertTrue(e.getMessage().startsWith("Invalid resource scheduler vcores"),
+ "The thrown exception is not the expected one.");
}
}
@@ -623,17 +629,17 @@ public void testQueueMaximumAllocations() {
Resource maxAllocation2 = scheduler.getMaximumResourceCapability(null);
Resource maxAllocation3 = scheduler.getMaximumResourceCapability();
- Assert.assertEquals(maxAllocation1, maxAllocation2);
- Assert.assertEquals(maxAllocation1, maxAllocation3);
- Assert.assertEquals(
+ assertEquals(maxAllocation1, maxAllocation2);
+ assertEquals(maxAllocation1, maxAllocation3);
+ assertEquals(
YarnConfiguration.DEFAULT_RM_SCHEDULER_MAXIMUM_ALLOCATION_MB,
maxAllocation1.getMemorySize());
- Assert.assertEquals(
+ assertEquals(
YarnConfiguration.DEFAULT_RM_SCHEDULER_MAXIMUM_ALLOCATION_VCORES,
maxAllocation1.getVirtualCores());
- Assert.assertEquals(1024, maxAllocationForQueue.getMemorySize());
- Assert.assertEquals(1, maxAllocationForQueue.getVirtualCores());
+ assertEquals(1024, maxAllocationForQueue.getMemorySize());
+ assertEquals(1, maxAllocationForQueue.getVirtualCores());
scheduler.stop();
}
@@ -681,17 +687,14 @@ public void testParseQueueWithAbsoluteResource() {
@Test
public void testCapacitySchedulerInfo() throws Exception {
QueueInfo queueInfo = resourceManager.getResourceScheduler().getQueueInfo("a", true, true);
- Assert.assertEquals("Queue Name should be a", "a",
- queueInfo.getQueueName());
- Assert.assertEquals("Queue Path should be root.a", "root.a",
- queueInfo.getQueuePath());
- Assert.assertEquals("Child Queues size should be 2", 2,
- queueInfo.getChildQueues().size());
+ assertEquals("a", queueInfo.getQueueName(), "Queue Name should be a");
+ assertEquals("root.a", queueInfo.getQueuePath(), "Queue Path should be root.a");
+ assertEquals(2, queueInfo.getChildQueues().size(), "Child Queues size should be 2");
List userACLInfo = resourceManager.getResourceScheduler().getQueueUserAclInfo();
- Assert.assertNotNull(userACLInfo);
+ assertNotNull(userACLInfo);
for (QueueUserACLInfo queueUserACLInfo : userACLInfo) {
- Assert.assertEquals(1, getQueueCount(userACLInfo,
+ assertEquals(1, getQueueCount(userACLInfo,
queueUserACLInfo.getQueueName()));
}
@@ -721,7 +724,7 @@ public void testAllocateReorder() throws Exception {
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
LeafQueue q = (LeafQueue) cs.getQueue("default");
- Assert.assertNotNull(q);
+ assertNotNull(q);
FairOrderingPolicy fop = new FairOrderingPolicy();
fop.setSizeBasedWeight(true);
@@ -841,14 +844,14 @@ public void testResourceOverCommit() throws Exception {
// verify no NPE is trigger in schedule after resource is updated
am.addRequests(new String[] {"127.0.0.1", "127.0.0.2"}, 3 * GB, 1, 1);
AllocateResponse allocResponse2 = am.schedule();
- assertTrue("Shouldn't have enough resource to allocate containers",
- allocResponse2.getAllocatedContainers().isEmpty());
+ assertTrue(allocResponse2.getAllocatedContainers().isEmpty(),
+ "Shouldn't have enough resource to allocate containers");
// try 10 times as scheduling is an async process
for (int i = 0; i < 10; i++) {
Thread.sleep(100);
allocResponse2 = am.schedule();
- assertTrue("Shouldn't have enough resource to allocate containers",
- allocResponse2.getAllocatedContainers().isEmpty());
+ assertTrue(allocResponse2.getAllocatedContainers().isEmpty(),
+ "Shouldn't have enough resource to allocate containers");
}
// increase the resources again to 5 GB to schedule the 3GB container
@@ -968,7 +971,8 @@ private void waitForNewAttemptCreated(RMApp app,
}
}
- @Test(timeout = 30000)
+ @Test
+ @Timeout(value = 30)
public void testAllocateDoesNotBlockOnSchedulerLock() throws Exception {
final YarnConfiguration conf = new YarnConfiguration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -1004,7 +1008,7 @@ public void testAllocateDoesNotBlockOnSchedulerLock() throws Exception {
Thread.sleep(msecToSleep);
msecToWait -= msecToSleep;
}
- Assert.assertEquals(attempt.getAppAttemptState(),
+ assertEquals(attempt.getAppAttemptState(),
RMAppAttemptState.LAUNCHED);
// Create a client to the RM.
@@ -1044,7 +1048,7 @@ public ApplicationMasterProtocol run() {
nm1.nodeHeartbeat(true);
ContainerId containerId2 =
ContainerId.newContainerId(applicationAttemptId, 2);
- Assert.assertTrue(rm.waitForState(nm1, containerId2,
+ assertTrue(rm.waitForState(nm1, containerId2,
RMContainerState.ALLOCATED));
// Acquire the container
@@ -1085,7 +1089,8 @@ public void run() {
rm.stop();
}
- @Test(timeout = 120000)
+ @Test
+ @Timeout(value = 120)
public void testPreemptionInfo() throws Exception {
Configuration conf = new Configuration();
conf.setInt(YarnConfiguration.RM_AM_MAX_ATTEMPTS, 3);
@@ -1162,7 +1167,8 @@ public void testPreemptionInfo() throws Exception {
rm1.stop();
}
- @Test(timeout = 300000)
+ @Test
+ @Timeout(value = 300)
public void testRecoverRequestAfterPreemption() throws Exception {
Configuration conf = new Configuration();
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@@ -1196,7 +1202,7 @@ public void testRecoverRequestAfterPreemption() throws Exception {
// Already the node local resource request is cleared from RM after
// allocation.
- Assert.assertEquals(0,
+ assertEquals(0,
app.getOutstandingAsksCount(SchedulerRequestKey.create(request),
request.getResourceName()));
}
@@ -1204,11 +1210,11 @@ public void testRecoverRequestAfterPreemption() throws Exception {
// Call killContainer to preempt the container
cs.markContainerForKillable(rmContainer);
- Assert.assertEquals(3, requests.size());
+ assertEquals(3, requests.size());
for (ResourceRequest request : requests) {
// Resource request must have added back in RM after preempt event
// handling.
- Assert.assertEquals(1,
+ assertEquals(1,
app.getOutstandingAsksCount(SchedulerRequestKey.create(request),
request.getResourceName()));
}
@@ -1223,7 +1229,7 @@ public void testRecoverRequestAfterPreemption() throws Exception {
new ArrayList()).getAllocatedContainers();
// Now with updated ResourceRequest, a container is allocated for AM.
- Assert.assertTrue(containers.size() == 1);
+ assertTrue(containers.size() == 1);
rm1.stop();
}
@@ -1250,33 +1256,31 @@ null, new RMContainerTokenSecretManager(conf),
// When preemption turned on for the whole system
// (yarn.resourcemanager.scheduler.monitor.enable=true), and with no other
// preemption properties set, queue root.b.b2 should be preemptable.
- assertFalse("queue " + B2 + " should default to preemptable",
- queueB2.getPreemptionDisabled());
+ assertFalse(queueB2.getPreemptionDisabled(),
+ "queue " + B2 + " should default to preemptable");
// Disable preemption at the root queue level.
// The preemption property should be inherited from root all the
// way down so that root.b.b2 should NOT be preemptable.
conf.setPreemptionDisabled(rootQueue.getQueuePathObject(), true);
cs.reinitialize(conf, rmContext);
- assertTrue(
- "queue " + B2 + " should have inherited non-preemptability from root",
- queueB2.getPreemptionDisabled());
+ assertTrue(queueB2.getPreemptionDisabled(),
+ "queue " + B2 + " should have inherited non-preemptability from root");
// Enable preemption for root (grandparent) but disable for root.b (parent).
// root.b.b2 should inherit property from parent and NOT be preemptable
conf.setPreemptionDisabled(rootQueue.getQueuePathObject(), false);
conf.setPreemptionDisabled(queueB.getQueuePathObject(), true);
cs.reinitialize(conf, rmContext);
- assertTrue(
- "queue " + B2 + " should have inherited non-preemptability from parent",
- queueB2.getPreemptionDisabled());
+ assertTrue(queueB2.getPreemptionDisabled(),
+ "queue " + B2 + " should have inherited non-preemptability from parent");
// When preemption is turned on for root.b.b2, it should be preemptable
// even though preemption is disabled on root.b (parent).
conf.setPreemptionDisabled(queueB2.getQueuePathObject(), false);
cs.reinitialize(conf, rmContext);
- assertFalse("queue " + B2 + " should have been preemptable",
- queueB2.getPreemptionDisabled());
+ assertFalse(queueB2.getPreemptionDisabled(),
+ "queue " + B2 + " should have been preemptable");
cs.stop();
}
@@ -1286,7 +1290,7 @@ private void waitContainerAllocated(MockAM am, int mem, int nContainer,
am.allocate("*", mem, 1, new ArrayList());
ContainerId containerId =
ContainerId.newContainerId(am.getApplicationAttemptId(), cId);
- Assert.assertTrue(rm.waitForState(nm, containerId,
+ assertTrue(rm.waitForState(nm, containerId,
RMContainerState.ALLOCATED));
}
}
@@ -1354,12 +1358,12 @@ public void testSchedulerKeyGarbageCollection() throws Exception {
null);
List allocatedContainers = allocateResponse
.getAllocatedContainers();
- Assert.assertEquals(0, allocatedContainers.size());
+ assertEquals(0, allocatedContainers.size());
Collection schedulerKeys =
((CapacityScheduler) scheduler).getApplicationAttempt(attemptId)
.getAppSchedulingInfo().getSchedulerKeys();
- Assert.assertEquals(4, schedulerKeys.size());
+ assertEquals(4, schedulerKeys.size());
// Get a Node to HB... at which point 1 container should be
// allocated
@@ -1367,10 +1371,10 @@ public void testSchedulerKeyGarbageCollection() throws Exception {
Thread.sleep(200);
allocateResponse = am1.allocate(new ArrayList<>(), new ArrayList<>());
allocatedContainers = allocateResponse.getAllocatedContainers();
- Assert.assertEquals(1, allocatedContainers.size());
+ assertEquals(1, allocatedContainers.size());
// Verify 1 outstanding schedulerKey is removed
- Assert.assertEquals(3, schedulerKeys.size());
+ assertEquals(3, schedulerKeys.size());
List resReqs =
((CapacityScheduler) scheduler).getApplicationAttempt(attemptId)
@@ -1378,7 +1382,7 @@ public void testSchedulerKeyGarbageCollection() throws Exception {
// Verify 1 outstanding schedulerKey is removed from the
// rrMap as well
- Assert.assertEquals(3, resReqs.size());
+ assertEquals(3, resReqs.size());
// Verify One more container Allocation on node nm2
// And ensure the outstanding schedulerKeys go down..
@@ -1396,15 +1400,15 @@ public void testSchedulerKeyGarbageCollection() throws Exception {
),
new ArrayList<>());
allocatedContainers = allocateResponse.getAllocatedContainers();
- Assert.assertEquals(1, allocatedContainers.size());
+ assertEquals(1, allocatedContainers.size());
// Verify 1 outstanding schedulerKey is removed
- Assert.assertEquals(2, schedulerKeys.size());
+ assertEquals(2, schedulerKeys.size());
resReqs = ((CapacityScheduler) scheduler).getApplicationAttempt(attemptId)
.getAppSchedulingInfo().getAllResourceRequests();
// Verify the map size is not increased due to 0 req
- Assert.assertEquals(2, resReqs.size());
+ assertEquals(2, resReqs.size());
// Now Verify that the AM can cancel 1 Ask:
SchedulerRequestKey sk = schedulerKeys.iterator().next();
@@ -1425,7 +1429,7 @@ public void testSchedulerKeyGarbageCollection() throws Exception {
// Verify 1 outstanding schedulerKey is removed because of the
// cancel ask
- Assert.assertEquals(1, schedulerKeys.size());
+ assertEquals(1, schedulerKeys.size());
// Now verify that after the next node heartbeat, we allocate
// the last schedulerKey
@@ -1433,14 +1437,14 @@ public void testSchedulerKeyGarbageCollection() throws Exception {
Thread.sleep(200);
allocateResponse = am1.allocate(new ArrayList<>(), new ArrayList<>());
allocatedContainers = allocateResponse.getAllocatedContainers();
- Assert.assertEquals(1, allocatedContainers.size());
+ assertEquals(1, allocatedContainers.size());
// Verify no more outstanding schedulerKeys..
- Assert.assertEquals(0, schedulerKeys.size());
+ assertEquals(0, schedulerKeys.size());
resReqs =
((CapacityScheduler) scheduler).getApplicationAttempt(attemptId)
.getAppSchedulingInfo().getAllResourceRequests();
- Assert.assertEquals(0, resReqs.size());
+ assertEquals(0, resReqs.size());
rm.stop();
}
@@ -1489,7 +1493,7 @@ public void testHierarchyQueuesCurrentLimits() throws Exception {
// Maximum resource of b1 is 100 * 0.895 * 0.792 = 71 GB
// 2 GBs used by am, so it's 71 - 2 = 69G.
- Assert.assertEquals(69 * GB,
+ assertEquals(69 * GB,
am1.doHeartbeat().getAvailableResources().getMemorySize());
MockRMAppSubmissionData data1 =
@@ -1513,7 +1517,7 @@ public void testHierarchyQueuesCurrentLimits() throws Exception {
// B2 uses 41 GB (5 * 8GB containers and 1 AM container)
// B1 uses 3 GB (2 * 1GB containers and 1 AM container)
// Available is 100 - 41 - 3 = 56 GB
- Assert.assertEquals(56 * GB,
+ assertEquals(56 * GB,
am1.doHeartbeat().getAvailableResources().getMemorySize());
// Now we submit app3 to a1 (in higher level hierarchy), to see if headroom
@@ -1540,7 +1544,7 @@ public void testHierarchyQueuesCurrentLimits() throws Exception {
// B1 uses 4 GB (3 * 1GB containers and 1 AM container)
// A1 uses 25 GB (3 * 8GB containers and 1 AM container)
// Available is 100 - 41 - 4 - 25 = 30 GB
- Assert.assertEquals(30 * GB,
+ assertEquals(30 * GB,
am1.doHeartbeat().getAvailableResources().getMemorySize());
rm1.stop();
}
@@ -1613,7 +1617,7 @@ public void testParentQueueMaxCapsAreRespected() throws Exception {
// Expected, return;
return;
}
- Assert.fail("Shouldn't successfully allocate containers for am2, "
+ fail("Shouldn't successfully allocate containers for am2, "
+ "queue-a's max capacity will be violated if container allocated");
rm1.stop();
}
@@ -1731,10 +1735,10 @@ protected RMNodeLabelsManager createNodeLabelManager() {
// some containers allocated for am1, pending resource should decrease
ContainerId containerId =
ContainerId.newContainerId(am1.getApplicationAttemptId(), 2);
- Assert.assertTrue(rm.waitForState(nm1, containerId,
+ assertTrue(rm.waitForState(nm1, containerId,
RMContainerState.ALLOCATED));
containerId = ContainerId.newContainerId(am1.getApplicationAttemptId(), 3);
- Assert.assertTrue(rm.waitForState(nm2, containerId,
+ assertTrue(rm.waitForState(nm2, containerId,
RMContainerState.ALLOCATED));
checkPendingResource(rm, "a1", 0 * GB, null);
@@ -1768,7 +1772,8 @@ protected RMNodeLabelsManager createNodeLabelManager() {
// Test verifies AM Used resource for LeafQueue when AM ResourceRequest is
// lesser than minimumAllocation
- @Test(timeout = 30000)
+ @Test
+ @Timeout(value = 30)
public void testAMUsedResource() throws Exception {
MockRM rm = setUpMove();
rm.registerNode("127.0.0.1:1234", 4 * GB);
@@ -1778,8 +1783,8 @@ public void testAMUsedResource() throws Exception {
conf.getInt(YarnConfiguration.RM_SCHEDULER_MINIMUM_ALLOCATION_MB,
YarnConfiguration.DEFAULT_RM_SCHEDULER_MINIMUM_ALLOCATION_MB);
int amMemory = 50;
- assertTrue("AM memory is greater than or equal to minAllocation",
- amMemory < minAllocMb);
+ assertTrue(amMemory < minAllocMb,
+ "AM memory is greater than or equal to minAllocation");
Resource minAllocResource = Resource.newInstance(minAllocMb, 1);
String queueName = "a1";
MockRMAppSubmissionData data =
@@ -1792,14 +1797,14 @@ public void testAMUsedResource() throws Exception {
.build();
RMApp rmApp = MockRMAppSubmitter.submit(rm, data);
- assertEquals("RMApp does not containes minimum allocation",
- minAllocResource, rmApp.getAMResourceRequests().get(0).getCapability());
+ assertEquals(minAllocResource, rmApp.getAMResourceRequests().get(0).getCapability(),
+ "RMApp does not containes minimum allocation");
ResourceScheduler scheduler = rm.getRMContext().getScheduler();
LeafQueue queueA =
(LeafQueue) ((CapacityScheduler) scheduler).getQueue(queueName);
- assertEquals("Minimum Resource for AM is incorrect", minAllocResource,
- queueA.getUser("user_0").getResourceUsage().getAMUsed());
+ assertEquals(minAllocResource, queueA.getUser("user_0").getResourceUsage().getAMUsed(),
+ "Minimum Resource for AM is incorrect");
rm.stop();
}
@@ -1846,11 +1851,10 @@ public void testApplicationHeadRoom() throws Exception {
null, Collections. emptyList(), null, null,
NULL_UPDATE_REQUESTS);
- Assert.assertNotNull(attempt);
+ assertNotNull(attempt);
- Assert
- .assertEquals(Resource.newInstance(0, 0), allocate.getResourceLimit());
- Assert.assertEquals(Resource.newInstance(0, 0),
+ assertEquals(Resource.newInstance(0, 0), allocate.getResourceLimit());
+ assertEquals(Resource.newInstance(0, 0),
attemptMetric.getApplicationAttemptHeadroom());
// Add a node to cluster
@@ -1864,8 +1868,8 @@ null, Collections. emptyList(), null, null,
NULL_UPDATE_REQUESTS);
// All resources should be sent as headroom
- Assert.assertEquals(newResource, allocate.getResourceLimit());
- Assert.assertEquals(newResource,
+ assertEquals(newResource, allocate.getResourceLimit());
+ assertEquals(newResource,
attemptMetric.getApplicationAttemptHeadroom());
rm.stop();
@@ -1941,7 +1945,8 @@ public void testHeadRoomCalculationWithDRC() throws Exception {
rm.stop();
}
- @Test(timeout = 60000)
+ @Test
+ @Timeout(value = 60)
public void testAMLimitUsage() throws Exception {
CapacitySchedulerConfiguration config =
@@ -2008,7 +2013,7 @@ protected RMNodeLabelsManager createNodeLabelManager() {
ContainerId.newContainerId(am1.getApplicationAttemptId(), 2);
ContainerId containerId3 =
ContainerId.newContainerId(am1.getApplicationAttemptId(), 3);
- Assert.assertTrue(rm.waitForState(nm1, containerId3,
+ assertTrue(rm.waitForState(nm1, containerId3,
RMContainerState.ALLOCATED));
// Acquire them
am1.allocate(null, null);
@@ -2028,7 +2033,7 @@ protected RMNodeLabelsManager createNodeLabelManager() {
FiCaSchedulerApp app = getFiCaSchedulerApp(rm, app1.getApplicationId());
- Assert.assertEquals(2 * GB,
+ assertEquals(2 * GB,
app.getAppAttemptResourceUsage().getPending().getMemorySize());
checkPendingResource(rm, "a1", 2 * GB, null);
checkPendingResource(rm, "a", 2 * GB, null);
@@ -2045,7 +2050,7 @@ protected RMNodeLabelsManager createNodeLabelManager() {
ContainerUpdateType.INCREASE_RESOURCE,
Resources.createResource(5 * GB), null)));
- Assert.assertEquals(6 * GB,
+ assertEquals(6 * GB,
app.getAppAttemptResourceUsage().getPending().getMemorySize());
checkPendingResource(rm, "a1", 6 * GB, null);
checkPendingResource(rm, "a", 6 * GB, null);
@@ -2066,7 +2071,7 @@ protected RMNodeLabelsManager createNodeLabelManager() {
.newInstance(0, containerId3,
ContainerUpdateType.INCREASE_RESOURCE,
Resources.createResource(2 * GB), null)));
- Assert.assertEquals(4 * GB,
+ assertEquals(4 * GB,
app.getAppAttemptResourceUsage().getPending().getMemorySize());
checkPendingResource(rm, "a1", 4 * GB, null);
checkPendingResource(rm, "a", 4 * GB, null);
@@ -2122,15 +2127,13 @@ public Boolean get() {
// When AM limit is exceeded, 1 applications will be activated.Rest all
// applications will be in pending
- Assert.assertEquals("PendingApplications should be 1", 1,
- queueA.getNumPendingApplications());
- Assert.assertEquals("Active applications should be 1", 1,
- queueA.getNumActiveApplications());
-
- Assert.assertEquals("User PendingApplications should be 1", 1, queueA
- .getUser(userName).getPendingApplications());
- Assert.assertEquals("User Active applications should be 1", 1, queueA
- .getUser(userName).getActiveApplications());
+ assertEquals(1, queueA.getNumPendingApplications(), "PendingApplications should be 1");
+ assertEquals(1, queueA.getNumActiveApplications(), "Active applications should be 1");
+
+ assertEquals(1, queueA.getUser(userName).getPendingApplications(),
+ "User PendingApplications should be 1");
+ assertEquals(1, queueA.getUser(userName).getActiveApplications(),
+ "User Active applications should be 1");
rm.stop();
}
@@ -2141,7 +2144,7 @@ private void sentRMContainerLaunched(MockRM rm, ContainerId containerId) {
rmContainer.handle(
new RMContainerEvent(containerId, RMContainerEventType.LAUNCHED));
} else {
- Assert.fail("Cannot find RMContainer");
+ fail("Cannot find RMContainer");
}
}
@@ -2157,7 +2160,7 @@ public void testCSReservationWithRootUnblocked() throws Exception {
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
ParentQueue q = (ParentQueue) cs.getQueue("p1");
- Assert.assertNotNull(q);
+ assertNotNull(q);
String host = "127.0.0.1";
String host1 = "test";
RMNode node =
@@ -2187,10 +2190,10 @@ public void testCSReservationWithRootUnblocked() throws Exception {
null, null, NULL_UPDATE_REQUESTS);
CapacityScheduler.schedule(cs);
}
- assertEquals("Y1 Used Resource should be 4 GB", 4 * GB,
- cs.getQueue("y1").getUsedResources().getMemorySize());
- assertEquals("P2 Used Resource should be 4 GB", 4 * GB,
- cs.getQueue("p2").getUsedResources().getMemorySize());
+ assertEquals(4 * GB, cs.getQueue("y1").getUsedResources().getMemorySize(),
+ "Y1 Used Resource should be 4 GB");
+ assertEquals(4 * GB, cs.getQueue("p2").getUsedResources().getMemorySize(),
+ "P2 Used Resource should be 4 GB");
for(int i=0; i < 7; i++) {
x1Req = TestUtils.createResourceRequest(
@@ -2200,10 +2203,10 @@ public void testCSReservationWithRootUnblocked() throws Exception {
null, null, NULL_UPDATE_REQUESTS);
CapacityScheduler.schedule(cs);
}
- assertEquals("X1 Used Resource should be 7 GB", 7 * GB,
- cs.getQueue("x1").getUsedResources().getMemorySize());
- assertEquals("P1 Used Resource should be 7 GB", 7 * GB,
- cs.getQueue("p1").getUsedResources().getMemorySize());
+ assertEquals(7 * GB, cs.getQueue("x1").getUsedResources().getMemorySize(),
+ "X1 Used Resource should be 7 GB");
+ assertEquals(7 * GB, cs.getQueue("p1").getUsedResources().getMemorySize(),
+ "P1 Used Resource should be 7 GB");
x2Req = TestUtils.createResourceRequest(
ResourceRequest.ANY, 2 * GB, 1, true, priority, recordFactory);
@@ -2211,10 +2214,10 @@ public void testCSReservationWithRootUnblocked() throws Exception {
Collections.singletonList(x2Req), null, Collections.emptyList(),
null, null, NULL_UPDATE_REQUESTS);
CapacityScheduler.schedule(cs);
- assertEquals("X2 Used Resource should be 0", 0,
- cs.getQueue("x2").getUsedResources().getMemorySize());
- assertEquals("P1 Used Resource should be 7 GB", 7 * GB,
- cs.getQueue("p1").getUsedResources().getMemorySize());
+ assertEquals(0, cs.getQueue("x2").getUsedResources().getMemorySize(),
+ "X2 Used Resource should be 0");
+ assertEquals(7 * GB, cs.getQueue("p1").getUsedResources().getMemorySize(),
+ "P1 Used Resource should be 7 GB");
//this assign should fail
x1Req = TestUtils.createResourceRequest(
ResourceRequest.ANY, 1 * GB, 1, true, priority, recordFactory);
@@ -2222,10 +2225,10 @@ public void testCSReservationWithRootUnblocked() throws Exception {
Collections.singletonList(x1Req), null, Collections.emptyList(),
null, null, NULL_UPDATE_REQUESTS);
CapacityScheduler.schedule(cs);
- assertEquals("X1 Used Resource should be 7 GB", 7 * GB,
- cs.getQueue("x1").getUsedResources().getMemorySize());
- assertEquals("P1 Used Resource should be 7 GB", 7 * GB,
- cs.getQueue("p1").getUsedResources().getMemorySize());
+ assertEquals(7 * GB, cs.getQueue("x1").getUsedResources().getMemorySize(),
+ "X1 Used Resource should be 7 GB");
+ assertEquals(7 * GB, cs.getQueue("p1").getUsedResources().getMemorySize(),
+ "P1 Used Resource should be 7 GB");
//this should get thru
for (int i=0; i < 4; i++) {
@@ -2236,8 +2239,8 @@ public void testCSReservationWithRootUnblocked() throws Exception {
null, null, NULL_UPDATE_REQUESTS);
CapacityScheduler.schedule(cs);
}
- assertEquals("P2 Used Resource should be 8 GB", 8 * GB,
- cs.getQueue("p2").getUsedResources().getMemorySize());
+ assertEquals(8 * GB, cs.getQueue("p2").getUsedResources().getMemorySize(),
+ "P2 Used Resource should be 8 GB");
//Free a container from X1
ContainerId containerId = ContainerId.newContainerId(appAttemptId1, 2);
@@ -2245,14 +2248,14 @@ public void testCSReservationWithRootUnblocked() throws Exception {
//Schedule pending request
CapacityScheduler.schedule(cs);
- assertEquals("X2 Used Resource should be 2 GB", 2 * GB,
- cs.getQueue("x2").getUsedResources().getMemorySize());
- assertEquals("P1 Used Resource should be 8 GB", 8 * GB,
- cs.getQueue("p1").getUsedResources().getMemorySize());
- assertEquals("P2 Used Resource should be 8 GB", 8 * GB,
- cs.getQueue("p2").getUsedResources().getMemorySize());
- assertEquals("Root Used Resource should be 16 GB", 16 * GB,
- cs.getRootQueue().getUsedResources().getMemorySize());
+ assertEquals(2 * GB, cs.getQueue("x2").getUsedResources().getMemorySize(),
+ "X2 Used Resource should be 2 GB");
+ assertEquals(8 * GB, cs.getQueue("p1").getUsedResources().getMemorySize(),
+ "P1 Used Resource should be 8 GB");
+ assertEquals(8 * GB, cs.getQueue("p2").getUsedResources().getMemorySize(),
+ "P2 Used Resource should be 8 GB");
+ assertEquals(16 * GB, cs.getRootQueue().getUsedResources().getMemorySize(),
+ "Root Used Resource should be 16 GB");
rm.stop();
}
@@ -2267,7 +2270,7 @@ public void testCSQueueBlocked() throws Exception {
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
LeafQueue q = (LeafQueue) cs.getQueue("a");
- Assert.assertNotNull(q);
+ assertNotNull(q);
String host = "127.0.0.1";
String host1 = "test";
RMNode node =
@@ -2303,10 +2306,10 @@ public void testCSQueueBlocked() throws Exception {
null, null, NULL_UPDATE_REQUESTS);
CapacityScheduler.schedule(cs);
}
- assertEquals("A Used Resource should be 2 GB", 2 * GB,
- cs.getQueue("a").getUsedResources().getMemorySize());
- assertEquals("B Used Resource should be 13 GB", 13 * GB,
- cs.getQueue("b").getUsedResources().getMemorySize());
+ assertEquals(2 * GB, cs.getQueue("a").getUsedResources().getMemorySize(),
+ "A Used Resource should be 2 GB");
+ assertEquals(13 * GB, cs.getQueue("b").getUsedResources().getMemorySize(),
+ "B Used Resource should be 13 GB");
r1 = TestUtils.createResourceRequest(
ResourceRequest.ANY, 2 * GB, 1, true, priority, recordFactory);
r2 = TestUtils.createResourceRequest(
@@ -2320,10 +2323,10 @@ public void testCSQueueBlocked() throws Exception {
null, Collections.emptyList(), null, null, NULL_UPDATE_REQUESTS);
CapacityScheduler.schedule(cs);
//Check blocked Resource
- assertEquals("A Used Resource should be 2 GB", 2 * GB,
- cs.getQueue("a").getUsedResources().getMemorySize());
- assertEquals("B Used Resource should be 13 GB", 13 * GB,
- cs.getQueue("b").getUsedResources().getMemorySize());
+ assertEquals(2 * GB, cs.getQueue("a").getUsedResources().getMemorySize(),
+ "A Used Resource should be 2 GB");
+ assertEquals(13 * GB, cs.getQueue("b").getUsedResources().getMemorySize(),
+ "B Used Resource should be 13 GB");
ContainerId containerId1 = ContainerId.newContainerId(appAttemptId2, 10);
ContainerId containerId2 =ContainerId.newContainerId(appAttemptId2, 11);
@@ -2336,12 +2339,12 @@ public void testCSQueueBlocked() throws Exception {
CapacityScheduler.schedule(cs);
rm.drainEvents();
- assertEquals("A Used Resource should be 4 GB", 4 * GB,
- cs.getQueue("a").getUsedResources().getMemorySize());
- assertEquals("B Used Resource should be 12 GB", 12 * GB,
- cs.getQueue("b").getUsedResources().getMemorySize());
- assertEquals("Used Resource on Root should be 16 GB", 16 * GB,
- cs.getRootQueue().getUsedResources().getMemorySize());
+ assertEquals(4 * GB, cs.getQueue("a").getUsedResources().getMemorySize(),
+ "A Used Resource should be 4 GB");
+ assertEquals(12 * GB, cs.getQueue("b").getUsedResources().getMemorySize(),
+ "B Used Resource should be 12 GB");
+ assertEquals(16 * GB, cs.getRootQueue().getUsedResources().getMemorySize(),
+ "Used Resource on Root should be 16 GB");
rm.stop();
}
@@ -2402,13 +2405,14 @@ protected RMNodeLabelsManager createNodeLabelManager() {
// We should get one node-local allocation, one rack-local allocation
// And one off-switch allocation
- Assert.assertArrayEquals(new int[][] { { 1, 0, 0 }, { 0, 1, 0 }, { 0, 0, 1 } },
+ assertArrayEquals(new int[][]{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}},
attemptMetrics.getLocalityStatistics());
rm.stop();
}
- @Test(timeout = 30000)
+ @Test
+ @Timeout(value = 30)
public void testAMLimitDouble() throws Exception {
CapacitySchedulerConfiguration config =
new CapacitySchedulerConfiguration();
@@ -2431,8 +2435,8 @@ public void testAMLimitDouble() throws Exception {
LeafQueue queueA =
(LeafQueue) ((CapacityScheduler) scheduler).getQueue("default");
Resource amResourceLimit = queueA.getAMResourceLimit();
- Assert.assertEquals(4096, amResourceLimit.getMemorySize());
- Assert.assertEquals(4, amResourceLimit.getVirtualCores());
+ assertEquals(4096, amResourceLimit.getMemorySize());
+ assertEquals(4, amResourceLimit.getVirtualCores());
rm.stop();
}
@@ -2475,84 +2479,85 @@ public void testQueueMappingWithCurrentUserQueueMappingForaGroup() throws
rm.stop();
}
- @Test(timeout = 30000)
+ @Test
+ @Timeout(value = 30)
public void testcheckAndGetApplicationLifetime() throws Exception {
long maxLifetime = 10;
long defaultLifetime = 5;
// positive integer value
CapacityScheduler cs = setUpCSQueue(maxLifetime, defaultLifetime);
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.checkAndGetApplicationLifetime("default", 100, null));
- Assert.assertEquals(9, cs.checkAndGetApplicationLifetime("default", 9, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(9, cs.checkAndGetApplicationLifetime("default", 9, null));
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", -1, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", 0, null));
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.getMaximumApplicationLifetime("default"));
maxLifetime = -1;
defaultLifetime = -1;
// test for default values
cs = setUpCSQueue(maxLifetime, defaultLifetime);
- Assert.assertEquals(100, cs.checkAndGetApplicationLifetime("default", 100, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(100, cs.checkAndGetApplicationLifetime("default", 100, null));
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", -1, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", 0, null));
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.getMaximumApplicationLifetime("default"));
maxLifetime = 10;
defaultLifetime = 10;
cs = setUpCSQueue(maxLifetime, defaultLifetime);
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.checkAndGetApplicationLifetime("default", 100, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", -1, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", 0, null));
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.getMaximumApplicationLifetime("default"));
maxLifetime = 0;
defaultLifetime = 0;
cs = setUpCSQueue(maxLifetime, defaultLifetime);
- Assert.assertEquals(100, cs.checkAndGetApplicationLifetime("default", 100, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(100, cs.checkAndGetApplicationLifetime("default", 100, null));
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", -1, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", 0, null));
maxLifetime = 10;
defaultLifetime = -1;
cs = setUpCSQueue(maxLifetime, defaultLifetime);
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.checkAndGetApplicationLifetime("default", 100, null));
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.checkAndGetApplicationLifetime("default", -1, null));
- Assert.assertEquals(maxLifetime,
+ assertEquals(maxLifetime,
cs.checkAndGetApplicationLifetime("default", 0, null));
maxLifetime = 5;
defaultLifetime = 10;
try {
setUpCSQueue(maxLifetime, defaultLifetime);
- Assert.fail("Expected to fails since maxLifetime < defaultLifetime.");
+ fail("Expected to fails since maxLifetime < defaultLifetime.");
} catch (ServiceStateException sse) {
Throwable rootCause = sse.getCause().getCause();
- Assert.assertTrue(
+ assertTrue(
rootCause.getMessage().contains("can't exceed maximum lifetime"));
}
maxLifetime = -1;
defaultLifetime = 10;
cs = setUpCSQueue(maxLifetime, defaultLifetime);
- Assert.assertEquals(100,
+ assertEquals(100,
cs.checkAndGetApplicationLifetime("default", 100, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", -1, null));
- Assert.assertEquals(defaultLifetime,
+ assertEquals(defaultLifetime,
cs.checkAndGetApplicationLifetime("default", 0, null));
}
@@ -2577,7 +2582,8 @@ private CapacityScheduler setUpCSQueue(long maxLifetime,
return cs;
}
- @Test (timeout = 60000)
+ @Test
+ @Timeout(value = 60)
public void testClearRequestsBeforeApplyTheProposal()
throws Exception {
// init RM & NMs & Nodes
@@ -2597,8 +2603,8 @@ public void testClearRequestsBeforeApplyTheProposal()
// spy capacity scheduler to handle CapacityScheduler#apply
final Priority priority = Priority.newInstance(1);
final CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler();
- final CapacityScheduler spyCs = Mockito.spy(cs);
- Mockito.doAnswer(new Answer