summaryrefslogtreecommitdiff
path: root/mysql-test/include
diff options
context:
space:
mode:
authorDaniele Sciascia <daniele.sciascia@galeracluster.com>2017-09-14 13:46:34 +0200
committerJan Lindström <jan.lindstrom@mariadb.com>2018-04-03 08:10:21 +0300
commitd970f805e62c864e08bb7bb7f13f39f3465ffca7 (patch)
treee2f50ccf843277238cae911c8e2e6fe0c802f4c1 /mysql-test/include
parentd21adb53a501139bc83200a1aabd200f1ead0676 (diff)
downloadmariadb-git-d970f805e62c864e08bb7bb7f13f39f3465ffca7.tar.gz
MW-405 Make sure wsrep is ready in wait_until_connected_again.inc
wait_until_connected_again issues 'SHOW STATUS' query repeatedly until mysqld replies without errors. However, SHOW STATUS is treated specially by wsrep in that it is allowed to proceed even if wsrep is not yet in ready state. As a consequence, after returning from wait_until_connected_again, wsrep may not be ready yet and subsequent queries may fail with error "1047 WSREP has not yet prepared node for application use". To avoid those errors, the patch includes wait_wsrep_ready.inc at the end of the wait_until_connected_again.
Diffstat (limited to 'mysql-test/include')
-rw-r--r--mysql-test/include/restart_mysqld.inc3
-rw-r--r--mysql-test/include/start_mysqld.inc3
-rw-r--r--mysql-test/include/wait_until_connected_again.inc8
3 files changed, 7 insertions, 7 deletions
diff --git a/mysql-test/include/restart_mysqld.inc b/mysql-test/include/restart_mysqld.inc
index a0447280ff5..940e081c431 100644
--- a/mysql-test/include/restart_mysqld.inc
+++ b/mysql-test/include/restart_mysqld.inc
@@ -50,9 +50,6 @@ if (!$restart_parameters)
# Call script that will poll the server waiting for it to be back online again
--source include/wait_until_connected_again.inc
-# Wait for wsrep
---source include/wait_wsrep_ready.inc
-
# Turn off reconnect again
--disable_reconnect
diff --git a/mysql-test/include/start_mysqld.inc b/mysql-test/include/start_mysqld.inc
index 04dff714d49..e31f26aad8c 100644
--- a/mysql-test/include/start_mysqld.inc
+++ b/mysql-test/include/start_mysqld.inc
@@ -16,9 +16,6 @@ if (!$restart_parameters)
# Call script that will poll the server waiting for it to be back online again
--source include/wait_until_connected_again.inc
-# Wait for wsrep
---source include/wait_wsrep_ready.inc
-
# Turn off reconnect again
--disable_reconnect
diff --git a/mysql-test/include/wait_until_connected_again.inc b/mysql-test/include/wait_until_connected_again.inc
index 6f64ef45440..265f110fe72 100644
--- a/mysql-test/include/wait_until_connected_again.inc
+++ b/mysql-test/include/wait_until_connected_again.inc
@@ -14,7 +14,7 @@ while ($mysql_errno)
# Strangely enough, the server might return "Too many connections"
# while being shutdown, thus 1040 is an "allowed" error
# See BUG#36228
- --error 0,1040,1053,2002,2003,2005,2006,2013,1927
+ --error 0,1040,1053,1205,2002,2003,2005,2006,2013,1927
show status;
dec $counter;
@@ -26,3 +26,9 @@ while ($mysql_errno)
}
--enable_query_log
--enable_result_log
+
+# WSREP: SHOW STATUS queries are allowed even if wsrep
+# is not ready. Make sure wsrep is ready before
+# returning from this script
+
+--source include/wait_wsrep_ready.inc