summaryrefslogtreecommitdiff
path: root/mysql-test/suite
diff options
context:
space:
mode:
authorsjaakola <seppo.jaakola@iki.fi>2021-02-28 19:33:30 +0200
committerJan Lindström <jan.lindstrom@mariadb.com>2021-04-13 14:58:54 +0300
commita1e70388c45a0908c35443ba1df93ea8502b727a (patch)
treefb58167b10d36048b8f907654775e750ca88ffd5 /mysql-test/suite
parentf74704c7d963ddcd1109843a5861c6bd76409c8d (diff)
downloadmariadb-git-a1e70388c45a0908c35443ba1df93ea8502b727a.tar.gz
MDEV-24966 Galera multi-master regression
After the merging of MDEV-24915, 10.6 branch has regressions with handling of concurrent write load against two or more cluster nodes. These regressions may surface as cluster hanging, node crashes or data inconsistency. With some test scenarios, the only visible symptom could be that the BF victim aborting happens only by innodb lock wait timeout expiration. This would result only to poor performance (by default 50 sec hang for each BF conflict), and could be somewhat difficult to diagnose. This pull request has following fixes to handle concurrent write load from multiple nodes: In lock_wait_wsrep_kill(), the victim trx was expected to be only in TRX_STATE_ACTIVE state. With the delayed BF conflict handling, it can happen that victim has advanced into pre commit state. This was fixed by choosing victim both in TRX_STATE_ACTIVE and TRX_STATE_PREPARED states. Victim transaction may be in several different states at the time of detected lock conflict, and due to delayed BF aborting practice in MDEV-24915, the victim may advance further before the actual BF aborting takes place. The BF aborting in MDEV-24915 did not wake the victim, if it was in the state of waiting for some other lock (than the one that was blocking the high priority thread). This anomaly caused the innodb lock wait timeout expiration delays and poor performance symptom. To fix this, lock_wait_wsrep_kill() now looks if victim is in lock waiting state, and uses lock_cancel_waiting_and_release() to cancel this lock wait. wsrep_bf_abort() checks if the victim has active transaction (in wsrep-lib), and starts a new transaction if there was no active transaction before. Due to late BF aborting, the victim may have e.g. failed in certification and is already aborting or has aborted at this stage. This has caused problems in testing where BF aborter tries to BF abort himself. The fix in wsrep_bf_abort() now skips the BF abort, if victim is aborting or has aborted. Victim may not have started transaction yet in wsrep context, but it may have acquired MDL locks (due to DDL execution), and this has caused BF conflict. Such case does not require aborting in wsrep or replication provider state. BF aborting could cause BF-BF conflict scenario, if victim was already aborted and changed to replayer having high priority as well. This BF-BF conflict scenario is now avoided in lock_wait_wsrep() where we now check if blocking lock holder is also high priority and is ordered before, caller should wait for the lock in this situation. The natural innodb deadlock resolving algorithm could pick BF thread as deadlock victim. This is fixed by giving max weigh to BF threads in Deadlock::report(). MDEV-24341 has changed excution paths in do_command() and this affects BF aborted victim execution. This PR fixes one assert in do_command(): DBUG_ASSERT(!thd->async_state.pending_ops()) Which fired if the thd was BF aborted earlier. This assert is now changed to allow pending_ops() if thd was BF aborted before. With these fixes, long term highly conflicting write load could be run against to node cluster. If binlogging is configured, log_slave_updates should be also set.
Diffstat (limited to 'mysql-test/suite')
-rw-r--r--mysql-test/suite/galera/r/galera_UK_conflict.result1
-rw-r--r--mysql-test/suite/galera/t/galera_UK_conflict.test1
-rw-r--r--mysql-test/suite/galera_3nodes/r/galera_join_with_cc_A.result3
-rw-r--r--mysql-test/suite/galera_3nodes/t/galera_join_with_cc_A.test8
-rw-r--r--mysql-test/suite/wsrep/r/variables_debug.result278
-rw-r--r--mysql-test/suite/wsrep/t/variables_debug.cnf7
-rw-r--r--mysql-test/suite/wsrep/t/variables_debug.test176
7 files changed, 13 insertions, 461 deletions
diff --git a/mysql-test/suite/galera/r/galera_UK_conflict.result b/mysql-test/suite/galera/r/galera_UK_conflict.result
index 44bb64c9d63..57b9c1279ea 100644
--- a/mysql-test/suite/galera/r/galera_UK_conflict.result
+++ b/mysql-test/suite/galera/r/galera_UK_conflict.result
@@ -119,6 +119,7 @@ SET debug_sync='RESET';
connection node_1;
SET GLOBAL wsrep_slave_threads = DEFAULT;
connection node_2;
+SET SESSION wsrep_sync_wait=15;
SELECT * FROM t1;
f1 f2 f3
1 1 0
diff --git a/mysql-test/suite/galera/t/galera_UK_conflict.test b/mysql-test/suite/galera/t/galera_UK_conflict.test
index 9978ba9b8bf..fa200c58ff7 100644
--- a/mysql-test/suite/galera/t/galera_UK_conflict.test
+++ b/mysql-test/suite/galera/t/galera_UK_conflict.test
@@ -266,6 +266,7 @@ SET debug_sync='RESET';
SET GLOBAL wsrep_slave_threads = DEFAULT;
--connection node_2
+SET SESSION wsrep_sync_wait=15;
SELECT * FROM t1;
# replicate some transactions, so that wsrep slave thread count can reach
diff --git a/mysql-test/suite/galera_3nodes/r/galera_join_with_cc_A.result b/mysql-test/suite/galera_3nodes/r/galera_join_with_cc_A.result
index a60e2bbb6cc..1813607517a 100644
--- a/mysql-test/suite/galera_3nodes/r/galera_join_with_cc_A.result
+++ b/mysql-test/suite/galera_3nodes/r/galera_join_with_cc_A.result
@@ -1,6 +1,9 @@
connection node_2;
connection node_1;
connection node_1;
+connection node_2;
+connection node_3;
+connection node_1;
CREATE TABLE t1 (pk INT PRIMARY KEY, node INT) ENGINE=innodb;
INSERT INTO t1 VALUES (1, 1);
connection node_2;
diff --git a/mysql-test/suite/galera_3nodes/t/galera_join_with_cc_A.test b/mysql-test/suite/galera_3nodes/t/galera_join_with_cc_A.test
index 2248ff5014a..db8bf90cb5c 100644
--- a/mysql-test/suite/galera_3nodes/t/galera_join_with_cc_A.test
+++ b/mysql-test/suite/galera_3nodes/t/galera_join_with_cc_A.test
@@ -15,6 +15,12 @@
--let $galera_server_number = 3
--source include/galera_connect.inc
+# Save original auto_increment_offset values.
+--let $node_1=node_1
+--let $node_2=node_2
+--let $node_3=node_3
+--source ../galera/include/auto_increment_offset_save.inc
+
--connection node_1
--let $wait_condition = SELECT VARIABLE_VALUE = 3 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc
@@ -260,3 +266,5 @@ call mtr.add_suppression("WSREP: Rejecting JOIN message from \(.*\): new State T
--connection node_3
call mtr.add_suppression("WSREP: Rejecting JOIN message from \(.*\): new State Transfer required.");
+
+--source ../galera/include/auto_increment_offset_restore.inc
diff --git a/mysql-test/suite/wsrep/r/variables_debug.result b/mysql-test/suite/wsrep/r/variables_debug.result
deleted file mode 100644
index 886325acf53..00000000000
--- a/mysql-test/suite/wsrep/r/variables_debug.result
+++ /dev/null
@@ -1,278 +0,0 @@
-call mtr.add_suppression("WSREP: Initial position was provided by configuration or SST, avoiding override");
-SET @wsrep_provider_options_saved= @@global.wsrep_provider_options;
-SET @wsrep_cluster_address_saved= @@global.wsrep_cluster_address;
-
-# MDEV#5534: mysql_tzinfo_to_sql generates wrong query
-#
-# Testing wsrep_replicate_myisam variable.
-SELECT @@session.wsrep_replicate_myisam;
-ERROR HY000: Variable 'wsrep_replicate_myisam' is a GLOBAL variable
-SELECT @@global.wsrep_replicate_myisam;
-@@global.wsrep_replicate_myisam
-0
-SET SESSION wsrep_replicate_myisam= ON;
-ERROR HY000: Variable 'wsrep_replicate_myisam' is a GLOBAL variable and should be set with SET GLOBAL
-SET GLOBAL wsrep_replicate_myisam= ON;
-SET GLOBAL wsrep_replicate_myisam= OFF;
-SET GLOBAL wsrep_provider=none;
-#
-# MDEV#5790: SHOW GLOBAL STATUS LIKE does not show the correct list of
-# variables when using "_"
-#
-CALL mtr.add_suppression("WSREP: Could not open saved state file for reading.*");
-SHOW GLOBAL STATUS LIKE 'wsrep%';
-Variable_name Value
-wsrep_local_state_uuid #
-wsrep_protocol_version #
-wsrep_last_committed #
-wsrep_replicated #
-wsrep_replicated_bytes #
-wsrep_repl_keys #
-wsrep_repl_keys_bytes #
-wsrep_repl_data_bytes #
-wsrep_repl_other_bytes #
-wsrep_received #
-wsrep_received_bytes #
-wsrep_local_commits #
-wsrep_local_cert_failures #
-wsrep_local_replays #
-wsrep_local_send_queue #
-wsrep_local_send_queue_max #
-wsrep_local_send_queue_min #
-wsrep_local_send_queue_avg #
-wsrep_local_recv_queue #
-wsrep_local_recv_queue_max #
-wsrep_local_recv_queue_min #
-wsrep_local_recv_queue_avg #
-wsrep_local_cached_downto #
-wsrep_flow_control_paused_ns #
-wsrep_flow_control_paused #
-wsrep_flow_control_sent #
-wsrep_flow_control_recv #
-wsrep_flow_control_active #
-wsrep_flow_control_requested #
-wsrep_cert_deps_distance #
-wsrep_apply_oooe #
-wsrep_apply_oool #
-wsrep_apply_window #
-wsrep_commit_oooe #
-wsrep_commit_oool #
-wsrep_commit_window #
-wsrep_local_state #
-wsrep_local_state_comment #
-wsrep_cert_index_size #
-wsrep_causal_reads #
-wsrep_cert_interval #
-wsrep_open_transactions #
-wsrep_open_connections #
-wsrep_incoming_addresses #
-wsrep_debug_sync_waiters #
-wsrep_applier_thread_count #
-wsrep_cluster_capabilities #
-wsrep_cluster_conf_id #
-wsrep_cluster_size #
-wsrep_cluster_state_uuid #
-wsrep_cluster_status #
-wsrep_connected #
-wsrep_local_bf_aborts #
-wsrep_local_index #
-wsrep_provider_capabilities #
-wsrep_provider_name #
-wsrep_provider_vendor #
-wsrep_provider_version #
-wsrep_ready #
-wsrep_rollbacker_thread_count #
-wsrep_thread_count #
-
-SHOW GLOBAL STATUS LIKE 'wsrep_%';
-Variable_name Value
-wsrep_local_state_uuid #
-wsrep_protocol_version #
-wsrep_last_committed #
-wsrep_replicated #
-wsrep_replicated_bytes #
-wsrep_repl_keys #
-wsrep_repl_keys_bytes #
-wsrep_repl_data_bytes #
-wsrep_repl_other_bytes #
-wsrep_received #
-wsrep_received_bytes #
-wsrep_local_commits #
-wsrep_local_cert_failures #
-wsrep_local_replays #
-wsrep_local_send_queue #
-wsrep_local_send_queue_max #
-wsrep_local_send_queue_min #
-wsrep_local_send_queue_avg #
-wsrep_local_recv_queue #
-wsrep_local_recv_queue_max #
-wsrep_local_recv_queue_min #
-wsrep_local_recv_queue_avg #
-wsrep_local_cached_downto #
-wsrep_flow_control_paused_ns #
-wsrep_flow_control_paused #
-wsrep_flow_control_sent #
-wsrep_flow_control_recv #
-wsrep_flow_control_active #
-wsrep_flow_control_requested #
-wsrep_cert_deps_distance #
-wsrep_apply_oooe #
-wsrep_apply_oool #
-wsrep_apply_window #
-wsrep_commit_oooe #
-wsrep_commit_oool #
-wsrep_commit_window #
-wsrep_local_state #
-wsrep_local_state_comment #
-wsrep_cert_index_size #
-wsrep_causal_reads #
-wsrep_cert_interval #
-wsrep_open_transactions #
-wsrep_open_connections #
-wsrep_incoming_addresses #
-wsrep_debug_sync_waiters #
-wsrep_applier_thread_count #
-wsrep_cluster_capabilities #
-wsrep_cluster_conf_id #
-wsrep_cluster_size #
-wsrep_cluster_state_uuid #
-wsrep_cluster_status #
-wsrep_connected #
-wsrep_local_bf_aborts #
-wsrep_local_index #
-wsrep_provider_capabilities #
-wsrep_provider_name #
-wsrep_provider_vendor #
-wsrep_provider_version #
-wsrep_ready #
-wsrep_rollbacker_thread_count #
-wsrep_thread_count #
-SHOW GLOBAL STATUS LIKE 'wsrep_local_state_comment';
-Variable_name Value
-wsrep_local_state_comment #
-# Should show nothing.
-SHOW STATUS LIKE 'x';
-Variable_name Value
-SET GLOBAL wsrep_provider=none;
-
-SHOW STATUS LIKE 'wsrep_local_state_uuid';
-Variable_name Value
-wsrep_local_state_uuid #
-
-SHOW STATUS LIKE 'wsrep_last_committed';
-Variable_name Value
-wsrep_last_committed #
-SET GLOBAL wsrep_provider=none;
-
-#
-# MDEV#6206: wsrep_slave_threads subtracts from max_connections
-#
-call mtr.add_suppression("WSREP: Failed to get provider options");
-SELECT @@global.wsrep_provider;
-@@global.wsrep_provider
-libgalera_smm.so
-SELECT @@global.wsrep_slave_threads;
-@@global.wsrep_slave_threads
-1
-SELECT @@global.wsrep_cluster_address;
-@@global.wsrep_cluster_address
-
-SELECT @@global.wsrep_on;
-@@global.wsrep_on
-1
-SHOW STATUS LIKE 'threads_connected';
-Variable_name Value
-Threads_connected 1
-SHOW STATUS LIKE 'wsrep_thread_count';
-Variable_name Value
-wsrep_thread_count 0
-
-SELECT @@global.wsrep_provider;
-@@global.wsrep_provider
-libgalera_smm.so
-SELECT @@global.wsrep_cluster_address;
-@@global.wsrep_cluster_address
-
-SELECT @@global.wsrep_on;
-@@global.wsrep_on
-1
-SHOW STATUS LIKE 'threads_connected';
-Variable_name Value
-Threads_connected 1
-SHOW STATUS LIKE 'wsrep_thread_count';
-Variable_name Value
-wsrep_thread_count 0
-
-# Setting wsrep_cluster_address triggers the creation of
-# applier/rollbacker threads.
-SET GLOBAL wsrep_cluster_address= 'gcomm://';
-# Wait for applier thread to get created 1.
-# Wait for applier thread to get created 2.
-SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
-EXPECT_1
-1
-SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_rollbacker_thread_count';
-EXPECT_1
-1
-SELECT VARIABLE_VALUE AS EXPECT_2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_thread_count';
-EXPECT_2
-2
-SELECT @@global.wsrep_provider;
-@@global.wsrep_provider
-libgalera_smm.so
-SELECT @@global.wsrep_cluster_address;
-@@global.wsrep_cluster_address
-gcomm://
-SELECT @@global.wsrep_on;
-@@global.wsrep_on
-1
-SHOW STATUS LIKE 'threads_connected';
-Variable_name Value
-Threads_connected 1
-SHOW STATUS LIKE 'wsrep_thread_count';
-Variable_name Value
-wsrep_thread_count 2
-
-SET @wsrep_slave_threads_saved= @@global.wsrep_slave_threads;
-SET GLOBAL wsrep_slave_threads= 10;
-# Wait for 9 applier threads to get created.
-SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
-EXPECT_10
-10
-SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_rollbacker_thread_count';
-EXPECT_1
-1
-SELECT VARIABLE_VALUE AS EXPECT_11 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_thread_count';
-EXPECT_11
-11
-SHOW STATUS LIKE 'threads_connected';
-Variable_name Value
-Threads_connected 1
-set wsrep_on=0;
-set wsrep_on=1;
-create user test@localhost;
-connect con1,localhost,test;
-set auto_increment_increment=10;
-set wsrep_on=0;
-ERROR 42000: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
-disconnect con1;
-connection default;
-drop user test@localhost;
-#
-# MDEV#6411: Setting set @@global.wsrep_sst_auth=NULL causes crash
-#
-SET @wsrep_sst_auth_saved= @@global.wsrep_sst_auth;
-SET @@global.wsrep_sst_auth= 'user:pass';
-SELECT @@global.wsrep_sst_auth;
-@@global.wsrep_sst_auth
-********
-SET @@global.wsrep_sst_auth= '';
-SELECT @@global.wsrep_sst_auth;
-@@global.wsrep_sst_auth
-
-SET @@global.wsrep_sst_auth= NULL;
-SELECT @@global.wsrep_sst_auth;
-@@global.wsrep_sst_auth
-NULL
-SET @@global.wsrep_sst_auth= @wsrep_sst_auth_saved;
-# End of test.
diff --git a/mysql-test/suite/wsrep/t/variables_debug.cnf b/mysql-test/suite/wsrep/t/variables_debug.cnf
deleted file mode 100644
index b1c96d2614d..00000000000
--- a/mysql-test/suite/wsrep/t/variables_debug.cnf
+++ /dev/null
@@ -1,7 +0,0 @@
-!include ../my.cnf
-
-[mysqld.1]
-wsrep-on=ON
-wsrep-cluster-address=gcomm://
-wsrep-provider=@ENV.WSREP_PROVIDER
-binlog-format=ROW
diff --git a/mysql-test/suite/wsrep/t/variables_debug.test b/mysql-test/suite/wsrep/t/variables_debug.test
deleted file mode 100644
index f2c3a0a3b78..00000000000
--- a/mysql-test/suite/wsrep/t/variables_debug.test
+++ /dev/null
@@ -1,176 +0,0 @@
---source include/have_wsrep.inc
---source include/force_restart.inc
---source include/have_innodb.inc
---source include/galera_have_debug_sync.inc
-
-call mtr.add_suppression("WSREP: Initial position was provided by configuration or SST, avoiding override");
-
-SET @wsrep_provider_options_saved= @@global.wsrep_provider_options;
-SET @wsrep_cluster_address_saved= @@global.wsrep_cluster_address;
-
---echo
---echo # MDEV#5534: mysql_tzinfo_to_sql generates wrong query
---echo #
---echo # Testing wsrep_replicate_myisam variable.
-
---error ER_INCORRECT_GLOBAL_LOCAL_VAR
-SELECT @@session.wsrep_replicate_myisam;
-SELECT @@global.wsrep_replicate_myisam;
-
---error ER_GLOBAL_VARIABLE
-SET SESSION wsrep_replicate_myisam= ON;
-SET GLOBAL wsrep_replicate_myisam= ON;
-
-# Reset it back.
-SET GLOBAL wsrep_replicate_myisam= OFF;
-SET GLOBAL wsrep_provider=none;
-
---echo #
---echo # MDEV#5790: SHOW GLOBAL STATUS LIKE does not show the correct list of
---echo # variables when using "_"
---echo #
-
-CALL mtr.add_suppression("WSREP: Could not open saved state file for reading.*");
-
---disable_query_log
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
---enable_query_log
-
---replace_column 2 #
-SHOW GLOBAL STATUS LIKE 'wsrep%';
-
---echo
---replace_column 2 #
-SHOW GLOBAL STATUS LIKE 'wsrep_%';
-
---replace_column 2 #
-SHOW GLOBAL STATUS LIKE 'wsrep_local_state_comment';
-
---echo # Should show nothing.
-SHOW STATUS LIKE 'x';
-
-# Reset it back.
-SET GLOBAL wsrep_provider=none;
-
---disable_query_log
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
---enable_query_log
-
-# The following 2 variables are used by mariabackup
-# SST.
---echo
---replace_column 2 #
-SHOW STATUS LIKE 'wsrep_local_state_uuid';
---echo
---replace_column 2 #
-SHOW STATUS LIKE 'wsrep_last_committed';
-
-# Reset it back.
-SET GLOBAL wsrep_provider=none;
-
---echo
---echo #
---echo # MDEV#6206: wsrep_slave_threads subtracts from max_connections
---echo #
-call mtr.add_suppression("WSREP: Failed to get provider options");
-
---disable_query_log
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
---enable_query_log
-
---replace_regex /.*libgalera_smm.*/libgalera_smm.so/
-SELECT @@global.wsrep_provider;
-SELECT @@global.wsrep_slave_threads;
-SELECT @@global.wsrep_cluster_address;
-SELECT @@global.wsrep_on;
-SHOW STATUS LIKE 'threads_connected';
-SHOW STATUS LIKE 'wsrep_thread_count';
---echo
-
---disable_query_log
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
---enable_query_log
-
---replace_regex /.*libgalera_smm.*/libgalera_smm.so/
-SELECT @@global.wsrep_provider;
-SELECT @@global.wsrep_cluster_address;
-SELECT @@global.wsrep_on;
-SHOW STATUS LIKE 'threads_connected';
-SHOW STATUS LIKE 'wsrep_thread_count';
---echo
-
---echo # Setting wsrep_cluster_address triggers the creation of
---echo # applier/rollbacker threads.
-SET GLOBAL wsrep_cluster_address= 'gcomm://';
-
---echo # Wait for applier thread to get created 1.
---let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
---source include/wait_condition.inc
---echo # Wait for applier thread to get created 2.
---let $wait_condition = SELECT VARIABLE_VALUE = 1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_rollbacker_thread_count';
---source include/wait_condition.inc
-
-SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
-SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_rollbacker_thread_count';
-SELECT VARIABLE_VALUE AS EXPECT_2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_thread_count';
-
---replace_regex /.*libgalera_smm.*/libgalera_smm.so/
-SELECT @@global.wsrep_provider;
-SELECT @@global.wsrep_cluster_address;
-SELECT @@global.wsrep_on;
-SHOW STATUS LIKE 'threads_connected';
-SHOW STATUS LIKE 'wsrep_thread_count';
---echo
-
-SET @wsrep_slave_threads_saved= @@global.wsrep_slave_threads;
-SET GLOBAL wsrep_slave_threads= 10;
-
---echo # Wait for 9 applier threads to get created.
---let $wait_condition = SELECT VARIABLE_VALUE = 10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
---source include/wait_condition.inc
-
-SELECT VARIABLE_VALUE AS EXPECT_10 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_applier_thread_count';
-SELECT VARIABLE_VALUE AS EXPECT_1 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_rollbacker_thread_count';
-SELECT VARIABLE_VALUE AS EXPECT_11 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_thread_count';
-
-SHOW STATUS LIKE 'threads_connected';
-
-#
-# privileges for wsrep_on
-#
-set wsrep_on=0;
-set wsrep_on=1;
---source include/wait_until_connected_again.inc
-create user test@localhost;
-connect con1,localhost,test;
-set auto_increment_increment=10;
---error ER_SPECIFIC_ACCESS_DENIED_ERROR
-set wsrep_on=0;
-disconnect con1;
-connection default;
-drop user test@localhost;
-
---echo #
---echo # MDEV#6411: Setting set @@global.wsrep_sst_auth=NULL causes crash
---echo #
-SET @wsrep_sst_auth_saved= @@global.wsrep_sst_auth;
-SET @@global.wsrep_sst_auth= 'user:pass';
-SELECT @@global.wsrep_sst_auth;
-SET @@global.wsrep_sst_auth= '';
-SELECT @@global.wsrep_sst_auth;
-SET @@global.wsrep_sst_auth= NULL;
-SELECT @@global.wsrep_sst_auth;
-SET @@global.wsrep_sst_auth= @wsrep_sst_auth_saved;
-
-# Reset (for mtr internal checks)
-
---disable_query_log
-SET GLOBAL wsrep_slave_threads= @wsrep_slave_threads_saved;
-eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
-SET GLOBAL wsrep_cluster_address= @wsrep_cluster_address_saved;
-SET GLOBAL wsrep_provider_options= @wsrep_provider_options_saved;
---enable_query_log
-
---source include/galera_wait_ready.inc
-
---echo # End of test.