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/launcher/RecoveredContainerLaunch.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/RecoveredContainerLaunch.java index 66f5a2a6a5e..b9bdcc6c0d7 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/RecoveredContainerLaunch.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/RecoveredContainerLaunch.java @@ -19,6 +19,7 @@ package org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher; import java.io.File; +import java.io.InterruptedIOException; import java.io.IOException; import org.apache.commons.logging.Log; @@ -90,11 +91,11 @@ public class RecoveredContainerLaunch extends ContainerLaunch { } else { LOG.warn("Unable to locate pid file for container " + containerIdStr); } - } catch (IOException e) { - LOG.error("Unable to recover container " + containerIdStr, e); - } catch (InterruptedException e) { + } catch (InterruptedException | InterruptedIOException e) { LOG.warn("Interrupted while waiting for exit code from " + containerId); notInterrupted = false; + } catch (IOException e) { + LOG.error("Unable to recover container " + containerIdStr, e); } finally { if (notInterrupted) { this.completed.set(true);