diff options
author | Alexander Barkov <bar@mariadb.org> | 2017-09-15 12:25:06 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mariadb.org> | 2017-09-15 12:25:06 +0400 |
commit | 434e283507e5e73d6b3873fff50daddb99cea4d6 (patch) | |
tree | 8a20fb10855bd57e7e9b24732eb40e01b11e47cc /sql/item.cc | |
parent | 65c94238f8651d596f78bc86ae680f31ca65b280 (diff) | |
download | mariadb-git-434e283507e5e73d6b3873fff50daddb99cea4d6.tar.gz |
MDEV-13685 Can not replay binary log due to Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
Diffstat (limited to 'sql/item.cc')
-rw-r--r-- | sql/item.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/item.cc b/sql/item.cc index 6bd982f8854..0b603e1ad2c 100644 --- a/sql/item.cc +++ b/sql/item.cc @@ -1796,7 +1796,10 @@ bool Item_name_const::fix_fields(THD *thd, Item **ref) { set_name(item_name->ptr(), (uint) item_name->length(), system_charset_info); } - collation.set(value_item->collation.collation, DERIVATION_IMPLICIT); + if (value_item->collation.derivation == DERIVATION_NUMERIC) + collation.set_numeric(); + else + collation.set(value_item->collation.collation, DERIVATION_IMPLICIT); max_length= value_item->max_length; decimals= value_item->decimals; fixed= 1; |