diff options
Diffstat (limited to 'mysql-test/suite/galera/t/galera_wsrep_provider_unset_set.test')
-rw-r--r-- | mysql-test/suite/galera/t/galera_wsrep_provider_unset_set.test | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/mysql-test/suite/galera/t/galera_wsrep_provider_unset_set.test b/mysql-test/suite/galera/t/galera_wsrep_provider_unset_set.test new file mode 100644 index 00000000000..fe4c358bd89 --- /dev/null +++ b/mysql-test/suite/galera/t/galera_wsrep_provider_unset_set.test @@ -0,0 +1,41 @@ +# +# Test that wsrep_provider can be unset and then set back to its original value +# and replication will continue except for any updates made while the value was 'none' +# + +--source include/galera_cluster.inc +--source include/have_innodb.inc + +--connection node_1 +CREATE TABLE t1 (f1 INTEGER) ENGINE=InnoDB; +INSERT INTO t1 VALUES (1); + +--connection node_2 +--let $wsrep_provider_orig = `SELECT @@wsrep_provider` +--let $wsrep_cluster_address_orig = `SELECT @@wsrep_cluster_address` + +SET GLOBAL wsrep_provider='none'; +INSERT INTO t1 VALUES (2); + +--connection node_1 +INSERT INTO t1 VALUES (3); + +--connection node_2 +--disable_query_log +--eval SET GLOBAL wsrep_provider = '$wsrep_provider_orig'; +--eval SET GLOBAL wsrep_cluster_address = '$wsrep_cluster_address_orig'; +--enable_query_log + +--source include/wait_until_connected_again.inc +--source include/galera_wait_ready.inc + +INSERT INTO t1 VALUES (4); + +# Node #2 has all the inserts +SELECT COUNT(*) = 4 FROM t1; + +--connection node_1 +# Node #1 is missing the insert made while Node #2 was not replicated +SELECT COUNT(*) = 3 FROM t1; + +DROP TABLE t1; |