Updated Branches: refs/heads/master b3d388b59 -> e37478572
BIGTOP-782. 'service hue status' still show 'failed' after hue is started in SLES Project: http://git-wip-us.apache.org/repos/asf/bigtop/repo Commit: http://git-wip-us.apache.org/repos/asf/bigtop/commit/e3747857 Tree: http://git-wip-us.apache.org/repos/asf/bigtop/tree/e3747857 Diff: http://git-wip-us.apache.org/repos/asf/bigtop/diff/e3747857 Branch: refs/heads/master Commit: e37478572761dc5d27b1f66e7f070ff4b7bdb072 Parents: b3d388b Author: Roman Shaposhnik <[email protected]> Authored: Thu Dec 6 09:07:26 2012 -0800 Committer: Roman Shaposhnik <[email protected]> Committed: Thu Dec 6 09:07:26 2012 -0800 ---------------------------------------------------------------------- bigtop-packages/src/rpm/hue/SOURCES/hue.init | 12 +++++++++- bigtop-packages/src/rpm/hue/SOURCES/hue.init.suse | 18 ++++++++++++++- 2 files changed, 27 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/bigtop/blob/e3747857/bigtop-packages/src/rpm/hue/SOURCES/hue.init ---------------------------------------------------------------------- diff --git a/bigtop-packages/src/rpm/hue/SOURCES/hue.init b/bigtop-packages/src/rpm/hue/SOURCES/hue.init index f56cacd..c98c501 100644 --- a/bigtop-packages/src/rpm/hue/SOURCES/hue.init +++ b/bigtop-packages/src/rpm/hue/SOURCES/hue.init @@ -32,6 +32,7 @@ PIDFILE=/var/run/hue/supervisor.pid USER=hue EXEC=/usr/lib/hue/build/env/bin/python DAEMON_OPTS="-p $PIDFILE -l $LOGDIR -d" +HUE_SHUTDOWN_TIMEOUT=15 hue_start() { export PYTHON_EGG_CACHE='/tmp/.hue-python-eggs' @@ -88,13 +89,22 @@ hue_start() { } hue_stop() { + HUE_PID=`cat $PIDFILE 2>/dev/null` + if [ ! -e $PIDFILE ]; then success "Hue is not running" return 0 fi echo -n "Shutting down hue: " - killproc -p $PIDFILE -d 15 $DAEMON + if [ -n "$HUE_PID" ]; then + kill -TERM ${HUE_PID} &>/dev/null + for i in `seq 1 ${HUE_SHUTDOWN_TIMEOUT}` ; do + kill -0 ${HUE_PID} &>/dev/null || break + sleep 1 + done + kill -KILL ${HUE_PID} &>/dev/null + fi ret=$? echo rm -f $LOCKFILE http://git-wip-us.apache.org/repos/asf/bigtop/blob/e3747857/bigtop-packages/src/rpm/hue/SOURCES/hue.init.suse ---------------------------------------------------------------------- diff --git a/bigtop-packages/src/rpm/hue/SOURCES/hue.init.suse b/bigtop-packages/src/rpm/hue/SOURCES/hue.init.suse index 45134d6..446e969 100644 --- a/bigtop-packages/src/rpm/hue/SOURCES/hue.init.suse +++ b/bigtop-packages/src/rpm/hue/SOURCES/hue.init.suse @@ -53,6 +53,7 @@ DAEMON=/usr/lib/hue/build/env/bin/supervisor # Introduce the server's location h DAEMON_OPTS="-p $PIDFILE -l $LOGDIR -d" DESC="Hue web server" USER=hue +HUE_SHUTDOWN_TIMEOUT=15 export PYTHON_EGG_CACHE=/tmp/.hue-python-eggs @@ -74,10 +75,23 @@ hue_start() { } hue_stop() { + HUE_PID=`cat $PIDFILE 2>/dev/null` + + if [ ! -e $PIDFILE ]; then + success "Hue is not running" + return 0 + fi + log_success_msg "Stopping $DESC: " - killproc -p $PIDFILE $DAEMON + if [ -n "$HUE_PID" ]; then + kill -TERM ${HUE_PID} &>/dev/null + for i in `seq 1 ${HUE_SHUTDOWN_TIMEOUT}` ; do + kill -0 ${HUE_PID} &>/dev/null || break + sleep 1 + done + kill -KILL ${HUE_PID} &>/dev/null + fi RETVAL=$? - sleep 5 echo [ $RETVAL -eq 0 ] && rm -f $LOCKFILE $PIDFILE }
