New patch submitted by Dan Kenigsberg (danken(a)redhat.com)
You can review this change at:
http://gerrit.usersys.redhat.com/755
commit d59dc68c5b7f848516919d1b79d53426893cfbbd
Author: Dan Kenigsberg <danken(a)redhat.com>
Date: Thu Jul 28 13:07:01 2011 +0300
BZ#725802 spmprotect: kill vdsm process, do not restart service
restarting vdsmd service succeeds to stop vdsm process, but later fails
to start a new one because of various resons. This patch kills the
service just as `vdsmd stop` does, and waits for 'respawn' to fire up a
new process. Respawning would succeed once restarting vdsmd is possible.
Change-Id: Ic41b6676bde0033be8f3808f75ca80261f5ccc30
diff --git a/vdsm/storage/protect/spmprotect.sh b/vdsm/storage/protect/spmprotect.sh
index d664581..41bc70d 100755
--- a/vdsm/storage/protect/spmprotect.sh
+++ b/vdsm/storage/protect/spmprotect.sh
@@ -9,8 +9,6 @@ LEASE_UTIL="./safelease"
KILL="/bin/kill"
PKILL="/usr/bin/pkill"
spUUID=$2
-RESTARTVDSCMD=${RESTARTVDSCMD:-"sudo /sbin/service vdsmd restart"}
-STARTVDSCMD=${STARTVDSCMD:-"sudo /sbin/service vdsmd start"}
CHECKVDSM=${CHECKVDSM:-"/usr/bin/pgrep vdsm"}
REBOOTCMD=${REBOOTCMD:-"sudo /sbin/reboot -f"}
RENEWDIR="/var/run/vdsm/spmprotect/$$"
@@ -58,7 +56,9 @@ function fence() {
disown
(sleep 7
log "Trying to stop vdsm for spUUID=$spUUID id=$ID
lease_path=$LEASE_FILE"
- echodo $RESTARTVDSCMD
+ echodo $KILL "$VDSM_PID"
+ sleep 2
+ echodo $KILL -9 "$VDSM_PID"
)&
disown