[SCM] Samba Shared Repository - branch master updated

Amitay Isaacs amitay at samba.org
Thu Oct 26 11:33:02 UTC 2017


The branch, master has been updated
       via  0e8b781 ctdb-tests: Process-exists unit tests should wait until PID is registered
       via  6fad421 ctdb-tests: Wait for fake_ctdbd to start, fail if it doesn't
       via  274fef9 ctdb-tests: Skip starting fake_ctdbd when current node is disconnected
       via  dcbaebc ctdb-tests: Wait for ctdb_eventd to start, fail if it doesn't
       via  d698992 ctdb-tests: Allow wait_until() to be used in unit tests
      from  16389be s3:vfs_glusterfs: Fix a double free in vfs_gluster_getwd()

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 0e8b781e0740310d251bf1fa7db7a467d4f7f9b5
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Oct 25 12:15:23 2017 +1100

    ctdb-tests: Process-exists unit tests should wait until PID is registered
    
    Otherwise the client registration can race with the check in the test.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=13097
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Amitay Isaacs <amitay at gmail.com>
    
    Autobuild-User(master): Amitay Isaacs <amitay at samba.org>
    Autobuild-Date(master): Thu Oct 26 13:32:24 CEST 2017 on sn-devel-144

commit 6fad42103c0c812d5b5f4b42854fd7fd68846487
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Oct 25 17:52:04 2017 +1100

    ctdb-tests: Wait for fake_ctdbd to start, fail if it doesn't
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=13097
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Amitay Isaacs <amitay at gmail.com>

commit 274fef9b843aa1726c9d331a876504bc0a96a322
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Oct 25 21:43:56 2017 +1100

    ctdb-tests: Skip starting fake_ctdbd when current node is disconnected
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=13097
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Amitay Isaacs <amitay at gmail.com>

commit dcbaebc232b49e6a64228f1bb7ce7cfc5d2120e2
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Oct 25 18:52:10 2017 +1100

    ctdb-tests: Wait for ctdb_eventd to start, fail if it doesn't
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=13097
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Amitay Isaacs <amitay at gmail.com>

commit d69899238bfe468cd3e915f6d66e279811301d66
Author: Martin Schwenke <martin at meltin.net>
Date:   Wed Oct 25 12:04:49 2017 +1100

    ctdb-tests: Allow wait_until() to be used in unit tests
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=13097
    
    Signed-off-by: Martin Schwenke <martin at meltin.net>
    Reviewed-by: Amitay Isaacs <amitay at gmail.com>

-----------------------------------------------------------------------

Summary of changes:
 ctdb/tests/eventd/scripts/local.sh          |  7 ++---
 ctdb/tests/scripts/common.sh                | 44 +++++++++++++++++++++++++++++
 ctdb/tests/scripts/integration.bash         | 44 -----------------------------
 ctdb/tests/tool/ctdb.getcapabilities.003.sh | 13 +++++----
 ctdb/tests/tool/ctdb.lvs.008.sh             | 13 +++++----
 ctdb/tests/tool/ctdb.process-exists.001.sh  |  2 ++
 ctdb/tests/tool/ctdb.process-exists.002.sh  |  2 ++
 ctdb/tests/tool/ctdb.process-exists.003.sh  |  2 ++
 ctdb/tests/tool/scripts/local.sh            |  6 +++-
 9 files changed, 72 insertions(+), 61 deletions(-)


Changeset truncated at 500 lines:

diff --git a/ctdb/tests/eventd/scripts/local.sh b/ctdb/tests/eventd/scripts/local.sh
index 343205e..c8f7775 100644
--- a/ctdb/tests/eventd/scripts/local.sh
+++ b/ctdb/tests/eventd/scripts/local.sh
@@ -42,7 +42,7 @@ cleanup_eventd ()
 
 setup_eventd ()
 {
-	debug "Setting up eventd"
+	echo "Setting up eventd"
 
 	if [ -n "$1" ]; then
 		extra_args="-D $1"
@@ -53,9 +53,8 @@ setup_eventd ()
 		-e "$eventd_scriptdir" \
 		-l "file:" -d "DEBUG" $extra_args 2>&1 | tee "$eventd_logfile" &
 	# Wait till eventd is running
-	while [ ! -S "$eventd_socket" ] ; do
-		sleep 1
-	done
+	wait_until 10 test -S "$eventd_socket" || \
+		die "ctdb_eventd failed to start"
 
 	test_cleanup cleanup_eventd
 }
diff --git a/ctdb/tests/scripts/common.sh b/ctdb/tests/scripts/common.sh
index 93db417..099eee1 100644
--- a/ctdb/tests/scripts/common.sh
+++ b/ctdb/tests/scripts/common.sh
@@ -47,3 +47,47 @@ esac
 if [ -d "$_test_bin_dir" ] ; then
 	PATH="${_test_bin_dir}:$PATH"
 fi
+
+# Wait until either timeout expires or command succeeds.  The command
+# will be tried once per second, unless timeout has format T/I, where
+# I is the recheck interval.
+wait_until ()
+{
+    local timeout="$1" ; shift # "$@" is the command...
+
+    local interval=1
+    case "$timeout" in
+	*/*)
+	    interval="${timeout#*/}"
+	    timeout="${timeout%/*}"
+    esac
+
+    local negate=false
+    if [ "$1" = "!" ] ; then
+	negate=true
+	shift
+    fi
+
+    echo -n "<${timeout}|"
+    local t=$timeout
+    while [ $t -gt 0 ] ; do
+	local rc=0
+	"$@" || rc=$?
+	if { ! $negate && [ $rc -eq 0 ] ; } || \
+	    { $negate && [ $rc -ne 0 ] ; } ; then
+	    echo "|$(($timeout - $t))|"
+	    echo "OK"
+	    return 0
+	fi
+	local i
+	for i in $(seq 1 $interval) ; do
+	    echo -n .
+	done
+	t=$(($t - $interval))
+	sleep $interval
+    done
+
+    echo "*TIMEOUT*"
+
+    return 1
+}
diff --git a/ctdb/tests/scripts/integration.bash b/ctdb/tests/scripts/integration.bash
index ea8a280..b627c3e 100644
--- a/ctdb/tests/scripts/integration.bash
+++ b/ctdb/tests/scripts/integration.bash
@@ -259,50 +259,6 @@ delete_ip_from_all_nodes ()
 
 #######################################
 
-# Wait until either timeout expires or command succeeds.  The command
-# will be tried once per second, unless timeout has format T/I, where
-# I is the recheck interval.
-wait_until ()
-{
-    local timeout="$1" ; shift # "$@" is the command...
-
-    local interval=1
-    case "$timeout" in
-	*/*)
-	    interval="${timeout#*/}"
-	    timeout="${timeout%/*}"
-    esac
-
-    local negate=false
-    if [ "$1" = "!" ] ; then
-	negate=true
-	shift
-    fi
-
-    echo -n "<${timeout}|"
-    local t=$timeout
-    while [ $t -gt 0 ] ; do
-	local rc=0
-	"$@" || rc=$?
-	if { ! $negate && [ $rc -eq 0 ] ; } || \
-	    { $negate && [ $rc -ne 0 ] ; } ; then
-	    echo "|$(($timeout - $t))|"
-	    echo "OK"
-	    return 0
-	fi
-	local i
-	for i in $(seq 1 $interval) ; do
-	    echo -n .
-	done
-	t=$(($t - $interval))
-	sleep $interval
-    done
-
-    echo "*TIMEOUT*"
-
-    return 1
-}
-
 sleep_for ()
 {
     echo -n "=${1}|"
diff --git a/ctdb/tests/tool/ctdb.getcapabilities.003.sh b/ctdb/tests/tool/ctdb.getcapabilities.003.sh
index 91d38b8..74702d5 100755
--- a/ctdb/tests/tool/ctdb.getcapabilities.003.sh
+++ b/ctdb/tests/tool/ctdb.getcapabilities.003.sh
@@ -10,12 +10,13 @@ setup_nodes <<EOF
 192.168.20.43
 EOF
 
-setup_ctdbd <<EOF
-NODEMAP
-0       192.168.20.41   0x1     CURRENT RECMASTER
-1       192.168.20.42   0x0
-2       192.168.20.43   0x0
-EOF
+# Don't setup ctdbd - disconnected on current node
+#setup_ctdbd <<EOF
+#NODEMAP
+#0       192.168.20.41   0x1     CURRENT RECMASTER
+#1       192.168.20.42   0x0
+#2       192.168.20.43   0x0
+#EOF
 
 required_result 1 <<EOF
 connect() failed, errno=2
diff --git a/ctdb/tests/tool/ctdb.lvs.008.sh b/ctdb/tests/tool/ctdb.lvs.008.sh
index a0e24b1..6cdd702 100755
--- a/ctdb/tests/tool/ctdb.lvs.008.sh
+++ b/ctdb/tests/tool/ctdb.lvs.008.sh
@@ -13,12 +13,13 @@ EOF
 setup_lvs <<EOF
 EOF
 
-setup_ctdbd <<EOF
-NODEMAP
-0       192.168.20.41   0x1     CURRENT RECMASTER
-1       192.168.20.42   0x0
-2       192.168.20.43   0x0
-EOF
+# Don't setup ctdbd - disconnected on current node
+#setup_ctdbd <<EOF
+#NODEMAP
+#0       192.168.20.41   0x1     CURRENT RECMASTER
+#1       192.168.20.42   0x0
+#2       192.168.20.43   0x0
+#EOF
 
 #####
 
diff --git a/ctdb/tests/tool/ctdb.process-exists.001.sh b/ctdb/tests/tool/ctdb.process-exists.001.sh
index 2339344..1b6d213 100755
--- a/ctdb/tests/tool/ctdb.process-exists.001.sh
+++ b/ctdb/tests/tool/ctdb.process-exists.001.sh
@@ -14,6 +14,8 @@ EOF
 dummy_client -s $ctdbd_socket &
 pid=$!
 
+wait_until 10 $CTDB process-exists "$pid"
+
 ok "PID $pid exists"
 simple_test "$pid"
 
diff --git a/ctdb/tests/tool/ctdb.process-exists.002.sh b/ctdb/tests/tool/ctdb.process-exists.002.sh
index fe3dfd4..ace7749 100755
--- a/ctdb/tests/tool/ctdb.process-exists.002.sh
+++ b/ctdb/tests/tool/ctdb.process-exists.002.sh
@@ -16,6 +16,8 @@ srvid="0xaebbccdd12345678"
 dummy_client -d INFO -s "$ctdbd_socket" -S "$srvid" &
 pid=$!
 
+wait_until 10 $CTDB process-exists "$pid"
+
 srvid2="0x1234567812345678"
 required_result 1 "PID $pid with SRVID $srvid2 does not exist"
 simple_test "$pid" "$srvid2"
diff --git a/ctdb/tests/tool/ctdb.process-exists.003.sh b/ctdb/tests/tool/ctdb.process-exists.003.sh
index bb1ef9a..29c42a1 100755
--- a/ctdb/tests/tool/ctdb.process-exists.003.sh
+++ b/ctdb/tests/tool/ctdb.process-exists.003.sh
@@ -16,6 +16,8 @@ srvid="0xaebbccdd12345678"
 dummy_client -d INFO -s "$ctdbd_socket" -n 10 -S "$srvid" &
 pid=$!
 
+wait_until 10 $CTDB process-exists "$pid"
+
 srvid2="0x1234567812345678"
 required_result 1 "PID $pid with SRVID $srvid2 does not exist"
 simple_test "$pid" "$srvid2"
diff --git a/ctdb/tests/tool/scripts/local.sh b/ctdb/tests/tool/scripts/local.sh
index 2c9be2d..7cee84a 100644
--- a/ctdb/tests/tool/scripts/local.sh
+++ b/ctdb/tests/tool/scripts/local.sh
@@ -48,10 +48,14 @@ cleanup_ctdbd ()
 
 setup_ctdbd ()
 {
-	debug "Setting up fake ctdbd"
+	echo "Setting up fake ctdbd"
 
 	$VALGRIND fake_ctdbd -d "$FAKE_CTDBD_DEBUGLEVEL" \
 		  -s "$ctdbd_socket" -p "$ctdbd_pidfile"
+	# Wait till fake_ctdbd is running
+	wait_until 10 test -S "$ctdbd_socket" || \
+		die "fake_ctdbd failed to start"
+
 	test_cleanup cleanup_ctdbd
 }
 


-- 
Samba Shared Repository



More information about the samba-cvs mailing list