private void addContainerToSchedulerNode(NodeId nodeId, RMContainer container, boolean isReserved) { SchedulerNode node = nodeIdToSchedulerNodes.get(nodeId); assert node != null; if (isReserved) { when(node.getReservedContainer()).thenReturn(container); } else { node.getCopiedListOfRunningContainers().add(container); Resources.subtractFrom(node.getUnallocatedResource(), container.getAllocatedResource()); } }
private void setAllAMContainersOnNode(NodeId nodeId) { SchedulerNode node = scheduler.getNodeTracker().getNode(nodeId); for (RMContainer container: node.getCopiedListOfRunningContainers()) { ((RMContainerImpl) container).setAMContainer(true); } }
private int checkNumNonAMContainersOnNode(CapacityScheduler cs, MockNM nm) { SchedulerNode node = cs.getNode(nm.getNodeId()); int nonAMContainer = 0; for (RMContainer c : node.getCopiedListOfRunningContainers()) { if (!c.isAMContainer()) { nonAMContainer++; } } return nonAMContainer; }
public Boolean answer(InvocationOnMock invocation) throws Exception { ResourceCommitRequest request = (ResourceCommitRequest) invocation.getArguments()[1]; if (request.getFirstAllocatedOrReservedContainer() .getAllocateFromReservedContainer() != null) { for (int i=0; i<3; i++) { cs.tryCommit((Resource) invocation.getArguments()[0], (ResourceCommitRequest) invocation.getArguments()[1], (Boolean) invocation.getArguments()[2]); } Assert.assertEquals(2, sn1.getCopiedListOfRunningContainers().size()); Assert.assertEquals(5 * GB, sn1.getUnallocatedResource().getMemorySize()); } return true; } }).when(spyCs).tryCommit(Mockito.any(Resource.class),
sn2.getCopiedListOfRunningContainers().get(0); cs.completedContainer(killableContainer, ContainerStatus .newInstance(killableContainer.getContainerId(), ContainerExitStatus.KILLED_BY_RESOURCEMANAGER), RMContainerEventType.KILL); Assert.assertEquals(0, sn2.getCopiedListOfRunningContainers().size()); int waitTime = 1000; while (waitTime > 0 && sn2.getCopiedListOfRunningContainers().size() == 0) { waitTime -= 10; Thread.sleep(10); Assert.assertEquals(1, sn2.getCopiedListOfRunningContainers().size()); Assert.assertNull(sn1.getReservedContainer());
SchedulerNode node1 = cs.getSchedulerNode(NodeId.newInstance("n1", 1)); Assert.assertEquals(100, node1.getTotalResource().getMemorySize()); Assert.assertEquals(100, node1.getCopiedListOfRunningContainers().size()); Assert.assertNull(node1.getReservedContainer()); Assert.assertEquals(50, node2.getCopiedListOfRunningContainers().size()); Assert.assertNotNull(node2.getReservedContainer()); Assert.assertEquals(100, node3.getCopiedListOfRunningContainers().size()); Assert.assertNull(node3.getReservedContainer());
SchedulerNode node = scheduler.getNodeTracker().getNode(node1.getNodeID()); ApplicationAttemptId greedyAppAttemptId = node.getCopiedListOfRunningContainers().get(0) .getApplicationAttemptId(); for (RMContainer container : node.getCopiedListOfRunningContainers()) { assert (container.isAMContainer()); assert (container.getApplicationAttemptId().equals(greedyAppAttemptId));
RMAppAttemptState.KILLED, true)); while (sn1.getCopiedListOfRunningContainers().size() == 1) { Thread.sleep(100); while (sn1.getCopiedListOfRunningContainers().size() == 0) { nm1.nodeHeartbeat(true); Thread.sleep(100);
for (RMContainer rmContainer : sn1.getCopiedListOfRunningContainers()) { if (rmContainer.getContainerId().getContainerId() != 1) { cs.completedContainer(rmContainer, ContainerStatus