diff options
author | Monty <monty@mariadb.org> | 2016-04-07 19:51:40 +0300 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2016-06-04 09:06:00 +0200 |
commit | 89685d55d7329065607df5a5f19b641e5947e22f (patch) | |
tree | 9c2f48944f77c71043b35ed1bc39555588be383c /sql/sql_udf.cc | |
parent | 54f3e18f6e88bfae993749569104b4c89f0ea9ab (diff) | |
download | mariadb-git-89685d55d7329065607df5a5f19b641e5947e22f.tar.gz |
Reuse THD for new user connections
- To ensure that mallocs are marked for the correct THD, even if it's
allocated in another thread, I added the thread_id to the THD constructor
- Added st_my_thread_var to thr_lock_info_init() to avoid a call to my_thread_var
- Moved things from THD::THD() to THD::init()
- Moved some things to THD::cleanup()
- Added THD::free_connection() and THD::reset_for_reuse()
- Added THD to CONNECT::create_thd()
- Added THD::thread_dbug_id and st_my_thread_var->dbug_id. These are needed
to ensure that we have a constant thread_id used for debugging with a THD,
even if it changes thread_id (=connection_id)
- Set variables.pseudo_thread_id in constructor. Removed not needed sets.
Diffstat (limited to 'sql/sql_udf.cc')
-rw-r--r-- | sql/sql_udf.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/sql_udf.cc b/sql/sql_udf.cc index 502bc88c489..db2ef93204c 100644 --- a/sql/sql_udf.cc +++ b/sql/sql_udf.cc @@ -154,7 +154,7 @@ void udf_init() mysql_rwlock_init(key_rwlock_THR_LOCK_udf, &THR_LOCK_udf); init_sql_alloc(&mem, UDF_ALLOC_BLOCK_SIZE, 0, MYF(0)); - THD *new_thd = new THD; + THD *new_thd = new THD(0); if (!new_thd || my_hash_init(&udf_hash,system_charset_info,32,0,0,get_hash_key, NULL, 0)) { |