YARN-7360. TestRM.testNMTokenSentForNormalContainer() should be scheduler agnostic.

This commit is contained in:
Haibo Chen 2017-11-06 15:45:37 -08:00
parent cbc632d9ab
commit 8f214dc4f8

View File

@ -21,7 +21,7 @@
import com.google.common.base.Supplier; import com.google.common.base.Supplier;
import org.apache.hadoop.test.GenericTestUtils; import org.apache.hadoop.test.GenericTestUtils;
import org.apache.hadoop.yarn.event.DrainDispatcher; import org.apache.hadoop.yarn.event.DrainDispatcher;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairSchedulerConfiguration; import org.apache.hadoop.yarn.server.resourcemanager.scheduler.AbstractYarnScheduler;
import org.junit.Before; import org.junit.Before;
import static org.mockito.Matchers.argThat; import static org.mockito.Matchers.argThat;
import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doNothing;
@ -73,7 +73,6 @@
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptEventType; import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptEventType;
import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState;
import org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNode; import org.apache.hadoop.yarn.server.resourcemanager.rmnode.RMNode;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler;
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration; import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration;
import org.apache.hadoop.yarn.server.resourcemanager.security.NMTokenSecretManagerInRM; import org.apache.hadoop.yarn.server.resourcemanager.security.NMTokenSecretManagerInRM;
import org.apache.log4j.Level; import org.apache.log4j.Level;
@ -205,8 +204,6 @@ public void testAppOnMultiNode() throws Exception {
// corresponding NM Token. // corresponding NM Token.
@Test (timeout = 20000) @Test (timeout = 20000)
public void testNMTokenSentForNormalContainer() throws Exception { public void testNMTokenSentForNormalContainer() throws Exception {
conf.set(YarnConfiguration.RM_SCHEDULER,
CapacityScheduler.class.getCanonicalName());
MockRM rm = new MockRM(conf); MockRM rm = new MockRM(conf);
rm.start(); rm.start();
MockNM nm1 = rm.registerNode("h1:1234", 5120); MockNM nm1 = rm.registerNode("h1:1234", 5120);
@ -215,8 +212,10 @@ public void testNMTokenSentForNormalContainer() throws Exception {
// Call getNewContainerId to increase container Id so that the AM container // Call getNewContainerId to increase container Id so that the AM container
// Id doesn't equal to one. // Id doesn't equal to one.
CapacityScheduler cs = (CapacityScheduler) rm.getResourceScheduler(); AbstractYarnScheduler scheduler = (AbstractYarnScheduler)
cs.getApplicationAttempt(attempt.getAppAttemptId()).getNewContainerId(); rm.getResourceScheduler();
scheduler.getApplicationAttempt(attempt.getAppAttemptId()).
getNewContainerId();
MockAM am = MockRM.launchAM(app, rm, nm1); MockAM am = MockRM.launchAM(app, rm, nm1);
// am container Id not equal to 1. // am container Id not equal to 1.