mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
7d883c0def
Problem: DROP TRIGGER was not properly handled in combination with slave filters, which made replication stop Fix: loading table name before checking slave filters when dropping a trigger. mysql-test/r/rpl_replicate_do.result: Adding test case mysql-test/t/rpl_replicate_do.test: Adding test case sql/sql_parse.cc: Loading table name when dropping a trigger before checking slave filtering rules. sql/sql_trigger.cc: Making add_table_for_trigger() public sql/sql_trigger.h: Making add_table_for_trigger() public
77 lines
2.5 KiB
Text
77 lines
2.5 KiB
Text
stop slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
reset master;
|
|
reset slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
start slave;
|
|
drop table if exists t11;
|
|
drop table if exists t11;
|
|
create table t2 (n int);
|
|
insert into t2 values(4);
|
|
create table t2 (s char(20));
|
|
load data infile '../std_data_ln/words.dat' into table t2;
|
|
insert into t2 values('five');
|
|
create table t1 (m int);
|
|
insert into t1 values(15),(16),(17);
|
|
update t1 set m=20 where m=16;
|
|
delete from t1 where m=17;
|
|
create table t11 select * from t1;
|
|
select * from t1;
|
|
m
|
|
15
|
|
20
|
|
select * from t2;
|
|
n
|
|
4
|
|
select * from t11;
|
|
ERROR 42S02: Table 'test.t11' doesn't exist
|
|
drop table if exists t1,t2,t11;
|
|
show slave status;
|
|
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
|
# 127.0.0.1 root MASTER_PORT 1 master-bin.000001 1658 # # master-bin.000001 Yes Yes test.t1 0 0 1658 # None 0 No #
|
|
create table t1 (ts timestamp);
|
|
set one_shot time_zone='met';
|
|
insert into t1 values('2005-08-12 00:00:00');
|
|
set one_shot time_zone='met';
|
|
select * from t1;
|
|
ts
|
|
2005-08-12 00:00:00
|
|
set one_shot time_zone='met';
|
|
select * from t1;
|
|
ts
|
|
2005-08-12 00:00:00
|
|
drop table t1;
|
|
*** master ***
|
|
create table t1 (a int, b int);
|
|
create trigger trg1 before insert on t1 for each row set new.b=2;
|
|
create table t2 (a int, b int);
|
|
create trigger trg2 before insert on t2 for each row set new.b=2;
|
|
show tables;
|
|
Tables_in_test
|
|
t1
|
|
t2
|
|
show triggers;
|
|
Trigger Event Table Statement Timing Created sql_mode Definer
|
|
trg1 INSERT t1 set new.b=2 BEFORE NULL root@localhost
|
|
trg2 INSERT t2 set new.b=2 BEFORE NULL root@localhost
|
|
*** slave ***
|
|
show tables;
|
|
Tables_in_test
|
|
t1
|
|
show triggers;
|
|
Trigger Event Table Statement Timing Created sql_mode Definer
|
|
trg1 INSERT t1 set new.b=2 BEFORE NULL root@localhost
|
|
*** master ***
|
|
drop trigger trg1;
|
|
drop trigger trg2;
|
|
show triggers;
|
|
Trigger Event Table Statement Timing Created sql_mode Definer
|
|
*** slave ***
|
|
show tables;
|
|
Tables_in_test
|
|
t1
|
|
show triggers;
|
|
Trigger Event Table Statement Timing Created sql_mode Definer
|
|
*** master ***
|
|
drop table t1;
|
|
drop table t2;
|