mirror of
https://github.com/MariaDB/server.git
synced 2025-01-27 17:33:44 +01:00
0d25ee4f13
fix semisync plugins and tests to work with both with static and dynamic linking
89 lines
2.4 KiB
Text
89 lines
2.4 KiB
Text
source include/have_semisync.inc;
|
|
source include/not_embedded.inc;
|
|
source include/have_innodb.inc;
|
|
source include/master-slave.inc;
|
|
|
|
let $engine_type= InnoDB;
|
|
|
|
# Suppress warnings that might be generated during the test
|
|
connection master;
|
|
call mtr.add_suppression("Timeout waiting for reply of binlog");
|
|
call mtr.add_suppression("Semi-sync master .* waiting for slave reply");
|
|
call mtr.add_suppression("Read semi-sync reply");
|
|
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.");
|
|
connection slave;
|
|
call mtr.add_suppression("Master server does not support semi-sync");
|
|
call mtr.add_suppression("Semi-sync slave .* reply");
|
|
call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received while applying a group that has non-transactional changes; waiting for completion of the group");
|
|
|
|
connection master;
|
|
set global rpl_semi_sync_master_enabled = 1;
|
|
|
|
connection slave;
|
|
source include/stop_slave.inc;
|
|
set global rpl_semi_sync_slave_enabled = 1;
|
|
|
|
source include/start_slave.inc;
|
|
|
|
connection master;
|
|
SET GLOBAL event_scheduler = ON;
|
|
|
|
replace_result $engine_type ENGINE_TYPE;
|
|
eval CREATE TABLE t1 (i INT NOT NULL AUTO_INCREMENT PRIMARY KEY, f varchar(8)) ENGINE=$engine_type;
|
|
INSERT INTO t1 (f) VALUES ('a'),('a'),('a'),('a'),('a');
|
|
--disable_warnings
|
|
INSERT INTO t1 SELECT i+5, f FROM t1;
|
|
INSERT INTO t1 SELECT i+10, f FROM t1;
|
|
--enable_warnings
|
|
CREATE EVENT ev1 ON SCHEDULE EVERY 1 SECOND
|
|
DO INSERT INTO t1 VALUES (SLEEP(5),CONCAT('ev1_',CONNECTION_ID()));
|
|
CREATE EVENT ev2 ON SCHEDULE EVERY 1 SECOND
|
|
DO INSERT INTO t1 VALUES (SLEEP(5),CONCAT('ev2_',CONNECTION_ID()));
|
|
|
|
connection slave;
|
|
STOP SLAVE IO_THREAD;
|
|
|
|
connection master;
|
|
let $run = 20;
|
|
while ($run)
|
|
{
|
|
connect (m$run,localhost,root,,);
|
|
connection m$run;
|
|
send;
|
|
eval UPDATE t1 SET f = CONCAT('up_',CONNECTION_ID()) WHERE i = $run;
|
|
connection master;
|
|
dec $run;
|
|
}
|
|
|
|
connection master;
|
|
SET GLOBAL event_scheduler = OFF;
|
|
|
|
let $run = 20;
|
|
while ($run)
|
|
{
|
|
connection m$run;
|
|
reap;
|
|
disconnect m$run;
|
|
dec $run;
|
|
}
|
|
|
|
#
|
|
# Clean up
|
|
#
|
|
connection slave;
|
|
source include/stop_slave.inc;
|
|
set global rpl_semi_sync_slave_enabled = 0;
|
|
|
|
connection master;
|
|
set global rpl_semi_sync_master_enabled = 0;
|
|
|
|
connection slave;
|
|
source include/start_slave.inc;
|
|
|
|
connection master;
|
|
|
|
DROP EVENT ev1;
|
|
DROP EVENT ev2;
|
|
DROP TABLE t1;
|
|
sync_slave_with_master;
|
|
--source include/rpl_end.inc
|