1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
|
include/master-slave.inc
[connection master]
#
# Initialize test data
connection master;
create table t1 (a int) engine=innodb;
include/save_master_gtid.inc
set @@SESSION.debug_dbug= "+d,binlog_force_commit_id";
connection slave;
set SQL_LOG_BIN= 0;
call mtr.add_suppression('Found invalid event in binary log');
call mtr.add_suppression('Slave SQL.*Relay log read failure: Could not parse relay log event entry.* 1594');
set SQL_LOG_BIN= 1;
include/sync_with_master_gtid.inc
include/stop_slave.inc
include/start_slave.inc
#
# Test FL_PREPARED_XA
connection master;
set @@SESSION.debug_dbug= "+d,negate_xid_from_gtid";
set @commit_id= 100;
XA START 'x1';
insert into t1 values (1);
XA END 'x1';
XA PREPARE 'x1';
set @@SESSION.debug_dbug= "-d,negate_xid_from_gtid";
XA COMMIT 'x1';
include/save_master_gtid.inc
# Waiting for slave to find invalid event..
connection slave;
include/wait_for_slave_sql_error.inc [errno=1594]
STOP SLAVE IO_THREAD;
# Reset master binlogs (as there is an invalid event) and slave state
connection master;
RESET MASTER;
connection slave;
RESET MASTER;
RESET SLAVE;
set @@global.gtid_slave_pos="";
include/start_slave.inc
#
# Test FL_COMPLETED_XA
connection master;
set @commit_id= 101;
XA START 'x1';
insert into t1 values (2);
XA END 'x1';
XA PREPARE 'x1';
set @@SESSION.debug_dbug= "+d,negate_xid_from_gtid";
XA COMMIT 'x1';
set @@SESSION.debug_dbug= "-d,negate_xid_from_gtid";
include/save_master_gtid.inc
# Waiting for slave to find invalid event..
connection slave;
include/wait_for_slave_sql_error.inc [errno=1594]
STOP SLAVE IO_THREAD;
# Cleanup hanging XA PREPARE on slave
set statement SQL_LOG_BIN=0 for XA COMMIT 'x1';
# Reset master binlogs (as there is an invalid event) and slave state
connection master;
RESET MASTER;
connection slave;
RESET MASTER;
RESET SLAVE;
set @@global.gtid_slave_pos="";
include/start_slave.inc
#
# Test Missing xid.data (but has format id and length description parts)
connection master;
set @commit_id= 101;
XA START 'x1';
insert into t1 values (1);
XA END 'x1';
XA PREPARE 'x1';
set @@SESSION.debug_dbug= "+d,negate_xid_data_from_gtid";
XA COMMIT 'x1';
set @@SESSION.debug_dbug= "-d,negate_xid_data_from_gtid";
include/save_master_gtid.inc
# Waiting for slave to find invalid event..
connection slave;
include/wait_for_slave_sql_error.inc [errno=1594]
STOP SLAVE IO_THREAD;
# Cleanup hanging XA PREPARE on slave
set statement SQL_LOG_BIN=0 for XA COMMIT 'x1';
# Reset master binlogs (as there is an invalid event) and slave state
connection master;
RESET MASTER;
connection slave;
RESET MASTER;
RESET SLAVE;
set @@global.gtid_slave_pos="";
include/start_slave.inc
#
# Test FL_EXTRA_MULTI_ENGINE
connection master;
set @old_dbug= @@SESSION.debug_dbug;
set @@SESSION.debug_dbug= "+d,inject_fl_extra_multi_engine_into_gtid";
set @commit_id= 102;
insert into t1 values (3);
include/save_master_gtid.inc
set @@SESSION.debug_dbug=@old_dbug;
connection slave;
# Waiting for slave to find invalid event..
include/wait_for_slave_sql_error.inc [errno=1594]
STOP SLAVE IO_THREAD;
# Reset master binlogs (as there is an invalid event) and slave state
connection master;
RESET MASTER;
connection slave;
RESET SLAVE;
RESET MASTER;
set @@global.gtid_slave_pos="";
include/start_slave.inc
#
# Test FL_COMMIT_ALTER
connection master;
set @old_dbug= @@SESSION.debug_dbug;
set @@SESSION.debug_dbug= "+d,negate_alter_fl_from_gtid";
set @old_alter_tp= @@SESSION.binlog_alter_two_phase;
set @@SESSION.binlog_alter_two_phase= 1;
alter table t1 add column (nc int);
include/save_master_gtid.inc
set @@SESSION.debug_dbug=@old_dbug;
set @@SESSION.binlog_alter_two_phase=@old_alter_tp;
connection slave;
# Waiting for slave to find invalid event..
include/wait_for_slave_sql_error.inc [errno=1594]
STOP SLAVE IO_THREAD;
# Reset master binlogs (as there is an invalid event) and slave state
connection master;
RESET MASTER;
connection slave;
SET STATEMENT sql_log_bin=0 FOR alter table t1 add column (nc int);
RESET SLAVE;
RESET MASTER;
set @@global.gtid_slave_pos="";
include/start_slave.inc
#
# Cleanup
connection master;
drop table t1;
include/save_master_gtid.inc
connection slave;
include/sync_with_master_gtid.inc
include/rpl_end.inc
# End of rpl_gtid_header_valid.test
|