rm.drainEvents(); rm.drainEvents(); rm.drainEvents();
rm.drainEvents(); rm.drainEvents(); rm.drainEvents();
rm.drainEvents(); MockNM amNodeManager = rm.registerNode("amNM:1234", 2048); amNodeManager.nodeHeartbeat(true); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals(1, allocator.getJobUpdatedNodeEvents().size()); Assert.assertEquals(3, allocator.getJobUpdatedNodeEvents().get(0).getUpdatedNodes().size()); rm.drainEvents(); Assert.assertEquals(1, assigned.size()); Assert.assertEquals(nm1.getNodeId(), assigned.get(0).getContainer().getNodeId()); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals(0, assigned.size()); rm.drainEvents(); Assert.assertEquals(0, assigned.size());
rm.drainEvents(); rm.drainEvents(); final ApplicationId appId = app.getApplicationId(); rm.sendAMLaunched(appAttemptId); rm.drainEvents();
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); MockNM nodeManager2 = rm.registerNode("h2:1234", 10240); MockNM nodeManager3 = rm.registerNode("h3:1234", 10240); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); assertBlacklistAdditionsAndRemovals(2, 0, rm); rm.drainEvents(); rm.drainEvents(); assertBlacklistAdditionsAndRemovals(0, 0, rm); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); rm.drainEvents(); assigned = allocator.schedule(); rm.drainEvents(); assertBlacklistAdditionsAndRemovals(0, 0, rm);
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); amNodeManager.nodeHeartbeat(true); rm.drainEvents(); allocator.schedule(); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals(0.05f, job.getProgress(), 0.001f); Assert.assertEquals(0.05f, rmApp.getProgress(), 0.001f); finishNextNTasks(rmDispatcher, amNodeManager, mrApp, it, 1); allocator.schedule(); rm.drainEvents(); Assert.assertEquals(0.095f, job.getProgress(), 0.001f); Assert.assertEquals(0.095f, rmApp.getProgress(), 0.001f); rm.drainEvents(); Assert.assertEquals(0.41f, job.getProgress(), 0.001f); Assert.assertEquals(0.41f, rmApp.getProgress(), 0.001f); rm.drainEvents(); amNodeManager.nodeHeartbeat(true); rm.drainEvents();
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents();
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); MockNM nodeManager2 = rm.registerNode("h2:1234", 10240); MockNM nodeManager3 = rm.registerNode("h3:1234", 10240); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); Assert.assertEquals(4, rm.getMyFifoScheduler().lastAsk.size()); rm.drainEvents(); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); Assert.assertEquals(3, rm.getMyFifoScheduler().lastAsk.size()); nodeManager2.nodeHeartbeat(true); // Node heartbeat nodeManager3.nodeHeartbeat(true); // Node heartbeat rm.drainEvents(); rm.drainEvents(); Assert.assertEquals(0, rm.getMyFifoScheduler().lastAsk.size()); checkAssignments(new ContainerRequestEvent[] {event1, event2, event3}, rm.drainEvents(); Assert.assertEquals(5, rm.getMyFifoScheduler().lastAsk.size());
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.registerNode("h2:1234", 10240); // wont heartbeat on node local node MockNM nodeManager3 = rm.registerNode("h3:1234", 1536); // assign 1 map rm.drainEvents(); rm.drainEvents(); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); rm.drainEvents(); rm.drainEvents(); checkAssignments(new ContainerRequestEvent[] {event1, event2, event3}, assigned, false);
rm.drainEvents(); rm.drainEvents(); rm.drainEvents();
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); amNodeManager.nodeHeartbeat(true); rm.drainEvents(); allocator.schedule(); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals(0.05f, job.getProgress(), 0.001f); Assert.assertEquals(0.05f, rmApp.getProgress(), 0.001f); rm.drainEvents(); Assert.assertEquals(0.14f, job.getProgress(), 0.001f); Assert.assertEquals(0.14f, rmApp.getProgress(), 0.001f); rm.drainEvents(); Assert.assertEquals(0.59f, job.getProgress(), 0.001f); Assert.assertEquals(0.59f, rmApp.getProgress(), 0.001f); rm.drainEvents(); Assert.assertEquals(0.95f, job.getProgress(), 0.001f); Assert.assertEquals(0.95f, rmApp.getProgress(), 0.001f);
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); MockNM nodeManager2 = rm.registerNode("h2:1234", 10240); MockNM nodeManager3 = rm.registerNode("h3:1234", 10240); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); nodeManager2.nodeHeartbeat(true); // Node heartbeat nodeManager3.nodeHeartbeat(true); // Node heartbeat rm.drainEvents(); rm.drainEvents(); checkAssignments(new ContainerRequestEvent[] {event1, event3}, assigned, false);
rm.drainEvents(); rm.drainEvents(); rm.drainEvents();
rm.drainEvents(); rm.drainEvents(); rm.drainEvents(); MockNM nodeManager2 = rm.registerNode("h2:1234", 10240); MockNM nodeManager3 = rm.registerNode("h3:1234", 10240); rm.drainEvents(); rm.drainEvents(); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); nodeManager2.nodeHeartbeat(true); // Node heartbeat nodeManager3.nodeHeartbeat(true); // Node heartbeat rm.drainEvents(); rm.drainEvents(); checkAssignments(new ContainerRequestEvent[] {event1, event2}, assigned, false);
rm.start(); final RMApp app = rm.submitApp(1024); rm.drainEvents(); rm.drainEvents(); final ApplicationAttemptId appAttemptId = app.getCurrentAppAttempt() .getAppAttemptId(); rm.sendAMLaunched(appAttemptId); rm.drainEvents(); final JobId jobId = MRBuilderUtils .newJobId(appAttemptId.getApplicationId(), 0); appAttemptId, mockJob, SystemClock.getInstance()); rm.drainEvents(); locations, false, true)); for (int i = 0; i < 1;) { rm.drainEvents(); i += allocator.schedule().size(); nm.nodeHeartbeat(true); locations, true, false)); while (allocator.getTaskAttemptKillEvents().size() == 0) { rm.drainEvents(); allocator.schedule().size(); nm.nodeHeartbeat(true);
rm1.drainEvents(); rm1.drainEvents(); rm1.drainEvents(); Assert.assertTrue(e.getMessage().contains("Could not contact RM after")); rm1.drainEvents(); Assert.assertEquals("Should Have 1 Job Event", 1, allocator.jobEvents.size());
rm.drainEvents(); rm.drainEvents(); rm.drainEvents();
@Test(expected = RMContainerAllocationException.class) public void testAttemptNotFoundCausesRMCommunicatorException() throws Exception { Configuration conf = new Configuration(); MyResourceManager rm = new MyResourceManager(conf); rm.start(); // Submit the application RMApp app = rm.submitApp(1024); rm.drainEvents(); MockNM amNodeManager = rm.registerNode("amNM:1234", 2048); amNodeManager.nodeHeartbeat(true); rm.drainEvents(); ApplicationAttemptId appAttemptId = app.getCurrentAppAttempt() .getAppAttemptId(); rm.sendAMLaunched(appAttemptId); rm.drainEvents(); JobId jobId = MRBuilderUtils.newJobId(appAttemptId.getApplicationId(), 0); Job mockJob = mock(Job.class); when(mockJob.getReport()).thenReturn( MRBuilderUtils.newJobReport(jobId, "job", "user", JobState.RUNNING, 0, 0, 0, 0, 0, 0, 0, "jobfile", null, false, "")); MyContainerAllocator allocator = new MyContainerAllocator(rm, conf, appAttemptId, mockJob); // Now kill the application rm.killApp(app.getApplicationId()); rm.waitForState(app.getApplicationId(), RMAppState.KILLED); allocator.schedule(); }
private List<TaskAttemptContainerAssignedEvent> getContainerOnHost(JobId jobId, int taskAttemptId, int memory, String[] hosts, MockNM mockNM, MyContainerAllocator allocator, int expectedAdditions1, int expectedRemovals1, int expectedAdditions2, int expectedRemovals2, MyResourceManager rm) throws Exception { ContainerRequestEvent reqEvent = ContainerRequestCreator.createRequest(jobId, taskAttemptId, Resource.newInstance(memory, 1), hosts); allocator.sendRequest(reqEvent); // Send the request to the RM List<TaskAttemptContainerAssignedEvent> assigned = allocator.schedule(); rm.drainEvents(); assertBlacklistAdditionsAndRemovals( expectedAdditions1, expectedRemovals1, rm); Assert.assertEquals("No of assignments must be 0", 0, assigned.size()); // Heartbeat from the required nodeManager mockNM.nodeHeartbeat(true); rm.drainEvents(); assigned = allocator.schedule(); rm.drainEvents(); assertBlacklistAdditionsAndRemovals( expectedAdditions2, expectedRemovals2, rm); return assigned; }
private MockNM registerNodeManager(int i, MyResourceManager rm) throws Exception { MockNM nm = rm.registerNode("h" + (i + 1) + ":1234", 10240); rm.drainEvents(); return nm; }