ctdb-tests: Add local_daemons.sh option for recovery lock recheck interval
authorMartin Schwenke <martin@meltin.net>
Fri, 17 Jan 2020 04:30:01 +0000 (15:30 +1100)
committerAmitay Isaacs <amitay@samba.org>
Tue, 21 Jan 2020 11:39:40 +0000 (11:39 +0000)
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
ctdb/tests/local_daemons.sh

index 3f5729b5a2442ff167d8f76874cb35ebbe7caca7..6ae1f1c2441801e952b71149079e49c124eb4398 100755 (executable)
@@ -128,6 +128,7 @@ Options:
   -n <num>      Number of nodes (default: 3)
   -P <file>     Public addresses file (default: automatically generated)
   -R            Use a command for the recovery lock (default: use a file)
+  -r <time>     Like -R and set recheck interval to <time> (default: use a file)
   -S <library>  Socket wrapper shared library to preload (default: none)
   -6            Generate IPv6 IPs for nodes, public addresses (default: IPv4)
 EOF
@@ -142,18 +143,22 @@ local_daemons_setup ()
        _num_nodes=3
        _public_addresses_file=""
        _recovery_lock_use_command=false
+       _recovery_lock_recheck_interval=""
        _socket_wrapper=""
        _use_ipv6=false
 
        set -e
 
-       while getopts "FN:n:P:RS:6h?" _opt ; do
+       while getopts "FN:n:P:Rr:S:6h?" _opt ; do
                case "$_opt" in
                F) _disable_failover=true ;;
                N) _nodes_file="$OPTARG" ;;
                n) _num_nodes="$OPTARG" ;;
                P) _public_addresses_file="$OPTARG" ;;
                R) _recovery_lock_use_command=true ;;
+               r) _recovery_lock_use_command=true
+                  _recovery_lock_recheck_interval="$OPTARG"
+                  ;;
                S) _socket_wrapper="$OPTARG" ;;
                6) _use_ipv6=true ;;
                \?|h) local_daemons_setup_usage ;;
@@ -189,7 +194,11 @@ local_daemons_setup ()
        _recovery_lock="${directory}/rec.lock"
        if $_recovery_lock_use_command ; then
                _helper="${CTDB_SCRIPTS_HELPER_BINDIR}/ctdb_mutex_fcntl_helper"
-               _recovery_lock="! ${_helper} ${_recovery_lock}"
+               _t="! ${_helper} ${_recovery_lock}"
+               if [ -n "$_recovery_lock_recheck_interval" ] ; then
+                       _t="${_t} ${_recovery_lock_recheck_interval}"
+               fi
+               _recovery_lock="$_t"
        fi
 
        if [ -n "$_socket_wrapper" ] ; then