[ 
https://issues.apache.org/jira/browse/YARN-3998?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14651887#comment-14651887
 ] 

Jun Gong commented on YARN-3998:
--------------------------------

Thanks [~jlowe] and [~ste...@apache.org] for the detailed explanation. Yes, app 
will have more control when doing it at the app level.

Our specific cases:
1. Container generates several large files(total size is 20G~50G) in the 
working directory. If container exits for some reason, it need re-generate 
those files, and container's service will be interrupted for a long time.

2. When running Docker container, docker image might be very large and pulled 
for a long time. If the container fails to run and re-scheduled to another 
host, NM might need pull the image again.

> Add retry-times to let NM re-launch container when it fails to run
> ------------------------------------------------------------------
>
>                 Key: YARN-3998
>                 URL: https://issues.apache.org/jira/browse/YARN-3998
>             Project: Hadoop YARN
>          Issue Type: New Feature
>            Reporter: Jun Gong
>            Assignee: Jun Gong
>
> I'd like to add a field(retry-times) in ContainerLaunchContext. When AM 
> launches containers, it could specify the value. Then NM will re-launch the 
> container 'retry-times' times when it fails to run(e.g.exit code is not 0). 
> It will save a lot of time. It avoids container localization. RM does not 
> need to re-schedule the container. And local files in container's working 
> directory will be left for re-use.(If container have downloaded some big 
> files, it does not need to re-download them when running again.) 
> We find it is useful in systems like Storm.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to