Pārlūkot izejas kodu

YARN-6189: Improve application status log message when RM restarted when
app is in NEW state. Contributed by Junping Du

(cherry picked from commit e0bb867c3fa638c9f689ee0b044b400481cf02b5)

Xuan 8 gadi atpakaļ
vecāks
revīzija
95bd3c3d55

+ 10 - 5
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/ClientRMService.java

@@ -357,7 +357,8 @@ public class ClientRMService extends AbstractService implements
       // If the RM doesn't have the application, throw
       // ApplicationNotFoundException and let client to handle.
       throw new ApplicationNotFoundException("Application with id '"
-          + applicationId + "' doesn't exist in RM.");
+          + applicationId + "' doesn't exist in RM. Please check "
+          + "that the job submission was successful.");
     }
 
     boolean allowAccess = checkAccess(callerUGI, application.getUser(),
@@ -391,7 +392,8 @@ public class ClientRMService extends AbstractService implements
       // ApplicationNotFoundException and let client to handle.
       throw new ApplicationNotFoundException("Application with id '"
           + request.getApplicationAttemptId().getApplicationId()
-          + "' doesn't exist in RM.");
+          + "' doesn't exist in RM. Please check that the job "
+          + "submission was successful.");
     }
 
     boolean allowAccess = checkAccess(callerUGI, application.getUser(),
@@ -430,7 +432,8 @@ public class ClientRMService extends AbstractService implements
       // If the RM doesn't have the application, throw
       // ApplicationNotFoundException and let client to handle.
       throw new ApplicationNotFoundException("Application with id '" + appId
-          + "' doesn't exist in RM.");
+          + "' doesn't exist in RM. Please check that the job submission "
+          + "was successful.");
     }
     boolean allowAccess = checkAccess(callerUGI, application.getUser(),
         ApplicationAccessType.VIEW_APP, application);
@@ -478,7 +481,8 @@ public class ClientRMService extends AbstractService implements
       // If the RM doesn't have the application, throw
       // ApplicationNotFoundException and let client to handle.
       throw new ApplicationNotFoundException("Application with id '" + appId
-          + "' doesn't exist in RM.");
+          + "' doesn't exist in RM. Please check that the job submission "
+          + "was successful.");
     }
     boolean allowAccess = checkAccess(callerUGI, application.getUser(),
         ApplicationAccessType.VIEW_APP, application);
@@ -528,7 +532,8 @@ public class ClientRMService extends AbstractService implements
       // If the RM doesn't have the application, throw
       // ApplicationNotFoundException and let client to handle.
       throw new ApplicationNotFoundException("Application with id '" + appId
-          + "' doesn't exist in RM.");
+          + "' doesn't exist in RM. Please check that the job submission "
+          + "was successful.");
     }
     boolean allowAccess = checkAccess(callerUGI, application.getUser(),
         ApplicationAccessType.VIEW_APP, application);

+ 2 - 1
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMService.java

@@ -277,7 +277,8 @@ public class TestClientRMService {
     } catch (ApplicationNotFoundException ex) {
       Assert.assertEquals(ex.getMessage(),
           "Application with id '" + request.getApplicationId()
-              + "' doesn't exist in RM.");
+              + "' doesn't exist in RM. Please check that the "
+              + "job submission was successful.");
     }
   }