Commit 5cffeb2b authored by lars@mysql.com's avatar lars@mysql.com

BUG#6676: Derivation of user variables should be of derivation "IMPLICIT"

parent 3261bf18
...@@ -207,3 +207,10 @@ select hex(c1), hex(c2) from t1; ...@@ -207,3 +207,10 @@ select hex(c1), hex(c2) from t1;
hex(c1) hex(c2) hex(c1) hex(c2)
CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3
drop table t1; drop table t1;
create table `t1` (
`pk` varchar(10) not null default '',
primary key (`pk`)
) engine=myisam default charset=latin1;
set @p=_latin1 'test';
update t1 set pk='test' where pk=@p;
drop table t1;
...@@ -169,3 +169,16 @@ select hex(c1), hex(c2) from t1; ...@@ -169,3 +169,16 @@ select hex(c1), hex(c2) from t1;
connection master; connection master;
drop table t1; drop table t1;
sync_slave_with_master; sync_slave_with_master;
#
# BUG#6676: Derivation of variables must be correct on slave
#
connection master;
create table `t1` (
`pk` varchar(10) not null default '',
primary key (`pk`)
) engine=myisam default charset=latin1;
set @p=_latin1 'test';
update t1 set pk='test' where pk=@p;
drop table t1;
sync_slave_with_master;
...@@ -2528,7 +2528,7 @@ int User_var_log_event::exec_event(struct st_relay_log_info* rli) ...@@ -2528,7 +2528,7 @@ int User_var_log_event::exec_event(struct st_relay_log_info* rli)
0 can be passed as last argument (reference on item) 0 can be passed as last argument (reference on item)
*/ */
e.fix_fields(thd, 0, 0); e.fix_fields(thd, 0, 0);
e.update_hash(val, val_len, type, charset, DERIVATION_NONE); e.update_hash(val, val_len, type, charset, DERIVATION_IMPLICIT);
free_root(thd->mem_root,0); free_root(thd->mem_root,0);
rli->inc_event_relay_log_pos(get_event_len()); rli->inc_event_relay_log_pos(get_event_len());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment