You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Vinayakumar B (JIRA)" <ji...@apache.org> on 2015/07/03 07:21:04 UTC
[jira] [Commented] (HADOOP-12105) Avoid returning 0 , while
fetching the status of a process ,which is not running.
[ https://issues.apache.org/jira/browse/HADOOP-12105?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14612846#comment-14612846 ]
Vinayakumar B commented on HADOOP-12105:
----------------------------------------
We have seen this kind of issue earlier.
checking for expected process is good idea.
Anyway, since the processes is started using the same script, 'proc_$command' is expected to present in the valid hadoop process.
Correction. should be "proc_$command" not 'process_classname'
> Avoid returning 0 , while fetching the status of a process ,which is not running.
> ---------------------------------------------------------------------------------
>
> Key: HADOOP-12105
> URL: https://issues.apache.org/jira/browse/HADOOP-12105
> Project: Hadoop Common
> Issue Type: Improvement
> Reporter: J.Andreina
> Assignee: J.Andreina
>
> If the process(Namenode) is crashed there will be stale pid file .
> Any other JVM process might get allocated with the same pid as that of the content of stale pid file.
> As per current implementation for fetching the status :
> we check if any process is running with pid (fetched from corresponding process pid file) then returns 0.
> {code}
> if ps -p "${pid}" > /dev/null 2>&1; then
> return 0
> fi
> {code}
> *So while fetching the status of namenode return code will be 0 , even if the namenode process is not running (because some other process is assigned with same pid ).*
> Can we check status of process as below
> {code}
> if ps -fp pid | grep process_classname > /dev/null 2>&1; then
> return 0
> fi
> {code}
> Please provide your feedback.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)