mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
f89424f8b6
present): the problem originally was that the tables in auxilliary_tables did not have the correct real_name, which caused problems in the second call to tables_ok(). The fix corrects the real_name problem, and also sets the updating flag properly, which makes the second call to tables_ok() unnecessary. mysql-test/r/rpl_multi_delete2.result: updates for for BUG#11139 mysql-test/t/rpl_multi_delete2-slave.opt: updates for for BUG#11139 mysql-test/t/rpl_multi_delete2.test: updates for for BUG#11139 sql/mysql_priv.h: fix for BUG#11139 (multi-delete with alias breaking replication if table rules are present) sql/slave.cc: fix for BUG#11139 (multi-delete with alias breaking replication if table rules are present) sql/sql_parse.cc: fix for BUG#11139 (multi-delete with alias breaking replication if table rules are present) sql/sql_yacc.yy: fix for BUG#11139 (multi-delete with alias breaking replication if table rules are present)
44 lines
962 B
Text
44 lines
962 B
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;
|
|
set sql_log_bin=0;
|
|
create database mysqltest_from;
|
|
set sql_log_bin=1;
|
|
create database mysqltest_to;
|
|
use mysqltest_from;
|
|
drop table if exists a;
|
|
CREATE TABLE a (i INT);
|
|
INSERT INTO a VALUES(1);
|
|
DELETE alias FROM a alias WHERE alias.i=1;
|
|
SELECT * FROM a;
|
|
i
|
|
insert into a values(2),(3);
|
|
delete a alias FROM a alias where alias.i=2;
|
|
select * from a;
|
|
i
|
|
3
|
|
use mysqltest_to;
|
|
select * from a;
|
|
i
|
|
3
|
|
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;
|
|
select * from t1;
|
|
a
|
|
select * from t2;
|
|
a
|
|
1
|
|
select * from t1;
|
|
ERROR 42S02: Table 'mysqltest_to.t1' doesn't exist
|
|
select * from t2;
|
|
ERROR 42S02: Table 'mysqltest_to.t2' doesn't exist
|
|
set sql_log_bin=0;
|
|
drop database mysqltest_from;
|
|
set sql_log_bin=1;
|
|
drop database mysqltest_to;
|