summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mysql-test/include/maria_empty_logs.inc2
-rw-r--r--mysql-test/include/mysqladmin_shutdown.inc7
-rw-r--r--mysql-test/include/wait_until_connected_again.inc3
-rw-r--r--mysql-test/include/wait_until_disconnected.inc24
4 files changed, 35 insertions, 1 deletions
diff --git a/mysql-test/include/maria_empty_logs.inc b/mysql-test/include/maria_empty_logs.inc
index 7e3f2181897..0783020c443 100644
--- a/mysql-test/include/maria_empty_logs.inc
+++ b/mysql-test/include/maria_empty_logs.inc
@@ -13,7 +13,7 @@ append_file $MYSQLTEST_VARDIR/tmp/master0.expect;
wait-maria_empty_logs.inc
EOF
---exec $MYSQLADMIN --no-defaults -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= shutdown 2>&1;
+--source include/mysqladmin_shutdown.inc
if (!$mel_keep_control_file)
{
diff --git a/mysql-test/include/mysqladmin_shutdown.inc b/mysql-test/include/mysqladmin_shutdown.inc
new file mode 100644
index 00000000000..16b33c2baf8
--- /dev/null
+++ b/mysql-test/include/mysqladmin_shutdown.inc
@@ -0,0 +1,7 @@
+# Initiates a clean shutdown of the server and waits for its completion
+
+--exec $MYSQLADMIN --no-defaults -S $MASTER_MYSOCK -P $MASTER_MYPORT -u root --password= shutdown 2>&1;
+
+# On Windows mysqladmin does not wait for shutdown to be finished,
+# so we have to monitor this with our connection:
+--source include/wait_until_disconnected.inc
diff --git a/mysql-test/include/wait_until_connected_again.inc b/mysql-test/include/wait_until_connected_again.inc
index 02d544cb966..4379f4d3145 100644
--- a/mysql-test/include/wait_until_connected_again.inc
+++ b/mysql-test/include/wait_until_connected_again.inc
@@ -2,6 +2,9 @@
# Include this script to wait until the connection to the
# server has been restored or timeout occurs.
# You should have done --enable_reconnect first
+# When you change this file you may have to chance its cousin
+# wait_until_disconnected.inc
+
--disable_result_log
--disable_query_log
let $counter= 5000;
diff --git a/mysql-test/include/wait_until_disconnected.inc b/mysql-test/include/wait_until_disconnected.inc
new file mode 100644
index 00000000000..cf4a574573f
--- /dev/null
+++ b/mysql-test/include/wait_until_disconnected.inc
@@ -0,0 +1,24 @@
+#
+# Include this script after a shutdown to wait until the connection
+# to the server has been lost or timeout occurs.
+# When you change this file you may have to chance its cousin
+# wait_until_connected_again.inc
+
+--disable_result_log
+--disable_query_log
+let $counter= 5000;
+let $mysql_errno= 0;
+while (!$mysql_errno)
+{
+ --error 0,2002,2003,2006,1053
+ show status;
+
+ dec $counter;
+ if (!$counter)
+ {
+ --die Server failed to disconnect me
+ }
+ --sleep 0.1
+}
+--enable_query_log
+--enable_result_log