Skip to content

Commit

Permalink
MW-405 Make sure wsrep is ready in wait_until_connected_again.inc
Browse files Browse the repository at this point in the history
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.
  • Loading branch information
sciascid authored and Jan Lindström committed Apr 3, 2018
1 parent d21adb5 commit d970f80
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
3 changes: 0 additions & 3 deletions mysql-test/include/restart_mysqld.inc
Original file line number Diff line number Diff line change
Expand Up @@ -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

3 changes: 0 additions & 3 deletions mysql-test/include/start_mysqld.inc
Original file line number Diff line number Diff line change
Expand Up @@ -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

8 changes: 7 additions & 1 deletion mysql-test/include/wait_until_connected_again.inc
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -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

0 comments on commit d970f80

Please sign in to comment.