mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 04:22:27 +01:00
9e5671f1cc
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.
32 lines
628 B
PHP
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
|