diff options
author | Sergei Golubchik <serg@mariadb.org> | 2015-04-27 21:04:06 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2015-04-27 21:04:06 +0200 |
commit | 0f12ada6b6a390b8663151f5d8cfae2e6dc9c2bb (patch) | |
tree | 5af5b81499f6137f45a37fc77cc518e40fd4ad72 /sql/slave.cc | |
parent | e4df6e5799eec20a16e279f7e74e95f18cd475fe (diff) | |
parent | e02fe87f00dc9fdb0fb6ab13f2e87485f79f3341 (diff) | |
download | mariadb-git-0f12ada6b6a390b8663151f5d8cfae2e6dc9c2bb.tar.gz |
Merge remote-tracking branch 'mysql/5.5' into 5.5
Diffstat (limited to 'sql/slave.cc')
-rw-r--r-- | sql/slave.cc | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/sql/slave.cc b/sql/slave.cc index f224de2e1ff..a03deb1e793 100644 --- a/sql/slave.cc +++ b/sql/slave.cc @@ -1,5 +1,5 @@ -/* Copyright (c) 2000, 2013, Oracle and/or its affiliates. - Copyright (c) 2008, 2014, SkySQL Ab. +/* Copyright (c) 2000, 2015, Oracle and/or its affiliates. + Copyright (c) 2008, 2015, SkySQL Ab. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -4717,7 +4717,23 @@ static int connect_to_master(THD* thd, MYSQL* mysql, Master_info* mi, } #endif - mysql_options(mysql, MYSQL_SET_CHARSET_NAME, default_charset_info->csname); + /* + If server's default charset is not supported (like utf16, utf32) as client + charset, then set client charset to 'latin1' (default client charset). + */ + if (is_supported_parser_charset(default_charset_info)) + mysql_options(mysql, MYSQL_SET_CHARSET_NAME, default_charset_info->csname); + else + { + sql_print_information("'%s' can not be used as client character set. " + "'%s' will be used as default client character set " + "while connecting to master.", + default_charset_info->csname, + default_client_charset_info->csname); + mysql_options(mysql, MYSQL_SET_CHARSET_NAME, + default_client_charset_info->csname); + } + /* This one is not strictly needed but we have it here for completeness */ mysql_options(mysql, MYSQL_SET_CHARSET_DIR, (char *) charsets_dir); |