diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/MockRM.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/MockRM.java index 4f5fdeb..5d37d48 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/MockRM.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/MockRM.java @@ -386,7 +386,15 @@ public SubmitApplicationResponse run() { if (waitForAccepted) { waitForState(appId, RMAppState.ACCEPTED); } - return getRMContext().getRMApps().get(appId); + RMApp rmApp = getRMContext().getRMApps().get(appId); + + // unmanaged AM won't go to RMAppAttemptState.SCHEDULED. + if (waitForAccepted && !unmanaged) { + waitForState(rmApp.getCurrentAppAttempt().getAppAttemptId(), + RMAppAttemptState.SCHEDULED); + } + + return rmApp; } public MockNM registerNode(String nodeIdStr, int memory) throws Exception {