[ https://issues.apache.org/jira/browse/YARN-3811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14590319#comment-14590319 ]
Jian He commented on YARN-3811: ------------------------------- bq. this is not possible to do as the NM needs to report the RPC server port during registration - so, server start should happen before registration. For RM work-preserving restart, this is not a problem as the NM remain as-is. For NM restart with no recovery, all outstanding containers allocated on this node are anyways killed. For NM work-preserving restart, I found the code already make sure everything starts first before starting the containerManager server. {code} if (delayedRpcServerStart) { waitForRecoveredContainers(); server.start(); {code} Overall, I think it's fine to add a client retry fix in 2.7.1; But long term I'd like to re-visit this, may be I still miss something. > NM restarts could lead to app failures > -------------------------------------- > > Key: YARN-3811 > URL: https://issues.apache.org/jira/browse/YARN-3811 > Project: Hadoop YARN > Issue Type: Bug > Components: nodemanager > Affects Versions: 2.7.0 > Reporter: Karthik Kambatla > Assignee: Karthik Kambatla > Priority: Critical > > Consider the following scenario: > 1. RM assigns a container on node N to an app A. > 2. Node N is restarted > 3. A tries to launch container on node N. > 3 could lead to an NMNotYetReadyException depending on whether NM N has > registered with the RM. In MR, this is considered a task attempt failure. A > few of these could lead to a task/job failure. -- This message was sent by Atlassian JIRA (v6.3.4#6332)