diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java index 3fbe0c45065..5762ffa9ea1 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/NodeStatusUpdaterImpl.java @@ -630,7 +630,13 @@ private void updateNMResource(Resource resource) { private List getRunningApplications() { List runningApplications = new ArrayList(); - runningApplications.addAll(this.context.getApplications().keySet()); + for (Entry appEntry : this.context + .getApplications().entrySet()) { + if (ApplicationState.FINISHED != appEntry.getValue() + .getApplicationState()) { + runningApplications.add(appEntry.getKey()); + } + } return runningApplications; }