diff options
Diffstat (limited to 'mysql-test/suite/rpl')
-rw-r--r-- | mysql-test/suite/rpl/r/rpl_stm_user_variables.result | 16 | ||||
-rw-r--r-- | mysql-test/suite/rpl/t/rpl_stm_user_variables.test | 33 |
2 files changed, 49 insertions, 0 deletions
diff --git a/mysql-test/suite/rpl/r/rpl_stm_user_variables.result b/mysql-test/suite/rpl/r/rpl_stm_user_variables.result index 5e758fc02f3..8f43425b201 100644 --- a/mysql-test/suite/rpl/r/rpl_stm_user_variables.result +++ b/mysql-test/suite/rpl/r/rpl_stm_user_variables.result @@ -206,3 +206,19 @@ Comparing tables master:test.t1 and slave:test.t1 TRUNCATE t1; ## check: contents of both tables master's and slave's DROP TABLE t1; +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; +CREATE TABLE t1 ( c INT, PRIMARY KEY (c)) Engine=MyISAM; +CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW SET @aux = -1 ; +SET @aux = 10294947273192243200; +SET @aux1= @aux; +INSERT INTO t1 VALUES (@aux) , (@aux1); +ERROR 23000: Duplicate entry '2147483647' for key 'PRIMARY' +## assertion: master and slave tables are in sync +Comparing tables master:test.t1 and slave:test.t1 +DROP TRIGGER tr1; +DROP TABLE t1; diff --git a/mysql-test/suite/rpl/t/rpl_stm_user_variables.test b/mysql-test/suite/rpl/t/rpl_stm_user_variables.test index c58acdcb084..05adc597776 100644 --- a/mysql-test/suite/rpl/t/rpl_stm_user_variables.test +++ b/mysql-test/suite/rpl/t/rpl_stm_user_variables.test @@ -139,3 +139,36 @@ TRUNCATE t1; -- connection master DROP TABLE t1; -- sync_slave_with_master + +##################################################################### +# +# BUG#51426 +# +##################################################################### +-- source include/master-slave-reset.inc +-- connection master + +CREATE TABLE t1 ( c INT, PRIMARY KEY (c)) Engine=MyISAM; + +# offending trigger that would reset the unsigned flag for aux before +# binlogging of User_var_log_event would take place. +CREATE TRIGGER tr1 AFTER INSERT ON t1 FOR EACH ROW SET @aux = -1 ; + +SET @aux = 10294947273192243200; +SET @aux1= @aux; +-- error ER_DUP_ENTRY +INSERT INTO t1 VALUES (@aux) , (@aux1); + +-- sync_slave_with_master + +-- echo ## assertion: master and slave tables are in sync +-- let $diff_table_1=master:test.t1 +-- let $diff_table_2=slave:test.t1 +-- source include/diff_tables.inc + +--connection master +DROP TRIGGER tr1; +DROP TABLE t1; + +-- sync_slave_with_master + |