Loading mysql-test/r/sp.result +14 −0 Original line number Diff line number Diff line Loading @@ -4768,6 +4768,20 @@ Handler Inner drop procedure bug15011| drop table t3| drop function if exists bug17615| create table t3 (a varchar(256) unicode)| create function bug17615() returns varchar(256) unicode begin declare tmp_res varchar(256) unicode; set tmp_res= 'foo string'; return tmp_res; end| insert into t3 values(bug17615())| select * from t3| a foo string drop function bug17615| drop table t3| drop procedure if exists bug17476| create table t3 ( d date )| insert into t3 values Loading mysql-test/t/sp.test +22 −0 Original line number Diff line number Diff line Loading @@ -5616,6 +5616,28 @@ drop table t3| # # BUG#17615: problem with character set # --disable_warnings drop function if exists bug17615| --enable_warnings create table t3 (a varchar(256) unicode)| create function bug17615() returns varchar(256) unicode begin declare tmp_res varchar(256) unicode; set tmp_res= 'foo string'; return tmp_res; end| insert into t3 values(bug17615())| select * from t3| drop function bug17615| drop table t3| # BUG#17476: Stored procedure not returning data when it is called first # time per connection # Loading sql/item_func.cc +2 −0 Original line number Diff line number Diff line Loading @@ -4881,6 +4881,7 @@ Item_func_sp::fix_length_and_dec() { decimals= result_field->decimals(); max_length= result_field->field_length; collation.set(result_field->charset()); DBUG_VOID_RETURN; } Loading @@ -4891,6 +4892,7 @@ Item_func_sp::fix_length_and_dec() } decimals= field->decimals(); max_length= field->field_length; collation.set(field->charset()); maybe_null= 1; delete field; DBUG_VOID_RETURN; Loading Loading
mysql-test/r/sp.result +14 −0 Original line number Diff line number Diff line Loading @@ -4768,6 +4768,20 @@ Handler Inner drop procedure bug15011| drop table t3| drop function if exists bug17615| create table t3 (a varchar(256) unicode)| create function bug17615() returns varchar(256) unicode begin declare tmp_res varchar(256) unicode; set tmp_res= 'foo string'; return tmp_res; end| insert into t3 values(bug17615())| select * from t3| a foo string drop function bug17615| drop table t3| drop procedure if exists bug17476| create table t3 ( d date )| insert into t3 values Loading
mysql-test/t/sp.test +22 −0 Original line number Diff line number Diff line Loading @@ -5616,6 +5616,28 @@ drop table t3| # # BUG#17615: problem with character set # --disable_warnings drop function if exists bug17615| --enable_warnings create table t3 (a varchar(256) unicode)| create function bug17615() returns varchar(256) unicode begin declare tmp_res varchar(256) unicode; set tmp_res= 'foo string'; return tmp_res; end| insert into t3 values(bug17615())| select * from t3| drop function bug17615| drop table t3| # BUG#17476: Stored procedure not returning data when it is called first # time per connection # Loading
sql/item_func.cc +2 −0 Original line number Diff line number Diff line Loading @@ -4881,6 +4881,7 @@ Item_func_sp::fix_length_and_dec() { decimals= result_field->decimals(); max_length= result_field->field_length; collation.set(result_field->charset()); DBUG_VOID_RETURN; } Loading @@ -4891,6 +4892,7 @@ Item_func_sp::fix_length_and_dec() } decimals= field->decimals(); max_length= field->field_length; collation.set(field->charset()); maybe_null= 1; delete field; DBUG_VOID_RETURN; Loading