diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java index 2d942e7d64e..c7254b3e8ac 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacityScheduler.java @@ -1598,6 +1598,12 @@ protected void completedContainerInternal( // Get the node on which the container was allocated FiCaSchedulerNode node = getNode(container.getNodeId()); + if (node == null) { + LOG.info("Container=" + container + " of application=" + appId + + " completed with event=" + event + " on a node=" + container + .getNodeId() + ". However the node might be already removed by RM."); + return; + } // Inform the queue LeafQueue queue = (LeafQueue)application.getQueue();