summaryrefslogtreecommitdiff
path: root/mysql-test/suite/rpl/r/rpl_row_triggers.result
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/rpl/r/rpl_row_triggers.result')
-rw-r--r--mysql-test/suite/rpl/r/rpl_row_triggers.result55
1 files changed, 55 insertions, 0 deletions
diff --git a/mysql-test/suite/rpl/r/rpl_row_triggers.result b/mysql-test/suite/rpl/r/rpl_row_triggers.result
index b4ae9861633..ad78c33e2b9 100644
--- a/mysql-test/suite/rpl/r/rpl_row_triggers.result
+++ b/mysql-test/suite/rpl/r/rpl_row_triggers.result
@@ -1,9 +1,12 @@
include/master-slave.inc
[connection master]
# Test of row replication with triggers on the slave side
+connection master;
CREATE TABLE t1 (C1 CHAR(1) primary key, C2 CHAR(1)) engine=innodb;
SELECT * FROM t1;
C1 C2
+connection slave;
+connection slave;
SET @old_slave_exec_mode= @@global.slave_exec_mode;
SET @old_slave_run_triggers_for_rbr= @@global.slave_run_triggers_for_rbr;
SET @@global.slave_exec_mode= IDEMPOTENT;
@@ -35,8 +38,11 @@ i0 0
i1 0
u0 0
u1 0
+connection master;
# INSERT triggers test
insert into t1 values ('a','b');
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 0
@@ -45,8 +51,11 @@ i0 1 a
i1 1 a
u0 0
u1 0
+connection master;
# UPDATE triggers test
update t1 set C1= 'd';
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 0
@@ -55,8 +64,11 @@ i0 1 a
i1 1 a
u0 1 a d
u1 1 a d
+connection master;
# DELETE triggers test
delete from t1 where C1='d';
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 1 d
@@ -75,7 +87,10 @@ i0 2 0
i1 2 0
u0 1 a d
u1 1 a d
+connection master;
insert into t1 values ('0','1');
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 2 0
@@ -87,8 +102,11 @@ u1 1 a d
# INSERT triggers which cause also DELETE test
# (insert duplicate row in table referenced by foreign key)
insert into t1 values ('1','1');
+connection master;
CREATE TABLE t3 (C1 CHAR(1) primary key, FOREIGN KEY (C1) REFERENCES t1(C1) ) engine=innodb;
insert into t1 values ('1','1');
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 3 1
@@ -97,32 +115,44 @@ i0 5 1
i1 5 1
u0 1 a d
u1 1 a d
+connection master;
drop table t3,t1;
+connection slave;
+connection slave;
SET @@global.slave_exec_mode= @old_slave_exec_mode;
SET @@global.slave_run_triggers_for_rbr= @old_slave_run_triggers_for_rbr;
drop table t2;
+connection master;
CREATE TABLE t1 (i INT) ENGINE=InnoDB;
CREATE TABLE t2 (i INT) ENGINE=InnoDB;
+connection slave;
SET @old_slave_run_triggers_for_rbr= @@global.slave_run_triggers_for_rbr;
SET GLOBAL slave_run_triggers_for_rbr=YES;
CREATE TRIGGER tr AFTER INSERT ON t1 FOR EACH ROW
INSERT INTO t2 VALUES (new.i);
+connection master;
BEGIN;
INSERT INTO t1 VALUES (1);
INSERT INTO t1 VALUES (2);
COMMIT;
+connection slave;
select * from t2;
i
1
2
SET @@global.slave_run_triggers_for_rbr= @old_slave_run_triggers_for_rbr;
+connection master;
drop tables t2,t1;
+connection slave;
# Triggers on slave do not work if master has some
+connection master;
CREATE TABLE t1 (C1 CHAR(1) primary key, C2 CHAR(1)) engine=innodb;
SELECT * FROM t1;
C1 C2
create trigger t1_dummy before delete on t1 for each row
set @dummy= 1;
+connection slave;
+connection slave;
SET @old_slave_exec_mode= @@global.slave_exec_mode;
SET @old_slave_run_triggers_for_rbr= @@global.slave_run_triggers_for_rbr;
SET @@global.slave_exec_mode= IDEMPOTENT;
@@ -152,8 +182,11 @@ i0 0
i1 0
u0 0
u1 0
+connection master;
# INSERT triggers test
insert into t1 values ('a','b');
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 0
@@ -162,8 +195,11 @@ i0 0
i1 0
u0 0
u1 0
+connection master;
# UPDATE triggers test
update t1 set C1= 'd';
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 0
@@ -172,8 +208,11 @@ i0 0
i1 0
u0 0
u1 0
+connection master;
# DELETE triggers test
delete from t1 where C1='d';
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 0
@@ -192,7 +231,10 @@ i0 1 0
i1 1 0
u0 0
u1 0
+connection master;
insert into t1 values ('0','1');
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 0
@@ -204,8 +246,11 @@ u1 0
# INSERT triggers which cause also DELETE test
# (insert duplicate row in table referenced by foreign key)
insert into t1 values ('1','1');
+connection master;
CREATE TABLE t3 (C1 CHAR(1) primary key, FOREIGN KEY (C1) REFERENCES t1(C1) ) engine=innodb;
insert into t1 values ('1','1');
+connection slave;
+connection slave;
SELECT * FROM t2 order by id;
id cnt o n
d0 0
@@ -214,29 +259,39 @@ i0 2 1
i1 2 1
u0 0
u1 0
+connection master;
drop table t3,t1;
+connection slave;
+connection slave;
SET @@global.slave_exec_mode= @old_slave_exec_mode;
SET @@global.slave_run_triggers_for_rbr= @old_slave_run_triggers_for_rbr;
drop table t2;
#
# MDEV-5513: Trigger is applied to the rows after first one
#
+connection master;
create table t1 (a int, b int);
create table tlog (a int);
set sql_log_bin=0;
create trigger tr1 after insert on t1 for each row insert into tlog values (1);
set sql_log_bin=1;
+connection slave;
+connection slave;
set @slave_run_triggers_for_rbr.saved = @@slave_run_triggers_for_rbr;
set global slave_run_triggers_for_rbr=1;
create trigger tr2 before insert on t1 for each row set new.b = new.a;
+connection master;
insert into t1 values (1,10),(2,20),(3,30);
+connection slave;
select * from t1;
a b
1 10
2 20
3 30
set global slave_run_triggers_for_rbr = @slave_run_triggers_for_rbr.saved;
+connection master;
drop table t1, tlog;
+connection slave;
#
# MDEV-8411 Assertion `is_stat_field || !table || (!table->write_set ||
# bitmap_is_set(table->write_set, field_index) ||