You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-dev@hadoop.apache.org by "Hyunsik Choi (JIRA)" <ji...@apache.org> on 2013/01/08 16:30:12 UTC

[jira] [Resolved] (YARN-318) sendSignal in DefaultContainerExecutor causes "invalid options" error

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

Hyunsik Choi resolved YARN-318.
-------------------------------

    Resolution: Not A Problem

I didn't doubt the kill's bug because it is very common utility and it worked when I executed the command 'kill -0 -12127' on shell. However, accoring to this bug report (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=688731), it was a bug of procps-ng. If we don't give the path of kill command, the command invokes the built-in 'kill' command of bash. So, it seemed working.

                
> sendSignal in DefaultContainerExecutor causes "invalid options" error
> ---------------------------------------------------------------------
>
>                 Key: YARN-318
>                 URL: https://issues.apache.org/jira/browse/YARN-318
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: nodemanager
>    Affects Versions: 2.0.2-alpha
>         Environment: * OS: MintOS 14
> ** MintOS 14 is based on ubuntu 12.10. So, this problem may be caused in ubuntu 12.10.
> * procp version: procps-ng 3.3.3
> * OpenJDK version: 7u9-2.3.3
> * Hadoop version: 2.0.2-alpha
>            Reporter: Hyunsik Choi
>
> In line 238 of DefaultcontainerExecutor, sendSignal method causes an error when ContainerManagerImpl tries to kill a container. The command passed to ShellCommandExecutor in sendSignal() was "kill -0 -12127".
> The following message is copied from the detailMessage of the Exception.
> {noformat}
> kill: invalid option -- '1'
> Usage:
>  kill [options] <pid> [...]
> Options:
>  <pid> [...]            send signal to every <pid> listed
>  -<signal>, -s, --signal <signal>
>                         specify the <signal> to be sent
>  -l, --list=[<signal>]  list all signal names, or convert one to a name
>  -L, --table            list all signal names in a nice table
>  -h, --help     display this help and exit
>  -V, --version  output version information and exit
> For more details see kill(1).
> {noformat}
> I investigated a little bit on this problem. I've found that sendSignal works well with traditional procp (http://procps.sourceforge.net/), whereas it causes such a error with procps-ng (https://fedoraproject.org/wiki/Features/procps-ng) used in MintOS 14. As you know, 'kill' command is included in procp package in general linux distributions. When I only change the 'kill' binary into traditional one, stopContainer works well.

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