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