hadoop git commit: YARN-3230. Clarify application states on the web UI. (Jian He via wangda)
Repository: hadoop Updated Branches: refs/heads/branch-2.6.1 bb1b87f3b -> 8b5bdac98 YARN-3230. Clarify application states on the web UI. (Jian He via wangda) (cherry picked from commit ce5bf927c3d9f212798de1bf8706e5e9def235a1) (cherry picked from commit a1963968d2a9589fcefaab0d63feeb68c07f4d06) (cherry picked from commit 591e261ccf1fb5dd25e87665c8d5c0341ff6fb24) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/8b5bdac9 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/8b5bdac9 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/8b5bdac9 Branch: refs/heads/branch-2.6.1 Commit: 8b5bdac98eddad516f7faa74596b6293d50a17a7 Parents: bb1b87f Author: Wangda Tan Authored: Fri Feb 20 10:39:28 2015 -0800 Committer: Vinod Kumar Vavilapalli Committed: Tue Sep 1 14:34:07 2015 -0700 -- hadoop-yarn-project/CHANGES.txt | 2 ++ .../server/resourcemanager/webapp/AppBlock.java | 33 ++-- .../resourcemanager/webapp/AppsBlock.java | 6 ++-- .../resourcemanager/webapp/dao/AppInfo.java | 8 ++--- 4 files changed, 41 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/8b5bdac9/hadoop-yarn-project/CHANGES.txt -- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 1d0518e..cd70bcb 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -8,6 +8,8 @@ Release 2.6.1 - UNRELEASED IMPROVEMENTS +YARN-3230. Clarify application states on the web UI. (Jian He via wangda) + OPTIMIZATIONS BUG FIXES http://git-wip-us.apache.org/repos/asf/hadoop/blob/8b5bdac9/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java index 1856d75..c2b376e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java @@ -32,8 +32,10 @@ import org.apache.hadoop.security.UserGroupInformation; import org.apache.hadoop.util.StringUtils; import org.apache.hadoop.yarn.api.records.ApplicationAccessType; import org.apache.hadoop.yarn.api.records.ApplicationId; +import org.apache.hadoop.yarn.api.records.FinalApplicationStatus; import org.apache.hadoop.yarn.api.records.QueueACL; import org.apache.hadoop.yarn.api.records.Resource; +import org.apache.hadoop.yarn.api.records.YarnApplicationState; import org.apache.hadoop.yarn.server.resourcemanager.RMContext; import org.apache.hadoop.yarn.server.resourcemanager.ResourceManager; import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp; @@ -131,8 +133,9 @@ public class AppBlock extends HtmlBlock { ._("Name:", app.getName()) ._("Application Type:", app.getApplicationType()) ._("Application Tags:", app.getApplicationTags()) -._("State:", app.getState()) -._("FinalStatus:", app.getFinalStatus()) +._("YarnApplicationState:", clarifyAppState(app.getState())) +._("FinalStatus reported by AM:", + clairfyAppFinalStatus(app.getFinalStatus())) ._("Started:", Times.format(app.getStartTime())) ._("Elapsed:", StringUtils.formatTime(Times.elapsed(app.getStartTime(), @@ -198,4 +201,30 @@ public class AppBlock extends HtmlBlock { table._(); div._(); } + + private String clarifyAppState(YarnApplicationState state) { +String ret = state.toString(); +switch (state) { +case NEW: + return ret + ": waiting for application to be initialized"; +case NEW_SAVING: + return ret + ": waiting for application to be persisted in state-store."; +case SUBMITTED: + return ret + ": waiting for application to be accepted by scheduler."; +case ACCEPTED: + return ret + ": waiting for AM container to be allocated, launched and" + + " register with RM."; +case RUNNING: + return ret + ": AM has registered with RM and started running."; +default: + return ret; +} + } + + private String clairfyAppFinalStatus(F
[13/50] [abbrv] hadoop git commit: YARN-3230. Clarify application states on the web UI. (Jian He via wangda)
YARN-3230. Clarify application states on the web UI. (Jian He via wangda) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ce5bf927 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ce5bf927 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ce5bf927 Branch: refs/heads/YARN-2928 Commit: ce5bf927c3d9f212798de1bf8706e5e9def235a1 Parents: c33ae27 Author: Wangda Tan Authored: Fri Feb 20 10:39:28 2015 -0800 Committer: Wangda Tan Committed: Fri Feb 20 10:39:28 2015 -0800 -- hadoop-yarn-project/CHANGES.txt | 2 ++ .../server/resourcemanager/webapp/AppBlock.java | 33 ++-- .../resourcemanager/webapp/AppsBlock.java | 6 ++-- .../resourcemanager/webapp/dao/AppInfo.java | 8 ++--- 4 files changed, 41 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce5bf927/hadoop-yarn-project/CHANGES.txt -- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index e71da2d..c028043 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -310,6 +310,8 @@ Release 2.7.0 - UNRELEASED YARN-2799. Cleanup TestLogAggregationService based on the change in YARN-90. (Zhihai Xu via junping_du) +YARN-3230. Clarify application states on the web UI. (Jian He via wangda) + OPTIMIZATIONS YARN-2990. FairScheduler's delay-scheduling always waits for node-local and http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce5bf927/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java index 1856d75..c2b376e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java @@ -32,8 +32,10 @@ import org.apache.hadoop.security.UserGroupInformation; import org.apache.hadoop.util.StringUtils; import org.apache.hadoop.yarn.api.records.ApplicationAccessType; import org.apache.hadoop.yarn.api.records.ApplicationId; +import org.apache.hadoop.yarn.api.records.FinalApplicationStatus; import org.apache.hadoop.yarn.api.records.QueueACL; import org.apache.hadoop.yarn.api.records.Resource; +import org.apache.hadoop.yarn.api.records.YarnApplicationState; import org.apache.hadoop.yarn.server.resourcemanager.RMContext; import org.apache.hadoop.yarn.server.resourcemanager.ResourceManager; import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp; @@ -131,8 +133,9 @@ public class AppBlock extends HtmlBlock { ._("Name:", app.getName()) ._("Application Type:", app.getApplicationType()) ._("Application Tags:", app.getApplicationTags()) -._("State:", app.getState()) -._("FinalStatus:", app.getFinalStatus()) +._("YarnApplicationState:", clarifyAppState(app.getState())) +._("FinalStatus reported by AM:", + clairfyAppFinalStatus(app.getFinalStatus())) ._("Started:", Times.format(app.getStartTime())) ._("Elapsed:", StringUtils.formatTime(Times.elapsed(app.getStartTime(), @@ -198,4 +201,30 @@ public class AppBlock extends HtmlBlock { table._(); div._(); } + + private String clarifyAppState(YarnApplicationState state) { +String ret = state.toString(); +switch (state) { +case NEW: + return ret + ": waiting for application to be initialized"; +case NEW_SAVING: + return ret + ": waiting for application to be persisted in state-store."; +case SUBMITTED: + return ret + ": waiting for application to be accepted by scheduler."; +case ACCEPTED: + return ret + ": waiting for AM container to be allocated, launched and" + + " register with RM."; +case RUNNING: + return ret + ": AM has registered with RM and started running."; +default: + return ret; +} + } + + private String clairfyAppFinalStatus(FinalApplicationStatus status) { +if (status == FinalApplicationStatus.UNDEFINED) { + return "Application has not completed yet."; +
[27/52] [abbrv] hadoop git commit: YARN-3230. Clarify application states on the web UI. (Jian He via wangda)
YARN-3230. Clarify application states on the web UI. (Jian He via wangda) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ce5bf927 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ce5bf927 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ce5bf927 Branch: refs/heads/HDFS-7285 Commit: ce5bf927c3d9f212798de1bf8706e5e9def235a1 Parents: c33ae27 Author: Wangda Tan Authored: Fri Feb 20 10:39:28 2015 -0800 Committer: Wangda Tan Committed: Fri Feb 20 10:39:28 2015 -0800 -- hadoop-yarn-project/CHANGES.txt | 2 ++ .../server/resourcemanager/webapp/AppBlock.java | 33 ++-- .../resourcemanager/webapp/AppsBlock.java | 6 ++-- .../resourcemanager/webapp/dao/AppInfo.java | 8 ++--- 4 files changed, 41 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce5bf927/hadoop-yarn-project/CHANGES.txt -- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index e71da2d..c028043 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -310,6 +310,8 @@ Release 2.7.0 - UNRELEASED YARN-2799. Cleanup TestLogAggregationService based on the change in YARN-90. (Zhihai Xu via junping_du) +YARN-3230. Clarify application states on the web UI. (Jian He via wangda) + OPTIMIZATIONS YARN-2990. FairScheduler's delay-scheduling always waits for node-local and http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce5bf927/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java index 1856d75..c2b376e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java @@ -32,8 +32,10 @@ import org.apache.hadoop.security.UserGroupInformation; import org.apache.hadoop.util.StringUtils; import org.apache.hadoop.yarn.api.records.ApplicationAccessType; import org.apache.hadoop.yarn.api.records.ApplicationId; +import org.apache.hadoop.yarn.api.records.FinalApplicationStatus; import org.apache.hadoop.yarn.api.records.QueueACL; import org.apache.hadoop.yarn.api.records.Resource; +import org.apache.hadoop.yarn.api.records.YarnApplicationState; import org.apache.hadoop.yarn.server.resourcemanager.RMContext; import org.apache.hadoop.yarn.server.resourcemanager.ResourceManager; import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp; @@ -131,8 +133,9 @@ public class AppBlock extends HtmlBlock { ._("Name:", app.getName()) ._("Application Type:", app.getApplicationType()) ._("Application Tags:", app.getApplicationTags()) -._("State:", app.getState()) -._("FinalStatus:", app.getFinalStatus()) +._("YarnApplicationState:", clarifyAppState(app.getState())) +._("FinalStatus reported by AM:", + clairfyAppFinalStatus(app.getFinalStatus())) ._("Started:", Times.format(app.getStartTime())) ._("Elapsed:", StringUtils.formatTime(Times.elapsed(app.getStartTime(), @@ -198,4 +201,30 @@ public class AppBlock extends HtmlBlock { table._(); div._(); } + + private String clarifyAppState(YarnApplicationState state) { +String ret = state.toString(); +switch (state) { +case NEW: + return ret + ": waiting for application to be initialized"; +case NEW_SAVING: + return ret + ": waiting for application to be persisted in state-store."; +case SUBMITTED: + return ret + ": waiting for application to be accepted by scheduler."; +case ACCEPTED: + return ret + ": waiting for AM container to be allocated, launched and" + + " register with RM."; +case RUNNING: + return ret + ": AM has registered with RM and started running."; +default: + return ret; +} + } + + private String clairfyAppFinalStatus(FinalApplicationStatus status) { +if (status == FinalApplicationStatus.UNDEFINED) { + return "Application has not completed yet."; +
hadoop git commit: YARN-3230. Clarify application states on the web UI. (Jian He via wangda)
Repository: hadoop Updated Branches: refs/heads/branch-2 4a87a61fe -> a1963968d YARN-3230. Clarify application states on the web UI. (Jian He via wangda) (cherry picked from commit ce5bf927c3d9f212798de1bf8706e5e9def235a1) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/a1963968 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/a1963968 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/a1963968 Branch: refs/heads/branch-2 Commit: a1963968d2a9589fcefaab0d63feeb68c07f4d06 Parents: 4a87a61 Author: Wangda Tan Authored: Fri Feb 20 10:39:28 2015 -0800 Committer: Wangda Tan Committed: Fri Feb 20 10:40:04 2015 -0800 -- hadoop-yarn-project/CHANGES.txt | 2 ++ .../server/resourcemanager/webapp/AppBlock.java | 33 ++-- .../resourcemanager/webapp/AppsBlock.java | 6 ++-- .../resourcemanager/webapp/dao/AppInfo.java | 8 ++--- 4 files changed, 41 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/a1963968/hadoop-yarn-project/CHANGES.txt -- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 235043c..3903631 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -274,6 +274,8 @@ Release 2.7.0 - UNRELEASED YARN-2799. Cleanup TestLogAggregationService based on the change in YARN-90. (Zhihai Xu via junping_du) +YARN-3230. Clarify application states on the web UI. (Jian He via wangda) + OPTIMIZATIONS YARN-2990. FairScheduler's delay-scheduling always waits for node-local and http://git-wip-us.apache.org/repos/asf/hadoop/blob/a1963968/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java index 1856d75..c2b376e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java @@ -32,8 +32,10 @@ import org.apache.hadoop.security.UserGroupInformation; import org.apache.hadoop.util.StringUtils; import org.apache.hadoop.yarn.api.records.ApplicationAccessType; import org.apache.hadoop.yarn.api.records.ApplicationId; +import org.apache.hadoop.yarn.api.records.FinalApplicationStatus; import org.apache.hadoop.yarn.api.records.QueueACL; import org.apache.hadoop.yarn.api.records.Resource; +import org.apache.hadoop.yarn.api.records.YarnApplicationState; import org.apache.hadoop.yarn.server.resourcemanager.RMContext; import org.apache.hadoop.yarn.server.resourcemanager.ResourceManager; import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp; @@ -131,8 +133,9 @@ public class AppBlock extends HtmlBlock { ._("Name:", app.getName()) ._("Application Type:", app.getApplicationType()) ._("Application Tags:", app.getApplicationTags()) -._("State:", app.getState()) -._("FinalStatus:", app.getFinalStatus()) +._("YarnApplicationState:", clarifyAppState(app.getState())) +._("FinalStatus reported by AM:", + clairfyAppFinalStatus(app.getFinalStatus())) ._("Started:", Times.format(app.getStartTime())) ._("Elapsed:", StringUtils.formatTime(Times.elapsed(app.getStartTime(), @@ -198,4 +201,30 @@ public class AppBlock extends HtmlBlock { table._(); div._(); } + + private String clarifyAppState(YarnApplicationState state) { +String ret = state.toString(); +switch (state) { +case NEW: + return ret + ": waiting for application to be initialized"; +case NEW_SAVING: + return ret + ": waiting for application to be persisted in state-store."; +case SUBMITTED: + return ret + ": waiting for application to be accepted by scheduler."; +case ACCEPTED: + return ret + ": waiting for AM container to be allocated, launched and" + + " register with RM."; +case RUNNING: + return ret + ": AM has registered with RM and started running."; +default: + return ret; +} + } + + private String clairfyApp
hadoop git commit: YARN-3230. Clarify application states on the web UI. (Jian He via wangda)
Repository: hadoop Updated Branches: refs/heads/trunk c33ae271c -> ce5bf927c YARN-3230. Clarify application states on the web UI. (Jian He via wangda) Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/ce5bf927 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/ce5bf927 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/ce5bf927 Branch: refs/heads/trunk Commit: ce5bf927c3d9f212798de1bf8706e5e9def235a1 Parents: c33ae27 Author: Wangda Tan Authored: Fri Feb 20 10:39:28 2015 -0800 Committer: Wangda Tan Committed: Fri Feb 20 10:39:28 2015 -0800 -- hadoop-yarn-project/CHANGES.txt | 2 ++ .../server/resourcemanager/webapp/AppBlock.java | 33 ++-- .../resourcemanager/webapp/AppsBlock.java | 6 ++-- .../resourcemanager/webapp/dao/AppInfo.java | 8 ++--- 4 files changed, 41 insertions(+), 8 deletions(-) -- http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce5bf927/hadoop-yarn-project/CHANGES.txt -- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index e71da2d..c028043 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -310,6 +310,8 @@ Release 2.7.0 - UNRELEASED YARN-2799. Cleanup TestLogAggregationService based on the change in YARN-90. (Zhihai Xu via junping_du) +YARN-3230. Clarify application states on the web UI. (Jian He via wangda) + OPTIMIZATIONS YARN-2990. FairScheduler's delay-scheduling always waits for node-local and http://git-wip-us.apache.org/repos/asf/hadoop/blob/ce5bf927/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java -- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java index 1856d75..c2b376e 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/AppBlock.java @@ -32,8 +32,10 @@ import org.apache.hadoop.security.UserGroupInformation; import org.apache.hadoop.util.StringUtils; import org.apache.hadoop.yarn.api.records.ApplicationAccessType; import org.apache.hadoop.yarn.api.records.ApplicationId; +import org.apache.hadoop.yarn.api.records.FinalApplicationStatus; import org.apache.hadoop.yarn.api.records.QueueACL; import org.apache.hadoop.yarn.api.records.Resource; +import org.apache.hadoop.yarn.api.records.YarnApplicationState; import org.apache.hadoop.yarn.server.resourcemanager.RMContext; import org.apache.hadoop.yarn.server.resourcemanager.ResourceManager; import org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMApp; @@ -131,8 +133,9 @@ public class AppBlock extends HtmlBlock { ._("Name:", app.getName()) ._("Application Type:", app.getApplicationType()) ._("Application Tags:", app.getApplicationTags()) -._("State:", app.getState()) -._("FinalStatus:", app.getFinalStatus()) +._("YarnApplicationState:", clarifyAppState(app.getState())) +._("FinalStatus reported by AM:", + clairfyAppFinalStatus(app.getFinalStatus())) ._("Started:", Times.format(app.getStartTime())) ._("Elapsed:", StringUtils.formatTime(Times.elapsed(app.getStartTime(), @@ -198,4 +201,30 @@ public class AppBlock extends HtmlBlock { table._(); div._(); } + + private String clarifyAppState(YarnApplicationState state) { +String ret = state.toString(); +switch (state) { +case NEW: + return ret + ": waiting for application to be initialized"; +case NEW_SAVING: + return ret + ": waiting for application to be persisted in state-store."; +case SUBMITTED: + return ret + ": waiting for application to be accepted by scheduler."; +case ACCEPTED: + return ret + ": waiting for AM container to be allocated, launched and" + + " register with RM."; +case RUNNING: + return ret + ": AM has registered with RM and started running."; +default: + return ret; +} + } + + private String clairfyAppFinalStatus(FinalApplicationStatus status) { +if (status == FinalApplica