mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
MDEV-13417 UPDATE produces wrong values if an updated column is later used as an update source
replication tests
This commit is contained in:
16
mysql-test/suite/rpl/r/rpl_update.result
Normal file
16
mysql-test/suite/rpl/r/rpl_update.result
Normal file
@@ -0,0 +1,16 @@
|
||||
include/master-slave.inc
|
||||
[connection master]
|
||||
set sql_mode=simultaneous_assignment;
|
||||
create table t1 (a int, b int);
|
||||
insert into t1 values(1, 2);
|
||||
update t1 set a=b, b=a;
|
||||
select * from t1;
|
||||
a b
|
||||
2 1
|
||||
connection slave;
|
||||
select * from t1;
|
||||
a b
|
||||
2 1
|
||||
connection master;
|
||||
drop table t1;
|
||||
include/rpl_end.inc
|
||||
15
mysql-test/suite/rpl/t/rpl_update.test
Normal file
15
mysql-test/suite/rpl/t/rpl_update.test
Normal file
@@ -0,0 +1,15 @@
|
||||
source include/master-slave.inc;
|
||||
|
||||
#
|
||||
# MDEV-13417 UPDATE produces wrong values if an updated column is later used as an update source
|
||||
#
|
||||
set sql_mode=simultaneous_assignment;
|
||||
create table t1 (a int, b int);
|
||||
insert into t1 values(1, 2);
|
||||
update t1 set a=b, b=a;
|
||||
select * from t1;
|
||||
sync_slave_with_master;
|
||||
select * from t1;
|
||||
connection master;
|
||||
drop table t1;
|
||||
source include/rpl_end.inc;
|
||||
@@ -5438,7 +5438,7 @@ int Query_log_event::do_apply_event(rpl_group_info *rgi,
|
||||
if (sql_mode_inited)
|
||||
thd->variables.sql_mode=
|
||||
(sql_mode_t) ((thd->variables.sql_mode & MODE_NO_DIR_IN_CREATE) |
|
||||
(sql_mode & ~(ulong) MODE_NO_DIR_IN_CREATE));
|
||||
(sql_mode & ~(sql_mode_t) MODE_NO_DIR_IN_CREATE));
|
||||
if (charset_inited)
|
||||
{
|
||||
rpl_sql_thread_info *sql_info= thd->system_thread_info.rpl_sql_info;
|
||||
|
||||
Reference in New Issue
Block a user