[ 
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:
-------------------------------

{code}  
   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 };
  }
{code}

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

Reply via email to