diff options
author | Sergei Golubchik <serg@mariadb.org> | 2016-05-07 09:12:48 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2016-05-07 09:12:48 +0200 |
commit | af93c02510232d5add0393ad9e9c2bca623bd816 (patch) | |
tree | cf5036cd741f6bd90a404b2c92096599d845b50d /libmysql | |
parent | 5534d8143004022a8431068b1e1f53bd8d7046e9 (diff) | |
download | mariadb-git-af93c02510232d5add0393ad9e9c2bca623bd816.tar.gz |
MDEV-10034 Embedded server crashes on CREATE TABLE in PS protocol
don't use MY_THREAD_SPECIFIC on the client side
in embedded:
1. server memory accounting does not track client
side memory
2. in not embedded builds, this still *might* be
useful for plugins (handlersocket, connect, etc)
Diffstat (limited to 'libmysql')
-rw-r--r-- | libmysql/libmysql.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index d5d673bb895..190652c1d61 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -1510,9 +1510,8 @@ my_bool cli_read_prepare_result(MYSQL *mysql, MYSQL_STMT *stmt) */ #ifdef EMBEDDED_LIBRARY -#define STMT_INIT_PREALLOC(S) 0 -#else -#define STMT_INIT_PREALLOC(S) S +#undef MY_THREAD_SPECIFIC +#define MY_THREAD_SPECIFIC 0 #endif /*EMBEDDED_LIBRARY*/ MYSQL_STMT * STDCALL @@ -1533,10 +1532,8 @@ mysql_stmt_init(MYSQL *mysql) DBUG_RETURN(NULL); } - init_alloc_root(&stmt->mem_root, 2048, STMT_INIT_PREALLOC(2048), - MYF(MY_THREAD_SPECIFIC)); - init_alloc_root(&stmt->result.alloc, 4096, STMT_INIT_PREALLOC(4096), - MYF(MY_THREAD_SPECIFIC)); + init_alloc_root(&stmt->mem_root, 2048,2048, MYF(MY_THREAD_SPECIFIC)); + init_alloc_root(&stmt->result.alloc, 4096, 4096, MYF(MY_THREAD_SPECIFIC)); stmt->result.alloc.min_malloc= sizeof(MYSQL_ROWS); mysql->stmts= list_add(mysql->stmts, &stmt->list); stmt->list.data= stmt; @@ -1553,8 +1550,6 @@ mysql_stmt_init(MYSQL *mysql) DBUG_RETURN(stmt); } -#undef STMT_INIT_PREALLOC - /* Prepare server side statement with query. |