• unknown's avatar
    Bug#27580 SPACE() function collation bug? · 272bb6b5
    unknown authored
    Problem: when character_set_connection=utf8,
    mixing SPACE() with a non-Unicode column (e.g. for concat)
    produced "illegal mix of collations" error.
    Fix: Item_string() corresponding to space character
    is now created using "ASCII" repertoire. Previously
    it was incorrectly created using "UNICODE" repertoure, which
    didn't allow to convert results of SPACE() to a non-Unicode
    character set.
    
    
    mysql-test/include/ctype_common.inc:
      - Adding test for bug#27580
      - Restoring previous values of character_set_client and character_set_results,
      because ctype_common.inc now changes them when doing "set names utf8"
      in the test for bug#27580
    mysql-test/r/ctype_big5.result:
      Adding test
    mysql-test/r/ctype_cp1250_ch.result:
      Adding test
    mysql-test/r/ctype_euckr.result:
      Adding test
    mysql-test/r/ctype_gb2312.result:
      Adding test
    mysql-test/r/ctype_gbk.result:
      Adding test
    mysql-test/r/ctype_uca.result:
      Adding test
    mysql-test/r/ctype_ucs.result:
      Adding test
    mysql-test/t/ctype_cp1250_ch.test:
      Adding test
    mysql-test/t/ctype_ucs.test:
      Adding test
    sql/item_create.cc:
      Item for SQL function SPACE() is now created with ASCII repertoire,
      to allow automatic conversion from UTF8 to column's character
      set e.g. for CONCAT().
    272bb6b5
item_create.cc 13.8 KB