mirror of
https://github.com/MariaDB/server.git
synced 2025-10-25 18:38:00 +03:00
Not fixed in 4.1 as not critical. Also I'm correcting error checking of multi-UPDATE/DELETE when it comes to binlogging, to make it consistent with when we rollback the statement. mysql-test/r/rpl_multi_delete.result: result update mysql-test/r/rpl_multi_update.result: result update mysql-test/t/rpl_multi_delete.test: test for BUG#13348 mysql-test/t/rpl_multi_update.test: test of BUG#13348 sql/sql_delete.cc: We now binlog multi-DELETE even if no row was updated (like we do for DELETE). I'm also correcting some error checking (< instead of <=), basing myself on when we rollback. sql/sql_update.cc: we now binlog multi-UPDATE even if no row was updated (like we do for UPDATE). Adding to existing tests to test new behaviour. I'm also correcting some error checking (< instead of <=), basing myself on when we rollback.
42 lines
748 B
Plaintext
42 lines
748 B
Plaintext
source include/master-slave.inc;
|
|
create table t1 (a int);
|
|
create table t2 (a int);
|
|
|
|
insert into t1 values (1);
|
|
insert into t2 values (1);
|
|
|
|
delete t1.* from t1, t2 where t1.a = t2.a;
|
|
|
|
save_master_pos;
|
|
select * from t1;
|
|
select * from t2;
|
|
|
|
connection slave;
|
|
sync_with_master;
|
|
select * from t1;
|
|
select * from t2;
|
|
|
|
# End of 4.1 tests
|
|
|
|
# Check if deleting 0 rows is binlogged (BUG#13348)
|
|
|
|
connection master;
|
|
delete from t1;
|
|
delete from t2;
|
|
|
|
connection slave;
|
|
# force a difference to see if master's multi-DELETE will correct it
|
|
insert into t1 values(1);
|
|
insert into t2 values(1);
|
|
|
|
connection master;
|
|
DELETE t1.*, t2.* from t1, t2;
|
|
|
|
sync_slave_with_master;
|
|
select * from t1;
|
|
select * from t2;
|
|
|
|
connection master;
|
|
drop table t1,t2;
|
|
sync_slave_with_master;
|