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.
    if (delayedRpcServerStart) {

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

Reply via email to