Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
added galera_autoinc_sst_mariabackup test
- Loading branch information
Showing
3 changed files
with
155 additions
and
0 deletions.
There are no files selected for viewing
47 changes: 47 additions & 0 deletions
47
mysql-test/suite/galera/r/galera_autoinc_sst_mariabackup.result
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
connection node_1; | ||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB; | ||
CREATE PROCEDURE p1 () | ||
BEGIN | ||
DECLARE x INT DEFAULT 1; | ||
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END; | ||
WHILE 1 DO | ||
INSERT INTO t1 VALUES (DEFAULT); | ||
COMMIT; | ||
END WHILE; | ||
END| | ||
CALL p1();; | ||
connection node_2; | ||
CALL p1();; | ||
connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2; | ||
connection node_2a; | ||
Killing server ... | ||
INSERT INTO t1 VALUES (DEFAULT); | ||
connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1; | ||
connection node_1a; | ||
INSERT INTO t1 VALUES (DEFAULT); | ||
connection node_1; | ||
Got one of the listed errors | ||
connection node_2; | ||
Got one of the listed errors | ||
connection node_1a; | ||
connection node_2a; | ||
count_equal | ||
1 | ||
CALL mtr.add_suppression("WSREP: Action message in non-primary configuration from member 0"); | ||
SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
VARIABLE_VALUE | ||
2 | ||
SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
VARIABLE_VALUE = 2 | ||
1 | ||
connection node_1a; | ||
SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
VARIABLE_VALUE | ||
2 | ||
SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
VARIABLE_VALUE = 2 | ||
1 | ||
DROP PROCEDURE p1; | ||
DROP TABLE t1; | ||
CALL mtr.add_suppression("gcs_caused\\(\\) returned -1 \\(Operation not permitted\\)"); | ||
CALL mtr.add_suppression("WSREP: Action message in non-primary configuration from member 0"); |
12 changes: 12 additions & 0 deletions
12
mysql-test/suite/galera/t/galera_autoinc_sst_mariabackup.cnf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
!include ../galera_2nodes.cnf | ||
|
||
[mysqld] | ||
wsrep_sst_method=mariabackup | ||
wsrep_sst_auth="root:" | ||
|
||
[mysqld.1] | ||
wsrep_provider_options='base_port=@mysqld.1.#galera_port;gcache.size=1;pc.ignore_sb=true' | ||
|
||
[mysqld.2] | ||
wsrep_provider_options='base_port=@mysqld.2.#galera_port;gcache.size=1;pc.ignore_sb=true' | ||
|
96 changes: 96 additions & 0 deletions
96
mysql-test/suite/galera/t/galera_autoinc_sst_mariabackup.test
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
# | ||
# Test that autoincrement works correctly while the cluster membership | ||
# is changing and SST takes place. | ||
# | ||
|
||
--source include/big_test.inc | ||
--source include/galera_cluster.inc | ||
--source include/have_innodb.inc | ||
--source include/have_mariabackup.inc | ||
|
||
--connection node_1 | ||
--let $connection_id = `SELECT CONNECTION_ID()` | ||
|
||
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB; | ||
|
||
# Issue an endless stream of autoincrement inserts | ||
|
||
DELIMITER |; | ||
CREATE PROCEDURE p1 () | ||
BEGIN | ||
DECLARE x INT DEFAULT 1; | ||
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION BEGIN END; | ||
|
||
WHILE 1 DO | ||
INSERT INTO t1 VALUES (DEFAULT); | ||
COMMIT; | ||
END WHILE; | ||
END| | ||
DELIMITER ;| | ||
|
||
--send CALL p1(); | ||
--sleep 2 | ||
|
||
--connection node_2 | ||
--send CALL p1(); | ||
--sleep 2 | ||
|
||
# Kill and restart node #2 | ||
|
||
--connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2 | ||
--connection node_2a | ||
--source include/kill_galera.inc | ||
|
||
--sleep 10 | ||
--source include/start_mysqld.inc | ||
--sleep 25 | ||
--source include/wait_until_connected_again.inc | ||
|
||
INSERT INTO t1 VALUES (DEFAULT); | ||
|
||
# Terminate the stored procedure | ||
|
||
--connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1 | ||
--connection node_1a | ||
--disable_query_log | ||
--eval KILL CONNECTION $connection_id | ||
--enable_query_log | ||
|
||
INSERT INTO t1 VALUES (DEFAULT); | ||
|
||
--connection node_1 | ||
# CR_SERVER_LOST | ||
--error 2013,2006 | ||
--reap | ||
|
||
--connection node_2 | ||
# CR_SERVER_LOST | ||
--error 2013,2006 | ||
--reap | ||
|
||
--sleep 10 | ||
|
||
# Confirm that the count is correct and that the cluster is intact | ||
|
||
--connection node_1a | ||
--let $count = `SELECT COUNT(*) FROM t1` | ||
|
||
--connection node_2a | ||
--disable_query_log | ||
--eval SELECT COUNT(*) = $count AS count_equal FROM t1 | ||
--enable_query_log | ||
|
||
CALL mtr.add_suppression("WSREP: Action message in non-primary configuration from member 0"); | ||
|
||
SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
|
||
--connection node_1a | ||
SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size'; | ||
|
||
DROP PROCEDURE p1; | ||
DROP TABLE t1; | ||
|
||
CALL mtr.add_suppression("gcs_caused\\(\\) returned -1 \\(Operation not permitted\\)"); | ||
CALL mtr.add_suppression("WSREP: Action message in non-primary configuration from member 0"); |