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 "Miklos Szegedi (JIRA)" <ji...@apache.org> on 2017/09/21 19:57:00 UTC
[jira] [Updated] (YARN-7239) Possible launch/cleanup race condition
in ContainersLauncher
[ https://issues.apache.org/jira/browse/YARN-7239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Miklos Szegedi updated YARN-7239:
---------------------------------
Description:
ContainersLauncher.handle() submits the launch job and then adds the job into the collection risking that the cleanup will miss it and return. This should be in reversed order in all 3 instances:
{code}
containerLauncher.submit(launch);
running.put(containerId, launch);
{code}
The cleanup code that the above code is racing with:
{code}
ContainerLaunch runningContainer = running.get(containerId);
if (runningContainer == null) {
// Container not launched. So nothing needs to be done.
LOG.info("Container " + containerId + " not running, nothing to signal.");
return;
}
...
{code}
was:
ContainersLauncher.handle() submits the launch job and then adds the job into the collection risking that the cleanup will miss it and return. This should be in reversed order in all 3 instances:
{code}
containerLauncher.submit(launch);
running.put(containerId, launch);
{code}
The cleanup code the above code is racing with:
{code}
ContainerLaunch runningContainer = running.get(containerId);
if (runningContainer == null) {
// Container not launched. So nothing needs to be done.
LOG.info("Container " + containerId + " not running, nothing to signal.");
return;
}
...
{code}
> Possible launch/cleanup race condition in ContainersLauncher
> ------------------------------------------------------------
>
> Key: YARN-7239
> URL: https://issues.apache.org/jira/browse/YARN-7239
> Project: Hadoop YARN
> Issue Type: Bug
> Reporter: Miklos Szegedi
> Labels: newbie
>
> ContainersLauncher.handle() submits the launch job and then adds the job into the collection risking that the cleanup will miss it and return. This should be in reversed order in all 3 instances:
> {code}
> containerLauncher.submit(launch);
> running.put(containerId, launch);
> {code}
> The cleanup code that the above code is racing with:
> {code}
> ContainerLaunch runningContainer = running.get(containerId);
> if (runningContainer == null) {
> // Container not launched. So nothing needs to be done.
> LOG.info("Container " + containerId + " not running, nothing to signal.");
> return;
> }
> ...
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org