YARN-5049. Addendum patch for branch-2. (asuresh)
(cherry picked from commit c153bed6e3b38d60815c3f62d96c604f23116eb3)
diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/ContainerManagerImpl.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/ContainerManagerImpl.java
index 1aaab30..6f993a4 100644
--- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/ContainerManagerImpl.java
+++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/ContainerManagerImpl.java
@@ -465,20 +465,13 @@
Application app = context.getApplications().get(appId);
if (app != null) {
- Credentials credentials =
- YarnServerSecurityUtils.parseCredentials(launchContext);
- Container container = new ContainerImpl(getConfig(), dispatcher,
- req.getContainerLaunchContext(),
- credentials, metrics, token, context, rcs);
- context.getContainers().put(containerId, container);
- app.handle(new ApplicationContainerInitEvent(container));
+ recoverActiveContainer(launchContext, token, rcs);
if (rcs.getRecoveryType() == RecoveredContainerType.KILL) {
dispatcher.getEventHandler().handle(
new ContainerKillEvent(containerId, ContainerExitStatus.ABORTED,
"Due to invalid StateStore info container was killed"
+ " during recovery"));
}
- recoverActiveContainer(launchContext, token, rcs);
} else {
if (rcs.getStatus() != RecoveredContainerStatus.COMPLETED) {
LOG.warn(containerId + " has no corresponding application!");