[ 
https://issues.apache.org/jira/browse/HADOOP-13837?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15704058#comment-15704058
 ] 

Allen Wittenauer commented on HADOOP-13837:
-------------------------------------------

bq. Does that make sense?

No, it doesn't.

The proposed patch assumes that the process will actually end.  In practice, 
that doesn't always happen (e.g., process stuck in IO wait).  End result, this 
creates an infinite loop, thus making the problem even worse.

This is exactly why the code is written the way it is.  Just add a sleep and a 
call to hadoop_status_daemon. Someone calling stop will always exit, successful 
or not.



> Process check bug in hadoop_stop_daemon of hadoop-functions.sh
> --------------------------------------------------------------
>
>                 Key: HADOOP-13837
>                 URL: https://issues.apache.org/jira/browse/HADOOP-13837
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: scripts
>            Reporter: Weiwei Yang
>            Assignee: Weiwei Yang
>         Attachments: HADOOP-13837.01.patch, HADOOP-13837.02.patch, 
> check_proc.sh
>
>
> Always get {{ERROR: Unable to kill ...}} after {{Trying to kill with kill 
> -9}}, see following output of stop-yarn.sh
> {code}
> <NM_HOST>: WARNING: nodemanager did not stop gracefully after 5 seconds: 
> Trying to kill with kill -9
> <NM_HOST>: ERROR: Unable to kill 18097
> {code}
> hadoop_stop_daemon doesn't check process liveness correctly, this bug can be 
> reproduced by the script easily. kill -9 would need some time to be done, 
> directly check process existence right after mostly will fail.
> {code}
> function hadoop_stop_daemon
> {
>     ...
>       kill -9 "${pid}" >/dev/null 2>&1
>     fi
>     if ps -p "${pid}" > /dev/null 2>&1; then
>       hadoop_error "ERROR: Unable to kill ${pid}"
>     else
>       ...
> }
> {code}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to