[ 
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)

Reply via email to