mirror of
https://github.com/MariaDB/server.git
synced 2025-01-20 22:12:30 +01:00
d9f975d08b
Adjust full test suite to work with GTID. Huge patch, mainly due to having to update .result file for all SHOW BINLOG EVENTS and mysqlbinlog outputs, where the new GTID events pop up. Everything was painstakingly checked to be still correct and valid .result file updates.
125 lines
3.1 KiB
Text
125 lines
3.1 KiB
Text
CREATE TABLE t1(a CHAR(255),
|
|
b CHAR(255),
|
|
c CHAR(255),
|
|
d CHAR(255),
|
|
id INT,
|
|
PRIMARY KEY(id)) ENGINE=InnoDB;
|
|
create table t2 like t1;
|
|
create procedure setcrash(IN i INT)
|
|
begin
|
|
CASE i
|
|
WHEN 1 THEN SET SESSION debug_dbug="d,crash_commit_after_prepare";
|
|
WHEN 2 THEN SET SESSION debug_dbug="d,crash_commit_after_log";
|
|
WHEN 3 THEN SET SESSION debug_dbug="d,crash_commit_before_unlog";
|
|
WHEN 4 THEN SET SESSION debug_dbug="d,crash_commit_after";
|
|
WHEN 5 THEN SET SESSION debug_dbug="d,crash_commit_before";
|
|
ELSE BEGIN END;
|
|
END CASE;
|
|
end //
|
|
FLUSH TABLES;
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 9+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 8+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 7+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 6+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 5+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 4+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 3+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 2+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 1+1);
|
|
INSERT INTO t2(a, b, c, d, id) VALUES ('a', 'b', 'c', 'd', 0+1);
|
|
SET binlog_format= mixed;
|
|
RESET MASTER;
|
|
START TRANSACTION;
|
|
insert into t1 select * from t2;
|
|
call setcrash(5);
|
|
COMMIT;
|
|
Got one of the listed errors
|
|
SELECT * FROM t1 ORDER BY id;
|
|
a b c d id
|
|
SHOW BINLOG EVENTS LIMIT 4,1;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
delete from t1;
|
|
SET binlog_format= mixed;
|
|
RESET MASTER;
|
|
START TRANSACTION;
|
|
insert into t1 select * from t2;
|
|
call setcrash(4);
|
|
COMMIT;
|
|
Got one of the listed errors
|
|
SELECT * FROM t1 ORDER BY id;
|
|
a b c d id
|
|
a b c d 1
|
|
a b c d 2
|
|
a b c d 3
|
|
a b c d 4
|
|
a b c d 5
|
|
a b c d 6
|
|
a b c d 7
|
|
a b c d 8
|
|
a b c d 9
|
|
a b c d 10
|
|
SHOW BINLOG EVENTS LIMIT 4,1;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Query 1 # use `test`; insert into t1 select * from t2
|
|
delete from t1;
|
|
SET binlog_format= mixed;
|
|
RESET MASTER;
|
|
START TRANSACTION;
|
|
insert into t1 select * from t2;
|
|
call setcrash(3);
|
|
COMMIT;
|
|
Got one of the listed errors
|
|
SELECT * FROM t1 ORDER BY id;
|
|
a b c d id
|
|
a b c d 1
|
|
a b c d 2
|
|
a b c d 3
|
|
a b c d 4
|
|
a b c d 5
|
|
a b c d 6
|
|
a b c d 7
|
|
a b c d 8
|
|
a b c d 9
|
|
a b c d 10
|
|
SHOW BINLOG EVENTS LIMIT 4,1;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Query 1 # use `test`; insert into t1 select * from t2
|
|
delete from t1;
|
|
SET binlog_format= mixed;
|
|
RESET MASTER;
|
|
START TRANSACTION;
|
|
insert into t1 select * from t2;
|
|
call setcrash(2);
|
|
COMMIT;
|
|
Got one of the listed errors
|
|
SELECT * FROM t1 ORDER BY id;
|
|
a b c d id
|
|
a b c d 1
|
|
a b c d 2
|
|
a b c d 3
|
|
a b c d 4
|
|
a b c d 5
|
|
a b c d 6
|
|
a b c d 7
|
|
a b c d 8
|
|
a b c d 9
|
|
a b c d 10
|
|
SHOW BINLOG EVENTS LIMIT 4,1;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
master-bin.000001 # Query 1 # use `test`; insert into t1 select * from t2
|
|
delete from t1;
|
|
SET binlog_format= mixed;
|
|
RESET MASTER;
|
|
START TRANSACTION;
|
|
insert into t1 select * from t2;
|
|
call setcrash(1);
|
|
COMMIT;
|
|
Got one of the listed errors
|
|
SELECT * FROM t1 ORDER BY id;
|
|
a b c d id
|
|
SHOW BINLOG EVENTS LIMIT 4,1;
|
|
Log_name Pos Event_type Server_id End_log_pos Info
|
|
delete from t1;
|
|
DROP TABLE t1;
|
|
DROP TABLE t2;
|
|
DROP PROCEDURE setcrash;
|