Commit 98581508 authored by bar@mysql.com's avatar bar@mysql.com

Bug #12829

Cannot convert the charset of a GROUP_CONCAT result:

item_sum.cc:
  "result" character set was not set into proper value.

func_gconcat.result, func_gconcat.test:
  Fixing tests accordingly.
parent d6178099
......@@ -469,6 +469,15 @@ select collation(group_concat(a,b)) from t1;
ERROR HY000: Illegal mix of collations (cp1250_general_ci,IMPLICIT) and (koi8r_general_ci,IMPLICIT) for operation 'group_concat'
drop table t1;
drop table t2;
CREATE TABLE t1 (a CHAR(10) CHARACTER SET cp850);
INSERT INTO t1 VALUES ('');
SELECT a FROM t1;
a
SELECT GROUP_CONCAT(a) FROM t1;
GROUP_CONCAT(a)
DROP TABLE t1;
CREATE TABLE t1 (id int);
SELECT GROUP_CONCAT(id) AS gc FROM t1 HAVING gc IS NULL;
gc
......
......@@ -281,6 +281,16 @@ select collation(group_concat(a,b)) from t1;
drop table t1;
drop table t2;
#
# Bug #12829
# Cannot convert the charset of a GROUP_CONCAT result
#
CREATE TABLE t1 (a CHAR(10) CHARACTER SET cp850);
INSERT INTO t1 VALUES ('');
SELECT a FROM t1;
SELECT GROUP_CONCAT(a) FROM t1;
DROP TABLE t1;
#
# bug #7769: group_concat returning null is checked in having
#
......
......@@ -1937,6 +1937,7 @@ Item_func_group_concat::fix_fields(THD *thd, TABLE_LIST *tables, Item **ref)
args, arg_count, MY_COLL_ALLOW_CONV))
return 1;
result.set_charset(collation.collation);
result_field= 0;
null_value= 1;
max_length= group_concat_max_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