You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Eric Yang (Jira)" <ji...@apache.org> on 2020/07/06 19:35:00 UTC

[jira] [Comment Edited] (YARN-10341) Yarn Service Container Completed event doesn't get processed

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

Eric Yang edited comment on YARN-10341 at 7/6/20, 7:34 PM:
-----------------------------------------------------------

[~BilwaST] I see that you'd changed the code from break to continue.  This change looks better.  Please use a new version of the patch instead of replacing existing patch 001, this will help the precommit build to report correctly for the new patch.  Thanks


was (Author: eyang):
[~BilwaST] I see that you'd changed the code from break to continue.  This change looks better.  Please use a new version of the patch instead of replacing existing patch 001, this will help the recommit build to report correctly for the new patch.  Thanks

> Yarn Service Container Completed event doesn't get processed 
> -------------------------------------------------------------
>
>                 Key: YARN-10341
>                 URL: https://issues.apache.org/jira/browse/YARN-10341
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Bilwa S T
>            Assignee: Bilwa S T
>            Priority: Critical
>         Attachments: YARN-10341.001.patch
>
>
> If there 10 workers running and if containers get killed , after a while we see that there are just 9 workers runnning. This is due to CONTAINER COMPLETED Event is not processed on AM side. 
> Issue is in below code:
> {code:java}
> public void onContainersCompleted(List<ContainerStatus> statuses) {
>       for (ContainerStatus status : statuses) {
>         ContainerId containerId = status.getContainerId();
>         ComponentInstance instance = liveInstances.get(status.getContainerId());
>         if (instance == null) {
>           LOG.warn(
>               "Container {} Completed. No component instance exists. exitStatus={}. diagnostics={} ",
>               containerId, status.getExitStatus(), status.getDiagnostics());
>           return;
>         }
>         ComponentEvent event =
>             new ComponentEvent(instance.getCompName(), CONTAINER_COMPLETED)
>                 .setStatus(status).setInstance(instance)
>                 .setContainerId(containerId);
>         dispatcher.getEventHandler().handle(event);
>       }
> {code}
> If component instance doesnt exist for a container, it doesnt iterate over other containers as its returning from method



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org