ソースを参照

YARN-5131. Distributed shell AM fails when extra container arrives during finishing. Contributed by Wangda Tan.
(cherry picked from commit 48c931331cc43970e31866732f9ac82ee806ee03)

Junping Du 9 年 前
コミット
2e42bafdc8

+ 2 - 2
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/main/java/org/apache/hadoop/yarn/applications/distributedshell/ApplicationMaster.java

@@ -745,8 +745,8 @@ public class ApplicationMaster {
     FinalApplicationStatus appStatus;
     String appMessage = null;
     boolean success = true;
-    if (numFailedContainers.get() == 0 && 
-        numCompletedContainers.get() == numTotalContainers) {
+    if (numCompletedContainers.get() - numFailedContainers.get()
+        >= numTotalContainers) {
       appStatus = FinalApplicationStatus.SUCCEEDED;
     } else {
       appStatus = FinalApplicationStatus.FAILED;