mariadb/mysql-test/include/galera_wait_ready.inc
Daniele Sciascia 9e5671f1cc MDEV-15948 Fix error "Lost connection to MySQL server..." in test galera_sst_mysqldump
Test galera_sst_mysqldump often fails with error "2013: Lost connection
to MySQL server during query". The connection is lost after the test
restart one of the nodes. This happens because the server closes client
connections if it is joining a cluster through SST method mysqldump.
On unlucky runs of the test it is possible that mysqld is restarted,
and then mtr client is disconnected while it tries to determine if
galera is ready before going on with the test.
This patch rewrites galera_wait_ready.inc so that it is immune to
being disconnected.
2018-04-20 14:44:27 +02:00

32 lines
628 B
PHP

# include/galera_wait_ready.inc
#
# Waits for galera node to transition to READY state.
#
--enable_reconnect
--disable_query_log
--disable_result_log
let $wait_counter = 300;
while ($wait_counter)
{
--disable_abort_on_error
let $success = `SELECT VARIABLE_VALUE = 'ON' FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_ready'`;
--enable_abort_on_error
if ($success)
{
let $wait_counter = 0;
}
if (!$success)
{
real_sleep 0.1;
dec $wait_counter;
}
}
if (!$success)
{
die "Server did not transition to READY state";
}
--disable_reconnect
--enable_query_log
--enable_result_log