Try to restart LOCKD if "service nfslock start" fails.
authorRonnie Sahlberg <ronniesahlberg@gmail.com>
Wed, 13 Oct 2010 21:06:47 +0000 (08:06 +1100)
committerRonnie Sahlberg <ronniesahlberg@gmail.com>
Wed, 13 Oct 2010 21:06:47 +0000 (08:06 +1100)
Some systems this command occasionally returns [OK] == success
but lock manager fails to start.

Dodgy service scripts.

CQ1020366

config/events.d/60.nfs
config/functions

index 00cceb3ef113c47e0cf7d0d64205e6ed45d4cb0b..2c48d0561b58194f2f6c9c64a00332b2d14bd2dc 100755 (executable)
@@ -93,7 +93,13 @@ case "$1" in
        } || exit $?
 
        # check that lockd responds to rpc requests
-       ctdb_check_rpc "lockd" 100021 1
+       (ctdb_check_rpc "lockd" 100021 1)
+       [ $? = "0" ] || {
+           echo "Trying to restart lock manager service"
+           startstop_nfslock restart
+           exit 1
+       }
+
        echo "$STATD_SHARED_DIRECTORY" | ctdb_check_directories "statd" || \
            exit $?
 
index 05c5ed7ad75b61134c52a7b9b39a4560b496a05a..b5354cfb9eb64694a203da7a7c4053f94b5ae355 100755 (executable)
@@ -379,6 +379,10 @@ startstop_nfslock() {
                stop)
                        service nfsserver stop > /dev/null 2>&1
                        ;;
+               restart)
+                       service nfsserver stop
+                       service nfsserver start
+                       ;;
                esac
                ;;
        rhel)
@@ -389,6 +393,10 @@ startstop_nfslock() {
                stop)
                        service nfslock stop > /dev/null 2>&1
                        ;;
+               restart)
+                       service nfslock stop
+                       service nfslock start
+                       ;;
                esac
                ;;
        *)