hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xuan Gong (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-76) killApplication doesn't fully kill application master on Mac OS
Date Wed, 17 Jul 2013 07:10:53 GMT

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

Xuan Gong commented on YARN-76:

   public static String[] getSignalKillCommand(int code, String pid) {
    return Shell.WINDOWS ? new String[] { Shell.WINUTILS, "task", "kill", pid } :
      new String[] { "kill", "-" + code, isSetsidAvailable ? "-" + pid : pid };

If setSid is supported, the command kill -15/-9 -{$pid} will be executed. This will kill the
whole process group.
If setSid is not supported, the command kill -15/-9 $pid will be executed.
> killApplication doesn't fully kill application master on Mac OS
> ---------------------------------------------------------------
>                 Key: YARN-76
>                 URL: https://issues.apache.org/jira/browse/YARN-76
>             Project: Hadoop YARN
>          Issue Type: Bug
>         Environment: Failed on MacOS. OK on Linux
>            Reporter: Bo Wang
> When client sends a ClientRMProtocol#killApplication to RM, the corresponding AM is supposed
to be killed. However, on Mac OS, the AM is still alive (w/o any interruption).
> I figured out part of the reason after some debugging. NM starts a AM with command like
"/bin/bash -c /path/to/java SampleAM". This command is executed in a process (say with PID
0001), which starts another Java process (say with PID 0002). When NM kills the AM, it send
SIGTERM and then SIGKILL to the bash process (PID 0001). In Linux, the death of the bash process
(PID 0001) will trigger the kill of the Java process (PID 0002). However, in Mac OS, only
the bash process is killed. The Java process is in the wild since then.
> Note: on Mac OS, DefaultContainerExecutor is used rather than LinuxContainerExecutor.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

View raw message