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 /sql-common | |
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 'sql-common')
-rw-r--r-- | sql-common/client.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sql-common/client.c b/sql-common/client.c index 2d83f2ef215..507917b0722 100644 --- a/sql-common/client.c +++ b/sql-common/client.c @@ -892,7 +892,9 @@ void free_old_query(MYSQL *mysql) if (mysql->fields) free_root(&mysql->field_alloc,MYF(0)); /* Assume rowlength < 8192 */ - init_alloc_root(&mysql->field_alloc, 8192, 0, MYF(MY_THREAD_SPECIFIC)); + init_alloc_root(&mysql->field_alloc, 8192, 0, + MYF(mysql->options.use_thread_specific_memory ? + MY_THREAD_SPECIFIC : 0)); mysql->fields= 0; mysql->field_count= 0; /* For API */ mysql->warning_count= 0; @@ -1578,7 +1580,9 @@ MYSQL_DATA *cli_read_rows(MYSQL *mysql,MYSQL_FIELD *mysql_fields, DBUG_RETURN(0); } /* Assume rowlength < 8192 */ - init_alloc_root(&result->alloc, 8192, 0, MYF(MY_THREAD_SPECIFIC)); + init_alloc_root(&result->alloc, 8192, 0, + MYF(mysql->options.use_thread_specific_memory ? + MY_THREAD_SPECIFIC : 0)); result->alloc.min_malloc=sizeof(MYSQL_ROWS); prev_ptr= &result->data; result->rows=0; @@ -4206,6 +4210,9 @@ mysql_options(MYSQL *mysql,enum mysql_option option, const void *arg) case MYSQL_OPT_RECONNECT: mysql->reconnect= *(my_bool *) arg; break; + case MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY: + mysql->options.use_thread_specific_memory= *(my_bool *) arg; + break; case MYSQL_OPT_SSL_VERIFY_SERVER_CERT: if (*(my_bool*) arg) mysql->options.client_flag|= CLIENT_SSL_VERIFY_SERVER_CERT; |