From af93c02510232d5add0393ad9e9c2bca623bd816 Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Sat, 7 May 2016 09:12:48 +0200 Subject: 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) --- libmysql/libmysql.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'libmysql/libmysql.c') 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. -- cgit v1.2.1