mirror of
https://github.com/MariaDB/server.git
synced 2025-11-08 00:28:29 +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.
50 lines
985 B
Plaintext
50 lines
985 B
Plaintext
source include/master-slave.inc;
|
|
|
|
CREATE TABLE t1 (
|
|
a int unsigned not null auto_increment primary key,
|
|
b int unsigned
|
|
) ENGINE=MyISAM;
|
|
|
|
CREATE TABLE t2 (
|
|
a int unsigned not null auto_increment primary key,
|
|
b int unsigned
|
|
) ENGINE=MyISAM;
|
|
|
|
INSERT INTO t1 VALUES (NULL, 0);
|
|
INSERT INTO t1 SELECT NULL, 0 FROM t1;
|
|
|
|
INSERT INTO t2 VALUES (NULL, 0), (NULL,1);
|
|
|
|
SELECT * FROM t1 ORDER BY a;
|
|
SELECT * FROM t2 ORDER BY a;
|
|
|
|
UPDATE t1, t2 SET t1.b = t2.b WHERE t1.a = t2.a;
|
|
save_master_pos;
|
|
connection slave;
|
|
sync_with_master;
|
|
|
|
# End of 4.1 tests
|
|
|
|
# Check if updating 0 rows is binlogged (BUG#13348)
|
|
|
|
connection master;
|
|
delete from t1;
|
|
delete from t2;
|
|
insert into t1 values(1,1);
|
|
insert into t2 values(1,1);
|
|
|
|
connection slave;
|
|
# force a difference to see if master's multi-UPDATE will correct it
|
|
update t1 set a=2;
|
|
|
|
connection master;
|
|
UPDATE t1, t2 SET t1.a = t2.a;
|
|
|
|
sync_slave_with_master;
|
|
select * from t1;
|
|
select * from t2;
|
|
|
|
connection master;
|
|
drop table t1, t2;
|
|
sync_slave_with_master;
|