mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
MDEV-17062: Test failure on galera.MW-336
MDEV-17058: Test failure on wsrep.variables MDEV-17060: Test failure on galera.galera_var_slave_threads Fix incorrect calculation of increased applier (slave) threads. Note that increase change takes effect "immediately" but we should use proper wait condition to wait it. Reducing the number of slave threads is not immediate as thread will only exit after a replication event.
This commit is contained in:
@ -17,23 +17,27 @@
|
||||
eval SET @GALERA_VERSION='$galera_version';
|
||||
SELECT CAST(REGEXP_REPLACE(@GALERA_VERSION,'^(\\d+)\\.(\\d+).*','\\1') AS UNSIGNED) INTO @GALERA_MAJOR_VERSION;
|
||||
SELECT CAST(REGEXP_REPLACE(@GALERA_VERSION,'^(\\d+)\\.(\\d+).*','\\2') AS UNSIGNED) INTO @GALERA_MINOR_VERSION;
|
||||
SELECT CAST(REGEXP_REPLACE(@GALERA_VERSION,'^(\\d+)\\.(\\d+)\\.(\\d+).*','\\3') AS UNSIGNED) INTO @GALERA_RELEASE_VERSION;
|
||||
|
||||
# Actual
|
||||
SELECT VARIABLE_VALUE INTO @ACTUAL_GALERA_VERSION FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME LIKE 'wsrep_provider_version';
|
||||
|
||||
SELECT CAST(REGEXP_REPLACE(@ACTUAL_GALERA_VERSION,'^(\\d+)\\.(\\d+).*','\\1') AS UNSIGNED) INTO @ACTUAL_GALERA_MAJOR_VERSION;
|
||||
SELECT CAST(REGEXP_REPLACE(@ACTUAL_GALERA_VERSION,'^(\\d+)\\.(\\d+).*','\\2') AS UNSIGNED) INTO @ACTUAL_GALERA_MINOR_VERSION;
|
||||
SELECT CAST(REGEXP_REPLACE(@ACTUAL_GALERA_VERSION,'^(\\d+)\\.(\\d+).*','\\1') AS UNSIGNED) INTO @ACTUAL_GALERA_MINOR_VERSION;
|
||||
SELECT CAST(REGEXP_REPLACE(@ACTUAL_GALERA_VERSION,'^(\\d+)\\.(\\d+).*','\\2') AS UNSIGNED) INTO @ACTUAL_GALERA_RELEASE_VERSION;
|
||||
|
||||
# For testing
|
||||
#SELECT @GALERA_MAJOR_VERSION, @GALERA_MINOR_VERSION;
|
||||
#SELECT @GALERA_MAJOR_VERSION;
|
||||
#SELECT @GALERA_MINOR_VERSION;
|
||||
#SELECT @GALERA_RELEASE_VERSION;
|
||||
#SELECT @ACTUAL_GALERA_VERSION;
|
||||
#SELECT @ACTUAL_GALERA_MAJOR_VERSION, @ACTUAL_GALERA_MINOR_VERSION;
|
||||
#SELECT @ACTUAL_GALERA_MINOR_VERSION;
|
||||
#SELECT @ACTUAL_GALERA_RELEASE_VERSION;
|
||||
|
||||
if (!`SELECT (@ACTUAL_GALERA_MAJOR_VERSION > @GALERA_MAJOR_VERSION) OR
|
||||
(@ACTUAL_GALERA_MAJOR_VERSION = @GALERA_MAJOR_VERSION AND @ACTUAL_GALERA_MINOR_VERSION >= @GALERA_MINOR_VERSION)
|
||||
if (!`SELECT (@ACTUAL_GALERA_MINOR_VERSION > @GALERA_MINOR_VERSION) OR
|
||||
(@ACTUAL_GALERA_MINOR_VERSION = @GALERA_MINOR_VERSION AND
|
||||
@ACTUAL_GALERA_RELEASE_VERSION >= @GALERA_RELEASE_VERSION)
|
||||
`)
|
||||
{
|
||||
skip Test requires Galera library version $galera_version;
|
||||
skip Test requires Galera library version >= $galera_version;
|
||||
}
|
||||
|
||||
--enable_query_log
|
||||
|
@ -59,6 +59,8 @@ wsrep_local_send_queue_min #
|
||||
wsrep_local_state #
|
||||
wsrep_local_state_comment #
|
||||
wsrep_local_state_uuid #
|
||||
wsrep_open_connections #
|
||||
wsrep_open_transactions #
|
||||
wsrep_protocol_version #
|
||||
wsrep_provider_name #
|
||||
wsrep_provider_vendor #
|
||||
@ -114,6 +116,8 @@ wsrep_local_send_queue_min #
|
||||
wsrep_local_state #
|
||||
wsrep_local_state_comment #
|
||||
wsrep_local_state_uuid #
|
||||
wsrep_open_connections #
|
||||
wsrep_open_transactions #
|
||||
wsrep_protocol_version #
|
||||
wsrep_provider_name #
|
||||
wsrep_provider_vendor #
|
||||
|
@ -27,10 +27,12 @@ SET GLOBAL wsrep_provider=none;
|
||||
|
||||
CALL mtr.add_suppression("WSREP: Could not open saved state file for reading.*");
|
||||
|
||||
--disable_result_log
|
||||
--disable_query_log
|
||||
eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
--let $galera_version=25.3.17
|
||||
source include/check_galera_version.inc;
|
||||
--enable_result_log
|
||||
--enable_query_log
|
||||
|
||||
--replace_column 2 #
|
||||
@ -101,8 +103,11 @@ SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
--echo # Setting wsrep_cluster_address triggers the creation of
|
||||
--echo # applier/rollbacker threads.
|
||||
SET GLOBAL wsrep_cluster_address= 'gcomm://';
|
||||
|
||||
--echo # Wait for applier threads to get created.
|
||||
sleep 3;
|
||||
--let $wait_timeout=600
|
||||
--let $wait_condition = SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%');
|
||||
--source include/wait_condition.inc
|
||||
|
||||
--replace_regex /.*libgalera_smm.*/libgalera_smm.so/
|
||||
SELECT @@global.wsrep_provider;
|
||||
@ -113,8 +118,11 @@ SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
|
||||
SET @wsrep_slave_threads_saved= @@global.wsrep_slave_threads;
|
||||
SET GLOBAL wsrep_slave_threads= 10;
|
||||
|
||||
--echo # Wait for applier threads to get created.
|
||||
sleep 3;
|
||||
--let $wait_condition = SELECT COUNT(*) = 11 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'system user' AND (STATE IS NULL OR STATE NOT LIKE 'InnoDB%');
|
||||
--source include/wait_condition.inc
|
||||
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
|
||||
|
Reference in New Issue
Block a user