--source include/galera_cluster.inc # # MDEV-21578 CREATE OR REPLACE TRIGGER in Galera cluster not replicating # CREATE TABLE IF NOT EXISTS t1 (id int(10) not null primary key) engine=innodb; --delimiter | CREATE OR REPLACE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW BEGIN SET NEW.id = 100; END| --delimiter ; INSERT INTO t1 VALUES (1); SELECT * from t1; --delimiter | CREATE OR REPLACE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW BEGIN SET NEW.id = 200; END| --delimiter ; --connection node_2 SET SESSION wsrep_sync_wait=15; SELECT * FROM t1; INSERT INTO t1 values (2); SELECT * FROM t1; --connection node_1 SELECT * FROM t1; DROP TRIGGER tr1; DROP TABLE t1; # # MDEV-23638 : DROP TRIGGER in Galera Cluster not replicating # --connection node_1 CREATE TABLE t1(id int not null auto_increment, value int not null, primary key (id)) engine=innodb; CREATE TABLE t2(id int not null auto_increment, tbl varchar(64) not null, action varchar(64) not null, primary key (id)); --delimiter | create trigger log_insert after insert on t1 for each row begin insert into t2(tbl, action) values ('t1', 'INSERT'); end| --delimiter ; insert into t1(value) values (1); insert into t1(value) values (2); --connection node_2 set session wsrep_sync_wait=15; insert into t1(value) values (3); insert into t1(value) values (4); select tbl, action from t2; --connection node_1 drop trigger if exists log_insert; insert into t1(value) values (5); select tbl, action from t2; --connection node_2 insert into t1(value) values (6); select tbl, action from t2; --connection node_1 select tbl, action from t2; drop table t1, t2;