Patch is against HEAD; should apply to most branches (except for the xenvm.sh part) -- Lon
Index: clusterfs.sh =================================================================== RCS file: /cvs/cluster/cluster/rgmanager/src/resources/clusterfs.sh,v retrieving revision 1.10 diff -u -r1.10 clusterfs.sh --- clusterfs.sh 2 Jun 2006 17:37:10 -0000 1.10 +++ clusterfs.sh 11 Aug 2006 15:49:42 -0000 @@ -889,12 +889,16 @@ ;; status|monitor) isMounted ${OCF_RESKEY_device} ${OCF_RESKEY_mountpoint} - [ $? -ne $YES ] && exit $OCF_ERR_GENERIC + if [ $? -ne $YES ]; then + ocf_log err "fs:${OCF_RESKEY_name}: ${OCF_RESKEY_device} is not mounted on ${OCF_RESKEY_mountpoint}" + exit $OCF_ERR_GENERIC + fi isAlive ${OCF_RESKEY_mountpoint} - [ $? -ne $YES ] && exit $OCF_ERR_GENERIC - - exit 0 + [ $? -eq $YES ] && exit 0 + + ocf_log err "fs:${OCF_RESKEY_name}: Mount point is not accessible!" + exit $OCF_ERR_GENERIC ;; restart) stopFilesystem Index: fs.sh =================================================================== RCS file: /cvs/cluster/cluster/rgmanager/src/resources/fs.sh,v retrieving revision 1.16 diff -u -r1.16 fs.sh --- fs.sh 2 Jun 2006 17:37:10 -0000 1.16 +++ fs.sh 11 Aug 2006 15:49:42 -0000 @@ -243,7 +243,7 @@ { if [ -z "$OCF_RESKEY_mountpoint" ]; then ocf_log err "No mount point specified." - return 1 + return $OCF_ERR_ARGS fi if ! [ -e "$OCF_RESKEY_mountpoint" ]; then @@ -514,7 +514,7 @@ dev=$(real_device $1) if [ -z "$dev" ]; then ocf_log err \ - "isMounted: Could not match $1 with a real device" + "fs (isMounted): Could not match $1 with a real device" return $FAIL fi mp=$2 @@ -553,14 +553,14 @@ declare rw if [ $# -ne 1 ]; then - logAndPrint $LOG_ERR "Usage: isAlive mount_point" + ocf_log err "Usage: isAlive mount_point" return $FAIL fi mount_point=$1 test -d $mount_point if [ $? -ne 0 ]; then - logAndPrint $LOG_ERR "$mount_point is not a directory" + ocf_log err "fs (isAlive): $mount_point is not a directory" return $FAIL fi @@ -707,6 +707,7 @@ return $ret } + activeMonitor() { declare monpath=$OCF_RESKEY_mountpoint/.clumanager declare p @@ -733,7 +734,7 @@ case $1 in start) ocf_log info "Starting active monitoring of $OCF_RESKEY_mountpoint" - mkdir -p $(dirname $monpath) || return 1 + mkdir -p $(dirname $monpath) || return $OCF_ERR_GENERIC devmon $args -p $monpath/devmon.data -P $monpath/devmon.pid ;; stop) @@ -794,7 +795,7 @@ if [ -z "`which quotaon`" ]; then ocf_log err "quotaon not found in $PATH" - return 1 + return $OCF_ERR_GENERIC fi for mopt in `echo $opts | sed -e s/,/\ /g`; do @@ -1211,29 +1212,35 @@ ;; status|monitor) isMounted ${OCF_RESKEY_device} ${OCF_RESKEY_mountpoint} - [ $? -ne $YES ] && exit $OCF_ERR_GENERIC + if [ $? -ne $YES ]; then + ocf_log err "fs:${OCF_RESKEY_name}: ${OCF_RESKEY_device} is not mounted on ${OCF_RESKEY_mountpoint}" + exit $OCF_ERR_GENERIC + fi if [ "$OCF_RESKEY_active_monitor" = "yes" ] || [ "$OCF_RESKEY_active_monitor" = "1" ]; then - activeMonitor status || exit $OCF_ERR_GENERIC - exit 0 + activeMonitor status + [ $? -eq 0 ] && exit 0 + ocf_log err "fs:${OCF_RESKEY_name}: Active Monitoring reported a failure" + exit $OCF_ERR_GENERIC fi isAlive ${OCF_RESKEY_mountpoint} - [ $? -ne $YES ] && exit $OCF_ERR_GENERIC - - exit 0 + [ $? -eq $YES ] && exit 0 + + ocf_log err "fs:${OCF_RESKEY_name}: Mount point is not accessible!" + exit $OCF_ERR_GENERIC ;; restart) stopFilesystem if [ $? -ne 0 ]; then - exit 1 + exit $OCF_ERR_GENERIC fi startFilesystem if [ $? -ne 0 ]; then - exit 1 + exit $OCF_ERR_GENERIC fi exit 0 Index: nfsclient.sh =================================================================== RCS file: /cvs/cluster/cluster/rgmanager/src/resources/nfsclient.sh,v retrieving revision 1.12 diff -u -r1.12 nfsclient.sh --- nfsclient.sh 2 Aug 2006 17:24:31 -0000 1.12 +++ nfsclient.sh 11 Aug 2006 15:49:42 -0000 @@ -320,7 +320,11 @@ sed -e 's/*/[*]/g' -e 's/?/[?]/g' -e 's/\./\\./g') exportfs -v | tr -d "\n" | sed -e 's/([^)]*)/\n/g' | grep -q \ "^${OCF_RESKEY_path}[\t ]*.*${OCF_RESKEY_target_regexp}" + rv=$? + if [ $rv -ne 0 ]; then + ocf_log err "nfsclient:$OCF_RESKEY_name is missing!" + fi ;; recover) diff -u -r1.7 script.sh --- script.sh 21 Nov 2005 21:48:42 -0000 1.7 +++ script.sh 11 Aug 2006 15:49:42 -0000 @@ -110,4 +110,10 @@ # Don't need to catch return codes; this one will work. ocf_log info "Executing ${OCF_RESKEY_file} $1" -exec /bin/sh ${OCF_RESKEY_file} $1 +${OCF_RESKEY_file} $1 + +declare -i rv=$? +if [ $rv -ne 0 ]; then + ocf_log err "script:$OCF_RESKEY_name: $1 of $OCF_RESKEY_file failed (returned $rv)" + return $OCF_ERR_GENERIC +fi
-- Linux-cluster@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/linux-cluster