diff options
author | Michael Widenius <monty@askmonty.org> | 2013-04-17 23:37:06 +0300 |
---|---|---|
committer | Michael Widenius <monty@askmonty.org> | 2013-04-17 23:37:06 +0300 |
commit | 8b714e507f9e2c216ad043a10db99ea558e9285b (patch) | |
tree | c73d5355619001021e0426fa1a955bf68f90fc5d /storage/federatedx | |
parent | 8e526985800678de20356cece1183f49f69c26f9 (diff) | |
download | mariadb-git-8b714e507f9e2c216ad043a10db99ea558e9285b.tar.gz |
Changed the client library to only mark memory as THREAD_SPECIFIC if one has called
mysql_options() with MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY
include/mysql.h:
Added MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY
include/mysql.h.pp:
Updated file
sql-common/client.c:
Marked client memory as THREAD_SPECIFIC
sql/event_db_repository.cc:
Fixed compiler warning
sql/slave.cc:
Marked client memory as THREAD_SPECIFIC
storage/federatedx/federatedx_io_mysql.cc:
Marked client memory as THREAD_SPECIFIC
storage/federatedx/ha_federatedx.cc:
Marked client memory as THREAD_SPECIFIC
storage/sphinx/ha_sphinx.cc:
Marked client memory as THREAD_SPECIFIC
Diffstat (limited to 'storage/federatedx')
-rw-r--r-- | storage/federatedx/federatedx_io_mysql.cc | 6 | ||||
-rw-r--r-- | storage/federatedx/ha_federatedx.cc | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/storage/federatedx/federatedx_io_mysql.cc b/storage/federatedx/federatedx_io_mysql.cc index effbe899e7f..cc45ae059ae 100644 --- a/storage/federatedx/federatedx_io_mysql.cc +++ b/storage/federatedx/federatedx_io_mysql.cc @@ -423,8 +423,10 @@ int federatedx_io_mysql::actual_query(const char *buffer, uint length) if (!mysql.net.vio) { + my_bool my_true= 1; + if (!(mysql_init(&mysql))) - DBUG_RETURN(-1); + DBUG_RETURN(-1); /* BUG# 17044 Federated Storage Engine is not UTF8 clean @@ -433,6 +435,8 @@ int federatedx_io_mysql::actual_query(const char *buffer, uint length) */ /* this sets the csname like 'set names utf8' */ mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, get_charsetname()); + mysql_options(&mysql, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY, + (char*) &my_true); if (!mysql_real_connect(&mysql, get_hostname(), diff --git a/storage/federatedx/ha_federatedx.cc b/storage/federatedx/ha_federatedx.cc index d760fcf082f..c3f5e6add73 100644 --- a/storage/federatedx/ha_federatedx.cc +++ b/storage/federatedx/ha_federatedx.cc @@ -3593,12 +3593,15 @@ int ha_federatedx::discover_assisted(handlerton *hton, THD* thd, MYSQL_RES *res; MYSQL_ROW rdata; ulong *rlen; + my_bool my_true= 1; if (parse_url(thd->mem_root, &tmp_share, table_s, 1)) return HA_WRONG_CREATE_OPTION; mysql_init(&mysql); mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, cs->csname); + mysql_options(&mysql, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY, + (char*) &my_true); if (!mysql_real_connect(&mysql, tmp_share.hostname, tmp_share.username, tmp_share.password, tmp_share.database, |