--source include/have_s3.inc --source include/have_innodb.inc --source include/have_binlog_format_mixed.inc --source include/master-slave.inc --source include/have_sequence.inc # First clear the binlog set binlog_format=mixed; RESET MASTER; connection slave; set binlog_format=mixed; RESET MASTER; connection master; # # Create unique database for running the tests # --source create_database.inc sync_slave_with_master; --replace_result $database database --eval use $database connection master; --echo # --echo # MDEV-23691 S3 storage engine: delayed slave can drop the table --echo # connection slave; stop slave; connection master; # # Create version 1 of the table # create /*or replace*/ table t100 ( pk varchar(100) ) engine = 'innodb'; insert into t100 values ('old data'); alter table t100 engine=s3; # # Create version 2 of the table # drop table t100; create /*or replace*/ table t100 ( pk varchar(100) ) engine= innodb; insert into t100 select 'new data' from seq_1_to_10; alter table t100 engine=s3; select count(*), 'before slave start' from t100; # # Now, start the slave # connection slave; start slave; connection master; sync_slave_with_master; #select count(*) from t100; connection master; flush tables; select count(*), 'after slave start' from t100; show create table t100; connection slave; select count(*) from t100; connection master; drop table t100; --echo # --echo # Test delayed slave with inserts --echo # # Stop slave connection slave; stop slave; connection master; # Create tables with data while slave is stopped create table t1 (a int) engine=innodb; insert into t1 values (1),(2),(3); insert into t1 select * from seq_4_to_6; alter table t1 engine=s3; connection slave; start slave; connection master; sync_slave_with_master; select * from t1; connection master; drop table t1; --echo # --echo # Check slave binary log --echo # sync_slave_with_master; --let $binlog_database=$database --source include/show_binlog_events.inc connection master; --echo # --echo # clean up --echo # --source drop_database.inc --source include/rpl_end.inc