1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

galera mtr tests: synchronization of tests between branches

This commit is contained in:
Julius Goryavsky
2024-02-20 00:57:55 +01:00
parent 65545a3df2
commit c9a6adba1e
75 changed files with 394 additions and 164 deletions

View File

@@ -11,3 +11,6 @@
##############################################################################
galera_sequences : MDEV-35934/MDEV-33850 For Galera, create sequence with low cache got signal 6 error: [ERROR] WSREP: FSM: no such a transition REPLICATING -> COMMITTED
galera_wan : MDEV-35940 Unallowed state transition: donor -> synced in galera_wan
galera_bf_abort_lock_table : MDEV-35941 galera_bf_abort_lock_table fails with wait for metadata lock
mysql-wsrep#198 : MDEV-35941 galera_bf_abort_lock_table fails with wait for metadata lock

View File

@@ -1,11 +1,11 @@
connection node_2;
connection node_1;
connection node_1;
connection node_2;
connection node_1;
SET GLOBAL auto_increment_offset=1;
connection node_2;
SET GLOBAL auto_increment_offset=2;
connection node_1;
connection node_2;
connection node_2;
SET GLOBAL wsrep_forced_binlog_format='STATEMENT';
connection node_1;

View File

@@ -1,8 +1,8 @@
connection node_2;
connection node_1;
# Correct Galera library found
SELECT COUNT(*) `expect 49` FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME LIKE 'wsrep_%';
expect 49
SELECT COUNT(*) `expect 50` FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME LIKE 'wsrep_%';
expect 50
50
SELECT VARIABLE_NAME, VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES

View File

@@ -99,19 +99,19 @@ Killing server ...
connection node_1;
Killing server ...
connection node_1_insert_simple;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1_insert_multi;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1_insert_transaction;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1_update_simple;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1_insert_1k;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1_insert_1m;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1_insert_10m;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1;
Performing --wsrep-recover ...
Using --wsrep-start-position when starting mysqld ...

View File

@@ -10,31 +10,31 @@ INSERT INTO t1 VALUES (1);
INSERT INTO t2 VALUES (1);
connection node_2a;
SET SESSION wsrep_sync_wait=0;
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%committing%';
COUNT(*) = 1
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE (STATE LIKE '%committing%' or STATE = 'Waiting for certification');
EXPECT_1
1
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%Waiting for table metadata lock%';
COUNT(*) = 1
1
SELECT COUNT(*) = 0 FROM t1;
COUNT(*) = 0
1
SELECT COUNT(*) = 0 FROM t2;
COUNT(*) = 0
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%Waiting for table metadata lock%';
EXPECT_1
1
SELECT COUNT(*) AS EXPECT_0 FROM t1;
EXPECT_0
0
SELECT COUNT(*) AS EXPECT_0 FROM t2;
EXPECT_0
0
connection node_2;
UNLOCK TABLES;
connection node_2a;
SET SESSION wsrep_sync_wait = 15;;
SELECT COUNT(*) = 1 FROM t1;
COUNT(*) = 1
SELECT COUNT(*) AS EXPECT_1 FROM t1;
EXPECT_1
1
SELECT COUNT(*) = 1 FROM t2;
COUNT(*) = 1
1
SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%committed%';
COUNT(*) = 2
SELECT COUNT(*) AS EXPECT_1 FROM t2;
EXPECT_1
1
SELECT COUNT(*) AS EXPECT_2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE (STATE LIKE '%committed%' or STATE = 'Waiting for certification');
EXPECT_2
2
SET GLOBAL wsrep_slave_threads = 1;;
DROP TABLE t1;
DROP TABLE t2;

View File

@@ -1,5 +1,10 @@
connection node_2;
connection node_1;
connection node_2;
SET GLOBAL wsrep_ignore_apply_errors=0;
connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2;
connection node_2a;
SET SESSION wsrep_sync_wait=0;
SET GLOBAL wsrep_ignore_apply_errors=0;
SET SESSION AUTOCOMMIT=0;
SET SESSION max_error_count=0;
@@ -8,5 +13,4 @@ ERROR 42000: This version of MariaDB doesn't yet support 'non-InnoDB sequences i
connection node_2;
SHOW CREATE TABLE t0;
ERROR 42S02: Table 'test.t0' doesn't exist
connection node_1;
SET GLOBAL wsrep_ignore_apply_errors=DEFAULT;
disconnect node_2a;

View File

@@ -249,10 +249,13 @@ CREATE SEQUENCE t INCREMENT BY 0 CACHE=20 ENGINE=INNODB;
ALTER TABLE t ENGINE=MYISAM;
ERROR 42000: This version of MariaDB doesn't yet support 'non-InnoDB sequences in Galera cluster'
ALTER SEQUENCE t INCREMENT BY 1 CACHE=10;
ERROR 42000: This version of MariaDB doesn't yet support 'CACHE without INCREMENT BY 0 in Galera cluster'
ERROR 42000: This version of MariaDB doesn't yet support 'non-InnoDB sequences in Galera cluster'
ALTER SEQUENCE t INCREMENT BY 1 NOCACHE;
ERROR 42000: This version of MariaDB doesn't yet support 'non-InnoDB sequences in Galera cluster'
ALTER SEQUENCE t INCREMENT BY 0 NOCACHE;
ERROR 42000: This version of MariaDB doesn't yet support 'non-InnoDB sequences in Galera cluster'
ALTER SEQUENCE t INCREMENT BY 0 CACHE=10;
ERROR 42000: This version of MariaDB doesn't yet support 'non-InnoDB sequences in Galera cluster'
DROP SEQUENCE t;
CREATE SEQUENCE t INCREMENT BY 0 CACHE=20 ENGINE=INNODB;
CREATE TABLE t1(a int not null primary key default nextval(t), b int) engine=innodb;

View File

@@ -23,6 +23,22 @@ connection node_1a;
connection node_1b;
connection node_2;
connection node_2a;
connection node_1;
SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) FROM parent;
COUNT(*)
20001
SELECT COUNT(*) FROM child;
COUNT(*)
10000
connection node_2;
SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) FROM parent;
COUNT(*)
20001
SELECT COUNT(*) FROM child;
COUNT(*)
10000
DROP TABLE child;
DROP TABLE parent;
DROP TABLE ten;

View File

@@ -1,9 +1,9 @@
connection node_2;
connection node_1;
CALL mtr.add_suppression("WSREP: Stray state UUID msg: ");
CALL mtr.add_suppression("Sending JOIN failed: ");
CALL mtr.add_suppression("WSREP: .*Sending JOIN failed: ");
CALL mtr.add_suppression("WSREP: .*sending install message failed: Socket is not connected");
CALL mtr.add_suppression("There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside");
CALL mtr.add_suppression("WSREP: .*There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside");
SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
VARIABLE_VALUE = 4
1
@@ -36,8 +36,8 @@ VARIABLE_VALUE LIKE '%gmcast.segment = 3%'
1
DROP TABLE t1;
connection node_1;
call mtr.add_suppression("WSREP: read_completion_condition.*");
call mtr.add_suppression("WSREP: read_handler.*");
call mtr.add_suppression("WSREP: read_completion_condition");
call mtr.add_suppression("WSREP: read_handler");
disconnect node_3;
disconnect node_4;
disconnect node_2;

View File

@@ -10,7 +10,7 @@ SELECT VARIABLE_VALUE AS EXPECT_4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VA
EXPECT_4
4
connection node_1;
CREATE TABLE t1 (f1 INTEGER);
CREATE TABLE t1 (f1 INTEGER NOT NULL PRIMARY KEY) ENGINE=INNODB;
INSERT INTO t1 VALUES (1);
connection node_2;
INSERT INTO t1 VALUES (2);
@@ -20,6 +20,8 @@ connection node_4;
INSERT INTO t1 VALUES (4);
connection node_3;
INSERT INTO t1 VALUES (13);
connection node_1;
connection node_3;
Killing server ...
connection node_1;
INSERT INTO t1 VALUES (11);
@@ -29,8 +31,11 @@ connection node_4;
INSERT INTO t1 VALUES (14);
connection node_3;
INSERT INTO t1 VALUES (131);
connection node_1;
connection node_2;
INSERT INTO t1 VALUES (22);
connection node_1;
connection node_2;
Killing server ...
connection node_1;
INSERT INTO t1 VALUES (21);
@@ -42,6 +47,8 @@ connection node_2;
INSERT INTO t1 VALUES (221);
connection node_4;
INSERT INTO t1 VALUES (34);
connection node_1;
connection node_4;
Killing server ...
connection node_1;
INSERT INTO t1 VALUES (31);

View File

@@ -1,7 +1,7 @@
connection node_2;
connection node_1;
call mtr.add_suppression("WSREP\: Unknown parameter 'gmcasts\\.segment'");
call mtr.add_suppression("WSREP\: Set options returned 7");
call mtr.add_suppression("WSREP: Unknown parameter 'gmcasts\\.segment'");
call mtr.add_suppression("WSREP: Set options returned 7");
SET GLOBAL wsrep_provider_options="gmcasts.segment=1";
ERROR HY000: Incorrect arguments to SET
Unhandled exceptions: 0

View File

@@ -3,10 +3,17 @@ connection node_1;
connection node_1;
connection node_2;
connection node_1;
call mtr.add_suppression("WSREP:.*");
call mtr.add_suppression("WSREP: async IST sender failed to serve");
call mtr.add_suppression("WSREP: Failed to establish connection: Connection refused");
call mtr.add_suppression("WSREP: IST failed: IST sender, failed to connect");
call mtr.add_suppression("WSREP: .*State transfer.* failed: Protocol error");
SET @wsrep_provider_options_orig = @@GLOBAL.wsrep_provider_options;
SET GLOBAL wsrep_provider_options ='pc.ignore_sb=true;pc.weight=2';
connection node_2;
call mtr.add_suppression("WSREP: async IST sender failed to serve");
call mtr.add_suppression("WSREP: Failed to establish connection: Connection refused");
call mtr.add_suppression("WSREP: IST failed: IST sender, failed to connect");
call mtr.add_suppression("WSREP: .*State transfer.* failed: Protocol error");
SET @wsrep_cluster_address_orig = @@GLOBAL.wsrep_cluster_address;
SET GLOBAL WSREP_ON=0;
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;

View File

@@ -31,3 +31,6 @@ test.t1 repair note The storage engine for the table doesn't support repair
test.t2 repair note The storage engine for the table doesn't support repair
DROP TABLE t1;
DROP TABLE t2;
connection node_1;
disconnect node_2a;
disconnect node_2b;

View File

@@ -1,5 +1,6 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_sequence.inc
CREATE SEQUENCE Seq1_1 START WITH 1 INCREMENT BY 1 NOCACHE;
CREATE TABLE t1 (Id int(11) NOT NULL, PRIMARY KEY (Id));

View File

@@ -1,5 +1,6 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_sequence.inc
--disable_ps2_protocol

View File

@@ -3,6 +3,7 @@
# statement is rolled back
#
--source include/galera_cluster.inc
--source include/have_aria.inc
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY) engine=innodb;
CREATE TABLE t2 (f1 INTEGER PRIMARY KEY) engine=aria;

View File

@@ -2,3 +2,12 @@
[mysqld]
log-bin
log-slave-updates
[mysqld.1]
auto-increment-increment=2
auto-increment-offset=1
[mysqld.2]
auto-increment-increment=2
auto-increment-offset=2

View File

@@ -1,6 +1,5 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_aria.inc
SET AUTOCOMMIT=ON;
SELECT @@autocommit;

View File

@@ -0,0 +1,13 @@
!include ../galera_2nodes.cnf
[mysqld]
log-bin
log-slave-updates
[mysqld.1]
auto-increment-increment=2
auto-increment-offset=1
[mysqld.2]
auto-increment-increment=2
auto-increment-offset=2

View File

@@ -1,4 +1,5 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_aria.inc
create table t1(id serial, val varchar(100)) engine=myisam;
@@ -38,7 +39,6 @@ insert into t5 select null, 'c';
insert into t5 select null, 'd' from t5;
select * from t2;
--connection node_2
select * from t1;
select * from t2;
@@ -46,8 +46,6 @@ select * from t3;
select * from t4;
select * from t5;
--connection node_1
drop table t1,t2,t3,t4,t5;
set global wsrep_replicate_myisam=default;

View File

@@ -17,30 +17,30 @@ ALTER DATABASE db CHARACTER SET = utf8;
ALTER EVENT ev1 RENAME TO ev2;
--error 1370
ALTER FUNCTION fun1 COMMENT 'foo';
#--error 1044,1227
#--error 1044,1142,1227,1370
#ALTER INSTANCE ROTATE INNODB MASTER KEY;
--error 1044,1227
--error 1044,1142,1227,1370
ALTER LOGFILE GROUP lfg ADD UNDOFILE 'file' ENGINE=InnoDB;
--error 1044,1227,1370
--error 1044,1142,1227,1370
ALTER PROCEDURE proc1 COMMENT 'foo';
--error 1044,1227,1370
--error 1044,1142,1227,1370
ALTER SERVER srv OPTIONS (USER 'sally');
--error 1044,1142,1227,1370
ALTER TABLE tbl DROP COLUMN col;
--error 1044,1227,1370
--error 1044,1142,1227,1370
ALTER TABLESPACE tblspc DROP DATAFILE 'file' ENGINE=innodb;
--error 1044,1142,1227,1370
ALTER VIEW vw AS SELECT 1;
--error 1044,1227,1370
--error 1044,1142,1227,1370
CREATE DATABASE db;
--error 1044,1227,1370
--error 1044,1142,1227,1370
CREATE EVENT ev1 ON SCHEDULE AT CURRENT_TIMESTAMP DO SELECT 1;
--error 1044,1227,1370
--error 1044,1142,1227,1370
CREATE FUNCTION fun1() RETURNS int RETURN(1);
--error 1044,1227,1370
--error 1044,1142,1227,1370
CREATE FUNCTION fun1 RETURNS STRING SONAME 'funlib.so';
--error 1044,1227,1370
--error 1044,1142,1227,1370
CREATE PROCEDURE proc1() BEGIN END;
--error 1044,1142,1227,1370
CREATE INDEX idx ON tbl(id);
@@ -57,8 +57,6 @@ CREATE TRIGGER trg BEFORE UPDATE ON t FOR EACH ROW BEGIN END;
--error 1044,1142,1227,1370
CREATE VIEW vw AS SELECT 1;
--error 1044,1142,1227,1370
DROP DATABASE db;
--error 1044,1142,1227,1370
@@ -129,4 +127,3 @@ UNINSTALL PLUGIN plg;
--connection node_1
DROP USER 'userMW416'@'localhost';
SHOW DATABASES;

View File

@@ -3,7 +3,12 @@
# thrown from gcomm background thread, the provider terminates properly
# and wsrep_ready becomes 0.
#
# Not to be run with ASAN. Provider leaks memory when gcomm
# thread is aborted forcifully and ASAN crashes during leak report
# after provider is unloaded.
#
--source include/not_asan.inc
--source include/have_innodb.inc
--source include/galera_cluster.inc
--source include/galera_have_debug_sync.inc

View File

@@ -5,7 +5,6 @@
#
--source include/galera_cluster.inc
--source include/have_innodb.inc
--disable_warnings
DROP TABLE IF EXISTS t1, t2;
@@ -34,7 +33,6 @@ INSERT INTO x2 (f2) VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
--let $wait_condition = SELECT COUNT(*) = 10000 FROM t2;
--source include/wait_condition.inc
--echo # ANALYZE test
--connection node_2
--let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'`
@@ -46,8 +44,6 @@ ANALYZE TABLE t1, t2;
--let $wait_condition = SELECT VARIABLE_VALUE = $wsrep_last_committed_before + 1 FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'
--source include/wait_condition.inc
--echo # OPTIMIZE test
--connection node_2
--let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'`
@@ -59,8 +55,6 @@ OPTIMIZE TABLE t1, t2;
--let $wait_condition = SELECT VARIABLE_VALUE >= $wsrep_last_committed_before + 1 FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'
--source include/wait_condition.inc
--echo # REPAIR test
--connection node_2
--let $wsrep_last_committed_before = `SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'`
@@ -72,8 +66,6 @@ REPAIR TABLE x1, x2;
--let $wait_condition = SELECT VARIABLE_VALUE >= $wsrep_last_committed_before + 1 FROM INFORMATION_SCHEMA.SESSION_STATUS WHERE VARIABLE_NAME = 'wsrep_last_committed'
--source include/wait_condition.inc
--connection node_2
SELECT COUNT(*) = 10 FROM t1;
SELECT COUNT(*) = 10 FROM x1;
@@ -83,4 +75,5 @@ SELECT COUNT(*) = 10 FROM x2;
--connection node_1
DROP TABLE t1, t2;
DROP TABLE x1, x2;
SET GLOBAL wsrep_replicate_myisam = FALSE;

View File

@@ -56,7 +56,7 @@ ALTER TABLE t1 ADD COLUMN (f4 int(10));
# reach commit stage. In the unlikely case the interleaving is different, the
# result of the test should not change.
--connection node_1c
--let $wait_condition = SELECT COUNT(*)=1 FROM information_schema.processlist WHERE State='Commit' AND ID=$insert_id
--let $wait_condition = SELECT COUNT(*)=1 FROM information_schema.processlist WHERE (State='Commit' OR State='Waiting for certification') AND ID=$insert_id
--source include/wait_condition.inc
--let $wait_condition = SELECT COUNT(*)=1 FROM information_schema.metadata_lock_info WHERE TABLE_NAME='t1' AND THREAD_ID=$insert_id
--source include/wait_condition.inc
@@ -83,11 +83,11 @@ ALTER TABLE t1 ADD COLUMN (f4 int(10));
# wait for insert to get blocked
--connection node_1c
--let $wait_condition = SELECT COUNT(*)=1 FROM information_schema.processlist WHERE State='Commit' AND ID=$insert_id
--let $wait_condition = SELECT COUNT(*)=1 FROM information_schema.processlist WHERE (State='Commit' OR State='Waiting for certification') AND ID=$insert_id
--source include/wait_condition.inc
--let $wait_condition = SELECT COUNT(*)=1 FROM information_schema.metadata_lock_info WHERE TABLE_NAME='t1' AND THREAD_ID=$insert_id
--source include/wait_condition.inc
--let $wait_condition = SELECT COUNT(*)=2 FROM information_schema.processlist WHERE Info like 'INSERT INTO t1 (f1) values("node1%")' AND State = 'Commit'
--let $wait_condition = SELECT COUNT(*)=2 FROM information_schema.processlist WHERE Info like 'INSERT INTO t1 (f1) values("node1%")' AND (State='Commit' or State='Waiting for certification')
--source include/wait_condition.inc
# nothing after BLOCK_DDL is applied

View File

@@ -5,15 +5,15 @@
--source include/galera_cluster.inc
--source include/force_restart.inc
--let $node_1=node_1
--let $node_2=node_2
--source include/auto_increment_offset_save.inc
--connection node_1
SET GLOBAL auto_increment_offset=1;
--connection node_2
SET GLOBAL auto_increment_offset=2;
--let $node_1=node_1
--let $node_2=node_2
--source include/auto_increment_offset_save.inc
##
## Verify the correct operation of the auto-increment when the binlog
## format artificially set to the 'STATEMENT' (although this mode is

View File

@@ -1,4 +1,5 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
CREATE TABLE t1 (c1 int, UNIQUE INDEX (c1)) engine=innodb;
INSERT INTO t1 VALUES (1),(2),(3),(4),(5);

View File

@@ -1,4 +1,5 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
#
# MDEV-24833 : Signal 11 on wsrep_can_run_in_toi at wsrep_mysqld.cc:1994
#

View File

@@ -40,4 +40,3 @@ DROP TABLE definer_root;
DROP TABLE definer_default;
DROP USER 'user1';

View File

@@ -1,4 +1,6 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_aria.inc
--connection node_1
create table t1_Aria(a int, count int, b int, key(b)) engine=Aria;
@@ -36,4 +38,3 @@ SHOW CREATE TABLE t4;
DROP TABLE t2, t3,t4;
DROP TABLE t1_MyISAM, t1_Aria,t1_InnoDB;

View File

@@ -13,12 +13,12 @@
--source include/force_restart.inc
# Make sure that the test is operating on the right version of galera library.
--let $galera_version=26.4.8
--let $galera_version=26.4.11
source ../wsrep/include/check_galera_version.inc;
# Global Variables
SELECT COUNT(*) `expect 49` FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME LIKE 'wsrep_%';
SELECT COUNT(*) `expect 50` FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME LIKE 'wsrep_%';
SELECT VARIABLE_NAME, VARIABLE_VALUE
FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES

View File

@@ -141,31 +141,31 @@ SET SESSION wsrep_sync_wait = 0;
--source include/kill_galera.inc
--connection node_1_insert_simple
--error 2013
--error 2013, 2026
--reap
--connection node_1_insert_multi
--error 2013
--error 2013, 2026
--reap
--connection node_1_insert_transaction
--error 2013
--error 2013, 2026
--reap
--connection node_1_update_simple
--error 2013
--error 2013, 2026
--reap
--connection node_1_insert_1k
--error 2013
--error 2013, 2026
--reap
--connection node_1_insert_1m
--error 2013
--error 2013, 2026
--reap
--connection node_1_insert_10m
--error 2013
--error 2013, 2026
--reap
--connection node_1

View File

@@ -32,19 +32,19 @@ INSERT INTO t2 VALUES (1);
--connection node_2a
--sleep 1
SET SESSION wsrep_sync_wait=0;
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%committing%';
SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%Waiting for table metadata lock%';
SELECT COUNT(*) = 0 FROM t1;
SELECT COUNT(*) = 0 FROM t2;
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE (STATE LIKE '%committing%' or STATE = 'Waiting for certification');
SELECT COUNT(*) AS EXPECT_1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%Waiting for table metadata lock%';
SELECT COUNT(*) AS EXPECT_0 FROM t1;
SELECT COUNT(*) AS EXPECT_0 FROM t2;
--connection node_2
UNLOCK TABLES;
--connection node_2a
--eval SET SESSION wsrep_sync_wait = $wsrep_sync_wait_orig;
SELECT COUNT(*) = 1 FROM t1;
SELECT COUNT(*) = 1 FROM t2;
SELECT COUNT(*) = 2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE '%committed%';
SELECT COUNT(*) AS EXPECT_1 FROM t1;
SELECT COUNT(*) AS EXPECT_1 FROM t2;
SELECT COUNT(*) AS EXPECT_2 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE (STATE LIKE '%committed%' or STATE = 'Waiting for certification');
--eval SET GLOBAL wsrep_slave_threads = $wsrep_slave_threads_orig;
DROP TABLE t1;

View File

@@ -51,7 +51,7 @@ SET SESSION wsrep_sync_wait = 0;
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE 'Waiting for table metadata lock%';
--source include/wait_condition.inc
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE STATE LIKE 'committing%';
--let $wait_condition = SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST WHERE (STATE LIKE '%committing%' or STATE = 'Waiting for certification');
--source include/wait_condition.inc
UNLOCK TABLES;

View File

@@ -33,8 +33,8 @@ SELECT COUNT(*) = 1 FROM t1;
# Perform --wsrep-recover and preserve the positions into variables by placing them in $MYSQL_TMP_DIR/galera_wsrep_start_position.inc and then --source'ing it
--exec $MYSQLD --defaults-group-suffix=.1 --defaults-file=$MYSQLTEST_VARDIR/my.cnf --innodb --wsrep-recover --log-error=$MYSQL_TMP_DIR/galera_wsrep_recover.1.log > $MYSQL_TMP_DIR/galera_wsrep_recover.1.log 2>&1
--exec $MYSQLD --defaults-group-suffix=.2 --defaults-file=$MYSQLTEST_VARDIR/my.cnf --innodb --wsrep-recover --log-error=$MYSQL_TMP_DIR/galera_wsrep_recover.2.log > $MYSQL_TMP_DIR/galera_wsrep_recover.2.log 2>&1
--exec $MYSQLD --defaults-group-suffix=.1 --defaults-file=$MYSQLTEST_VARDIR/my.cnf --wsrep-recover --loose-innodb --log-error=$MYSQL_TMP_DIR/galera_wsrep_recover.1.log > $MYSQL_TMP_DIR/galera_wsrep_recover.1.log 2>&1
--exec $MYSQLD --defaults-group-suffix=.2 --defaults-file=$MYSQLTEST_VARDIR/my.cnf --wsrep-recover --loose-innodb --log-error=$MYSQL_TMP_DIR/galera_wsrep_recover.2.log > $MYSQL_TMP_DIR/galera_wsrep_recover.2.log 2>&1
--perl
use strict;

View File

@@ -47,4 +47,3 @@ DROP TABLE t2;
SET GLOBAL read_only=FALSE;
DROP TABLE t1;
DROP USER foo@localhost;

View File

@@ -1,6 +1,13 @@
--source include/galera_cluster.inc
--source include/have_sequence.inc
--connection node_2
let $restore_wsrep_ignore_apply_errors=`SELECT @@GLOBAL.wsrep_ignore_apply_errors`;
SET GLOBAL wsrep_ignore_apply_errors=0;
--connect node_2a, 127.0.0.1, root, , test, $NODE_MYPORT_2
--connection node_2a
SET SESSION wsrep_sync_wait=0;
SET GLOBAL wsrep_ignore_apply_errors=0;
SET SESSION AUTOCOMMIT=0;
SET SESSION max_error_count=0;
@@ -11,6 +18,8 @@ CREATE TABLE t0 (id GEOMETRY,parent_id GEOMETRY)ENGINE=SEQUENCE;
--error ER_NO_SUCH_TABLE
SHOW CREATE TABLE t0;
--connection node_1
SET GLOBAL wsrep_ignore_apply_errors=DEFAULT;
--disable_query_log
--eval SET GLOBAL wsrep_ignore_apply_errors=$restore_wsrep_ignore_apply_errors
--enable_query_log
--disconnect node_2a

View File

@@ -1,5 +1,6 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/have_sequence.inc
#
# MDEV-19353 : Alter Sequence do not replicate to another nodes with in Galera Cluster
@@ -283,8 +284,11 @@ CREATE SEQUENCE t INCREMENT BY 0 CACHE=20 ENGINE=INNODB;
ALTER TABLE t ENGINE=MYISAM;
--error ER_NOT_SUPPORTED_YET
ALTER SEQUENCE t INCREMENT BY 1 CACHE=10;
--error ER_NOT_SUPPORTED_YET
ALTER SEQUENCE t INCREMENT BY 1 NOCACHE;
--error ER_NOT_SUPPORTED_YET
ALTER SEQUENCE t INCREMENT BY 0 NOCACHE;
--error ER_NOT_SUPPORTED_YET
ALTER SEQUENCE t INCREMENT BY 0 CACHE=10;
DROP SEQUENCE t;

View File

@@ -54,11 +54,15 @@ INSERT INTO parent VALUES (1, 0);
--connection node_2a
--reap
#
# ALTER TABLE could bf kill one or more of INSERTs to parent, so
# the actual number of rows in PARENT depends on whether
# the INSERT is committed before ALTER TABLE is executed
#
--connection node_1
SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) FROM parent;
SELECT COUNT(*) FROM child;
--connection node_2
SET SESSION wsrep_sync_wait=15;
SELECT COUNT(*) FROM parent;
SELECT COUNT(*) FROM child;
DROP TABLE child;
DROP TABLE parent;

View File

@@ -22,11 +22,11 @@ SELECT * FROM t1;
# Original behavior was lost connection,
# but since 10.1, we allow controlling connection to remain alive
#
--error 0,2013
--error 0,2013,2026
SET GLOBAL wsrep_reject_queries = ALL_KILL;
--connection node_1a
--error ER_CONNECTION_KILLED,2013,2006
--error ER_CONNECTION_KILLED,2013,2006,2026
SELECT * FROM t1;
--connect node_1b, 127.0.0.1, root, , test, $NODE_MYPORT_1

View File

@@ -64,6 +64,7 @@ SELECT COUNT(*) FROM t1;
SET DEBUG_SYNC = 'now SIGNAL wsrep_retry_autocommit_continue';
--connection node_1
--error 0,ER_LOCK_DEADLOCK
--reap
SELECT COUNT(*) FROM t1;

View File

@@ -14,4 +14,3 @@ wsrep_provider_options='base_port=@mysqld.3.#galera_port;gcache.size=10M;gmcast.
[mysqld.4]
wsrep_provider_options='base_port=@mysqld.4.#galera_port;gcache.size=10M;gmcast.segment=3'

View File

@@ -11,9 +11,9 @@
--source include/force_restart.inc
CALL mtr.add_suppression("WSREP: Stray state UUID msg: ");
CALL mtr.add_suppression("Sending JOIN failed: ");
CALL mtr.add_suppression("WSREP: .*Sending JOIN failed: ");
CALL mtr.add_suppression("WSREP: .*sending install message failed: Socket is not connected");
CALL mtr.add_suppression("There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside");
CALL mtr.add_suppression("WSREP: .*There are no nodes in the same segment that will ever be able to become donors, yet there is a suitable donor outside");
--let $wait_condition = SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc
@@ -42,8 +42,8 @@ SELECT VARIABLE_VALUE LIKE '%gmcast.segment = 3%' FROM INFORMATION_SCHEMA.GLOBAL
DROP TABLE t1;
--connection node_1
call mtr.add_suppression("WSREP: read_completion_condition.*");
call mtr.add_suppression("WSREP: read_handler.*");
call mtr.add_suppression("WSREP: read_completion_condition");
call mtr.add_suppression("WSREP: read_handler");
--disconnect node_3
--disconnect node_4

View File

@@ -14,4 +14,3 @@ wsrep_provider_options='base_port=@mysqld.3.#galera_port;gmcast.segment=2'
[mysqld.4]
wsrep_provider_options='base_port=@mysqld.4.#galera_port;gmcast.segment=2'

View File

@@ -29,7 +29,7 @@
SELECT VARIABLE_VALUE AS EXPECT_4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--connection node_1
CREATE TABLE t1 (f1 INTEGER);
CREATE TABLE t1 (f1 INTEGER NOT NULL PRIMARY KEY) ENGINE=INNODB;
INSERT INTO t1 VALUES (1);
--connection node_2
@@ -47,10 +47,20 @@ INSERT INTO t1 VALUES (4);
--connection node_3
INSERT INTO t1 VALUES (13);
--source include/kill_galera.inc
--let $wait_condition = SELECT COUNT(*) = 5 FROM t1;
--source include/wait_condition.inc
--connection node_1
--let $wait_condition = SELECT COUNT(*) = 5 FROM t1;
--source include/wait_condition.inc
--connection node_3
--source include/kill_galera.inc
--remove_file $MYSQLTEST_VARDIR/mysqld.3/data/grastate.dat
--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
INSERT INTO t1 VALUES (11);
--connection node_2
@@ -64,6 +74,10 @@ INSERT INTO t1 VALUES (14);
INSERT INTO t1 VALUES (131);
--connection node_1
--let $wait_condition = SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc
#
# Restart node #2
#
@@ -71,9 +85,17 @@ INSERT INTO t1 VALUES (131);
--connection node_2
INSERT INTO t1 VALUES (22);
--connection node_1
--let $wait_condition = SELECT COUNT(*) = 10 FROM t1;
--source include/wait_condition.inc
--connection node_2
--source include/kill_galera.inc
--remove_file $MYSQLTEST_VARDIR/mysqld.2/data/grastate.dat
--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
INSERT INTO t1 VALUES (21);
--connection node_3
@@ -92,11 +114,21 @@ INSERT INTO t1 VALUES (221);
#
--connection node_4
--let $wait_condition = SELECT VARIABLE_VALUE = 4 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc
INSERT INTO t1 VALUES (34);
--connection node_1
--let $wait_condition = SELECT COUNT(*) = 15 FROM t1;
--source include/wait_condition.inc
--connection node_4
--source include/kill_galera.inc
--remove_file $MYSQLTEST_VARDIR/mysqld.4/data/grastate.dat
--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
INSERT INTO t1 VALUES (31);
--connection node_2
@@ -107,6 +139,7 @@ INSERT INTO t1 VALUES (33);
--connection node_4
--source include/start_mysqld.inc
--remove_file $MYSQLTEST_VARDIR/mysqld.4/data/grastate.dat
INSERT INTO t1 VALUES (341);

View File

@@ -5,8 +5,8 @@
--source include/have_innodb.inc
--let LOGF=$MYSQLTEST_VARDIR/log/mysqld.1.err
--disable_info
call mtr.add_suppression("WSREP\: Unknown parameter 'gmcasts\\.segment'");
call mtr.add_suppression("WSREP\: Set options returned 7");
call mtr.add_suppression("WSREP: Unknown parameter 'gmcasts\\.segment'");
call mtr.add_suppression("WSREP: Set options returned 7");
--error ER_WRONG_ARGUMENTS
SET GLOBAL wsrep_provider_options="gmcasts.segment=1";
# Search for unhandled exception message.

View File

@@ -6,11 +6,22 @@
--source include/auto_increment_offset_save.inc
--connection node_1
call mtr.add_suppression("WSREP:.*");
call mtr.add_suppression("WSREP: async IST sender failed to serve");
call mtr.add_suppression("WSREP: Failed to establish connection: Connection refused");
call mtr.add_suppression("WSREP: IST failed: IST sender, failed to connect");
call mtr.add_suppression("WSREP: .*State transfer.* failed: Protocol error");
SET @wsrep_provider_options_orig = @@GLOBAL.wsrep_provider_options;
SET GLOBAL wsrep_provider_options ='pc.ignore_sb=true;pc.weight=2';
--connection node_2
call mtr.add_suppression("WSREP: async IST sender failed to serve");
call mtr.add_suppression("WSREP: Failed to establish connection: Connection refused");
call mtr.add_suppression("WSREP: IST failed: IST sender, failed to connect");
call mtr.add_suppression("WSREP: .*State transfer.* failed: Protocol error");
SET @wsrep_cluster_address_orig = @@GLOBAL.wsrep_cluster_address;
SET GLOBAL WSREP_ON=0;
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;

View File

@@ -39,3 +39,8 @@ UNLOCK TABLES;
DROP TABLE t1;
DROP TABLE t2;
--connection node_1
--disconnect node_2a
--disconnect node_2b

View File

@@ -9,6 +9,7 @@
--echo # MDEV-28263: mariadb-tzinfo-to-sql improve wsrep and binlog cases
--echo #
--exec rm -rf $MYSQLTEST_VARDIR/zoneinfo
--exec mkdir $MYSQLTEST_VARDIR/zoneinfo
--exec ln -s $MYSQLTEST_VARDIR/zoneinfo $MYSQLTEST_VARDIR/zoneinfo/posix
--copy_file std_data/zoneinfo/GMT $MYSQLTEST_VARDIR/zoneinfo/GMT

View File

@@ -1,4 +1,5 @@
--source include/galera_cluster.inc
--source include/have_aria.inc
call mtr.add_suppression("WSREP: ALTER TABLE isolation failure");

View File

@@ -11,4 +11,3 @@
##############################################################################
galera_2_cluster : MDEV-32631 galera_2_cluster: before_rollback(): Assertion `0' failed
galera_nbo_master_phase_two_crash : MENT-2215 Test failure on galera_3nodes.galera_nbo_master_non_prim_failure

View File

@@ -47,7 +47,7 @@ CALL mtr.add_suppression("Plugin 'wsrep' init function returned error\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a STORAGE ENGINE failed\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a FUNCTION failed\\.");
CALL mtr.add_suppression("Failed to initialize plugins\\.");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core.cpp:core_handle_uuid_msg\\(\\)");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core\\.cpp:core_handle_uuid_msg\\(\\)");
connection node_3;
CALL mtr.add_suppression("WSREP: no nodes coming from prim view, prim not possible");
CALL mtr.add_suppression("WSREP: It may not be safe to bootstrap the cluster from this node");
@@ -61,7 +61,7 @@ CALL mtr.add_suppression("Plugin 'wsrep' init function returned error\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a STORAGE ENGINE failed\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a FUNCTION failed\\.");
CALL mtr.add_suppression("Failed to initialize plugins\\.");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core.cpp:core_handle_uuid_msg\\(\\)");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core\\.cpp:core_handle_uuid_msg\\(\\)");
SHOW CREATE TABLE t1;
Table Create Table
t1 CREATE TABLE `t1` (

View File

@@ -11,8 +11,8 @@
--source include/have_innodb.inc
--connect node_5, 127.0.0.1, root, , test, $NODE_MYPORT_5
--connect node_4, 127.0.0.1, root, , test, $NODE_MYPORT_4
--connection node_4
--replace_result $NODE_MYPORT_1 NODE_MYPORT_1

View File

@@ -3,6 +3,7 @@
# following tests such as galera_3nodes.galera_var_dirty_reads2
!include ../galera_2x3nodes.cnf
[mysqld.1]
wsrep_gtid_domain_id=1
server-id=11

View File

@@ -20,7 +20,6 @@ call mtr.add_suppression("Failed to load slave replication state from table mysq
CREATE USER 'sst';
GRANT ALL PRIVILEGES ON *.* TO 'sst';
--let $wsrep_sst_auth_orig = `SELECT @@wsrep_sst_auth`
SET GLOBAL wsrep_sst_auth = 'sst:';
--connection node_2

View File

@@ -195,7 +195,7 @@ CALL mtr.add_suppression("Plugin 'wsrep' init function returned error\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a STORAGE ENGINE failed\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a FUNCTION failed\\.");
CALL mtr.add_suppression("Failed to initialize plugins\\.");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core.cpp:core_handle_uuid_msg\\(\\)");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core\\.cpp:core_handle_uuid_msg\\(\\)");
--connection node_3
CALL mtr.add_suppression("WSREP: no nodes coming from prim view, prim not possible");
@@ -210,7 +210,7 @@ CALL mtr.add_suppression("Plugin 'wsrep' init function returned error\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a STORAGE ENGINE failed\\.");
CALL mtr.add_suppression("Plugin 'wsrep' registration as a FUNCTION failed\\.");
CALL mtr.add_suppression("Failed to initialize plugins\\.");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core.cpp:core_handle_uuid_msg\\(\\)");
CALL mtr.add_suppression("WSREP: gcs/src/gcs_core\\.cpp:core_handle_uuid_msg\\(\\)");
SHOW CREATE TABLE t1;

View File

@@ -6,20 +6,26 @@ connection node_2;
connection node_3;
connection node_2;
SET GLOBAL debug_dbug="d,crash_last_fragment_commit_after_fragment_removal";
CREATE TABLE t1 (f1 VARCHAR(30)) ENGINE=InnoDB;
CREATE TABLE t1 (f1 VARCHAR(30) not null primary key) ENGINE=InnoDB;
SET AUTOCOMMIT=OFF;
SET SESSION wsrep_trx_fragment_size=1;
START TRANSACTION;
INSERT INTO t1 VALUES ('primary'),('primary'),('primary'),('primary'),('primary');
INSERT INTO t1 VALUES ('primary1'),('primary2'),('primary3'),('primary4'),('primary5');
COMMIT;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1;
connection node_2;
# restart
connection node_1;
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
COUNT(*) = 0
1
SELECT * FROM t1;
f1
connection node_2;
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
COUNT(*) = 0
1
SELECT * FROM t1;
f1
DROP TABLE t1;

View File

@@ -44,6 +44,7 @@ connection node_2;
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
EXPECT_0
0
call mtr.add_suppression("WSREP: node uuid:.*");
connection node_1;
DROP TABLE t1;
DROP TABLE t2;

View File

@@ -4,6 +4,7 @@
#
--source include/galera_cluster.inc
--source include/have_debug_sync.inc
--source include/force_restart.inc
--connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3
# Save original auto_increment_offset values.
@@ -13,30 +14,42 @@
--source ../galera/include/auto_increment_offset_save.inc
--connection node_2
--let $wait_condition = SELECT VARIABLE_VALUE = 3 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc
SET GLOBAL debug_dbug="d,crash_last_fragment_commit_after_fragment_removal";
--let $_expect_file_name= `select regexp_replace(@@tmpdir, '^.*/','')`
--let $_expect_file_name= $MYSQLTEST_VARDIR/tmp/$_expect_file_name.expect
--write_line wait $_expect_file_name
CREATE TABLE t1 (f1 VARCHAR(30)) ENGINE=InnoDB;
CREATE TABLE t1 (f1 VARCHAR(30) not null primary key) ENGINE=InnoDB;
SET AUTOCOMMIT=OFF;
SET SESSION wsrep_trx_fragment_size=1;
START TRANSACTION;
INSERT INTO t1 VALUES ('primary'),('primary'),('primary'),('primary'),('primary');
--error 2013
INSERT INTO t1 VALUES ('primary1'),('primary2'),('primary3'),('primary4'),('primary5');
--error 2013,2026
COMMIT;
--connection node_1
--let $wait_condition = SELECT VARIABLE_VALUE = 2 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE VARIABLE_NAME = 'wsrep_cluster_size';
--source include/wait_condition.inc
--connection node_2
--source include/start_mysqld.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
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
SELECT * FROM t1;
--connection node_2
--enable_reconnect
SELECT COUNT(*) = 0 FROM mysql.wsrep_streaming_log;
SELECT * FROM t1;
DROP TABLE t1;

View File

@@ -6,6 +6,7 @@
--source include/galera_cluster.inc
--source include/have_innodb.inc
--source include/force_restart.inc
--connect node_3, 127.0.0.1, root, , test, $NODE_MYPORT_3
# Save original auto_increment_offset values.
@@ -86,6 +87,8 @@ SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
--connection node_2
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
# As noted above sometimes node delivers the same view twice
call mtr.add_suppression("WSREP: node uuid:.*");
--connection node_1
DROP TABLE t1;

View File

@@ -9,5 +9,3 @@
# Do not use any TAB characters for whitespace.
#
##############################################################################
GCF-1060 : MDEV-32160 GCF-1060 test failure due to wsrep MDL conflict

View File

@@ -37,8 +37,9 @@ f1 f2
SET SESSION wsrep_trx_fragment_size = 10000;
START TRANSACTION;
INSERT INTO t1 VALUE (10, 'node1');
SELECT * FROM mysql.wsrep_streaming_log;
node_uuid trx_id seqno flags frag
SELECT COUNT(*) FROM mysql.wsrep_streaming_log;
COUNT(*)
0
connection node_1a;
INSERT INTO t1 VALUES(15, 'node2');
connection node_1;

View File

@@ -14,23 +14,23 @@ SET SESSION wsrep_trx_fragment_unit=default;
SET SESSION wsrep_trx_fragment_size=default;
SHOW BINLOG EVENTS IN 'mysqld-bin.000002' FROM 518;
Log_name Pos Event_type Server_id End_log_pos Info
mysqld-bin.000002 518 Gtid 1 560 BEGIN GTID 0-1-2
mysqld-bin.000002 560 Annotate_rows 1 613 INSERT INTO t1 VALUES (1), (2)
mysqld-bin.000002 613 Table_map 1 658 table_id: # (test.t1)
mysqld-bin.000002 658 Write_rows_v1 1 696 table_id: # flags: STMT_END_F
mysqld-bin.000002 696 Table_map 1 741 table_id: # (test.t1)
mysqld-bin.000002 741 Write_rows_v1 1 779 table_id: # flags: STMT_END_F
mysqld-bin.000002 779 Xid 1 810 COMMIT /* xid=# */
mysqld-bin.000002 810 Gtid 1 852 BEGIN GTID 0-1-3
mysqld-bin.000002 852 Annotate_rows 1 905 INSERT INTO t1 VALUES (3), (4)
mysqld-bin.000002 905 Table_map 1 950 table_id: # (test.t1)
mysqld-bin.000002 950 Write_rows_v1 1 988 table_id: # flags: STMT_END_F
mysqld-bin.000002 988 Table_map 1 1033 table_id: # (test.t1)
mysqld-bin.000002 1033 Write_rows_v1 1 1071 table_id: # flags: STMT_END_F
mysqld-bin.000002 1071 Xid 1 1102 COMMIT /* xid=# */
mysqld-bin.000002 1102 Gtid 1 1144 BEGIN GTID 0-1-4
mysqld-bin.000002 1144 Annotate_rows 1 1197 INSERT INTO t1 VALUES (5), (6)
mysqld-bin.000002 1197 Table_map 1 1242 table_id: # (test.t1)
mysqld-bin.000002 1242 Write_rows_v1 1 1285 table_id: # flags: STMT_END_F
mysqld-bin.000002 1285 Xid 1 1316 COMMIT /* xid=# */
mysqld-bin.000002 # Gtid 1 # BEGIN GTID 0-1-2
mysqld-bin.000002 # Annotate_rows 1 # INSERT INTO t1 VALUES (1), (2)
mysqld-bin.000002 # Table_map 1 # table_id: # (test.t1)
mysqld-bin.000002 # Write_rows_v1 1 # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Table_map 1 # table_id: # (test.t1)
mysqld-bin.000002 # Write_rows_v1 1 # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Xid 1 # COMMIT /* xid=# */
mysqld-bin.000002 # Gtid 1 # BEGIN GTID 0-1-3
mysqld-bin.000002 # Annotate_rows 1 # INSERT INTO t1 VALUES (3), (4)
mysqld-bin.000002 # Table_map 1 # table_id: # (test.t1)
mysqld-bin.000002 # Write_rows_v1 1 # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Table_map 1 # table_id: # (test.t1)
mysqld-bin.000002 # Write_rows_v1 1 # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Xid 1 # COMMIT /* xid=# */
mysqld-bin.000002 # Gtid 1 # BEGIN GTID 0-1-4
mysqld-bin.000002 # Annotate_rows 1 # INSERT INTO t1 VALUES (5), (6)
mysqld-bin.000002 # Table_map 1 # table_id: # (test.t1)
mysqld-bin.000002 # Write_rows_v1 1 # table_id: # flags: STMT_END_F
mysqld-bin.000002 # Xid 1 # COMMIT /* xid=# */
DROP TABLE t1;

View File

@@ -15,7 +15,7 @@ SET DEBUG_SYNC='now WAIT_FOR before_fragment';
SET GLOBAL wsrep_cluster_address = '';
SET DEBUG_SYNC = 'now SIGNAL continue';
connection node_2;
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_2a;
SELECT * FROM mysql.wsrep_streaming_log;
node_uuid trx_id seqno flags frag

View File

@@ -0,0 +1,24 @@
connection node_2;
connection node_1;
connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1;
connection node_1;
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY);
SET DEBUG_SYNC='trans_xa_commit_after_acquire_commit_lock SIGNAL before_commit WAIT_FOR continue';
XA START 'a';
INSERT INTO t1 VALUES(1);
XA END 'a';
XA PREPARE 'a';
XA COMMIT 'a';;
connection node_1a;
SET DEBUG_SYNC='now WAIT_FOR before_commit';
SET DEBUG_SYNC = 'now SIGNAL continue';
connection node_1;
ERROR 70100: Query execution was interrupted
Expect transaction 'a' in prepared state
XA RECOVER;
formatID gtrid_length bqual_length data
1 1 0 a
XA ROLLBACK 'a';
DROP TABLE t1;
SET DEBUG_SYNC = 'RESET';
disconnect node_1a;

View File

@@ -27,7 +27,7 @@ SET GLOBAL wsrep_cluster_address = '';
SET SESSION wsrep_sync_wait = DEFAULT;
connection node_2;
INSERT INTO t1 VALUES (6);
ERROR HY000: Lost connection to MySQL server during query
Got one of the listed errors
connection node_1;
SELECT COUNT(*) AS EXPECT_0 FROM mysql.wsrep_streaming_log;
EXPECT_0

View File

@@ -61,7 +61,7 @@ SET SESSION wsrep_trx_fragment_size = 10000;
START TRANSACTION;
INSERT INTO t1 VALUE (10, 'node1');
SELECT * FROM mysql.wsrep_streaming_log;
SELECT COUNT(*) FROM mysql.wsrep_streaming_log;
--connection node_1a
INSERT INTO t1 VALUES(15, 'node2');

View File

@@ -12,6 +12,8 @@ CREATE TABLE t1 (f1 INT PRIMARY KEY);
SET SESSION wsrep_trx_fragment_unit='ROWS';
SET SESSION wsrep_trx_fragment_size=1;
--let $start_pos= query_get_value(SHOW MASTER STATUS, Position, 1)
INSERT INTO t1 VALUES (1), (2);
#
@@ -37,6 +39,7 @@ SET SESSION wsrep_trx_fragment_unit=default;
SET SESSION wsrep_trx_fragment_size=default;
--replace_regex /table_id: [0-9]+/table_id: #/ /xid=[0-9]+/xid=#/
SHOW BINLOG EVENTS IN 'mysqld-bin.000002' FROM 518;
--replace_column 2 # 5 #
--eval SHOW BINLOG EVENTS IN 'mysqld-bin.000002' FROM $start_pos
DROP TABLE t1;

View File

@@ -43,7 +43,8 @@ SET DEBUG_SYNC = 'now SIGNAL continue';
# Disconnect causes connection to node_2 to be closed
#
--connection node_2
--error 2013 # CR_SERVER_LOST
# CR_SERVER_LOST, CR_SSL_CONNECTION_ERROR
--error 2013,2026
--reap

View File

@@ -4,6 +4,7 @@
#
--source include/galera_cluster.inc
--source include/have_sequence.inc
CREATE SEQUENCE SEQ NOCACHE ENGINE=InnoDB;
SET SESSION wsrep_trx_fragment_size=1;

View File

@@ -0,0 +1,54 @@
#
# MENT-2042 Assertion `bf_aborted()' failed in wsrep::transaction::xa_replay_common()
#
--source include/galera_cluster.inc
--source include/have_debug_sync.inc
--connect node_1a, 127.0.0.1, root, , test, $NODE_MYPORT_1
--connection node_1
--let connection_id = `SELECT CONNECTION_ID()`
CREATE TABLE t1 (f1 INTEGER PRIMARY KEY);
#
# Execute XA transaction up to COMMIT
#
SET DEBUG_SYNC='trans_xa_commit_after_acquire_commit_lock SIGNAL before_commit WAIT_FOR continue';
XA START 'a';
INSERT INTO t1 VALUES(1);
XA END 'a';
XA PREPARE 'a';
--send XA COMMIT 'a';
#
# Kill the XA COMMIT statement. If bug is present the
# assertion fires.
#
--connection node_1a
SET DEBUG_SYNC='now WAIT_FOR before_commit';
--disable_query_log
--eval KILL QUERY $connection_id
--enable_query_log
SET DEBUG_SYNC = 'now SIGNAL continue';
#
# Expect that the query is interrupted, and the transaction
# is still in prepared state
#
--connection node_1
--error ER_QUERY_INTERRUPTED
--reap
--echo Expect transaction 'a' in prepared state
XA RECOVER;
#
# Cleanup
#
XA ROLLBACK 'a';
DROP TABLE t1;
SET DEBUG_SYNC = 'RESET';
--disconnect node_1a

View File

@@ -51,7 +51,7 @@ SET GLOBAL wsrep_cluster_address = '';
SET SESSION wsrep_sync_wait = DEFAULT;
--connection node_2
--error 2013 # CR_SERVER_LOST
--error 2013,2026
INSERT INTO t1 VALUES (6);
--connection node_1

View File

@@ -85,4 +85,3 @@ SET SESSION wsrep_trx_fragment_size=0;
# Restore original auto_increment_offset values.
--source ../galera/include/auto_increment_offset_restore.inc

View File

@@ -1,3 +1,4 @@
--source include/have_innodb.inc
--source include/have_wsrep_enabled.inc
--source include/have_binlog_format_row.inc

View File

@@ -23,4 +23,3 @@ SHOW STATUS LIKE 'wsrep_thread_count';
--echo # variables
SELECT VARIABLE_NAME FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE "wsrep%" ORDER BY VARIABLE_NAME;

View File

@@ -8,7 +8,7 @@
--let $galera_version=26.4.21
source include/check_galera_version.inc;
source include/galera_variables_ok.inc;
source include/galera_variables_ok_debug.inc;
--replace_column 2 #
SHOW GLOBAL STATUS LIKE 'wsrep%';
@@ -25,4 +25,3 @@ SHOW STATUS LIKE 'wsrep_thread_count';
--echo # variables
SELECT VARIABLE_NAME FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME LIKE "wsrep%" ORDER BY VARIABLE_NAME;