hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jaromir Vanek (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (YARN-4377) Container process not killed
Date Fri, 20 Nov 2015 16:21:10 GMT

     [ https://issues.apache.org/jira/browse/YARN-4377?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jaromir Vanek updated YARN-4377:
--------------------------------
    Description: 
It seems my processes in containers are not killed when the whole job is killed. Containers
will hang in {{KILLING}} state until forever.

The root of this problem is that signals sent to the container process are sent with wrong
user permissions. 

>From the nodemanager log:
{quote}
2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Got pid 20748 for container container_1443786884805_2298_01_000003
2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Sending signal to pid 20748 as user _submitter_ for container container_1443786884805_2298_01_000003
2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor:
Sending signal 15 to pid 20748 as user _submitter_
2015-11-20 15:38:22,069 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Sent signal SIGTERM to pid 20748 as user _submitter_ for container container_1443786884805_2298_01_000003,
result=failed
2015-11-20 15:38:22,319 DEBUG org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor:
Sending signal 9 to pid 20748 as user _submitter_
{quote}

{{SIGTERM}} and following {{SIGKILL}} signals are sent with the *submitter* user permissions,
but the container process is running under *yarn* user by default (when using {{DefaultContainerExecutor}}
which is true in my case). The result is that signals are ignored and container will run forever.

Am I doing something wrong or is it a bug?

  was:
It seems my processes in containers are not killed when the whole job is killed. Containers
will hang in {{KILLING}} state until forever.

The root of this problem is that signals sent to the container process are sent with wrong
user permissions. 

>From the nodemanager log:
{quote}
2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Got pid 20748 for container container_1443786884805_2298_01_000003
2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Sending signal to pid 20748 as user _submitter_ for container container_1443786884805_2298_01_000003
2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor:
Sending signal 15 to pid 20748 as user _submitter_
2015-11-20 15:38:22,069 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Sent signal SIGTERM to pid 20748 as user _submitter_ for container container_1443786884805_2298_01_000003,
result=failed
2015-11-20 15:38:22,319 DEBUG org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor:
Sending signal 9 to pid 20748 as user _submitter_
{quote}

{{SIGTERM}} and following {{SIGKILL}} signals are sent with the *submitter* user permissions,
but the container process is running under *yarn* user by default (when using {{DefaultContainerExecutor}}
which is true in my case}}. The result is that signals are ignored and container will run
forever.

Am I doing something wrong or is it a bug?


> Container process not killed
> ----------------------------
>
>                 Key: YARN-4377
>                 URL: https://issues.apache.org/jira/browse/YARN-4377
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: nodemanager
>    Affects Versions: 2.6.0
>         Environment: Debian linux
>            Reporter: Jaromir Vanek
>            Priority: Critical
>
> It seems my processes in containers are not killed when the whole job is killed. Containers
will hang in {{KILLING}} state until forever.
> The root of this problem is that signals sent to the container process are sent with
wrong user permissions. 
> From the nodemanager log:
> {quote}
> 2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Got pid 20748 for container container_1443786884805_2298_01_000003
> 2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Sending signal to pid 20748 as user _submitter_ for container container_1443786884805_2298_01_000003
> 2015-11-20 15:38:22,063 DEBUG org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor:
Sending signal 15 to pid 20748 as user _submitter_
> 2015-11-20 15:38:22,069 DEBUG org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch:
Sent signal SIGTERM to pid 20748 as user _submitter_ for container container_1443786884805_2298_01_000003,
result=failed
> 2015-11-20 15:38:22,319 DEBUG org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor:
Sending signal 9 to pid 20748 as user _submitter_
> {quote}
> {{SIGTERM}} and following {{SIGKILL}} signals are sent with the *submitter* user permissions,
but the container process is running under *yarn* user by default (when using {{DefaultContainerExecutor}}
which is true in my case). The result is that signals are ignored and container will run forever.
> Am I doing something wrong or is it a bug?



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

Mime
View raw message