diff options
author | Andrei Elkin <andrei.elkin@mariadb.com> | 2017-11-16 21:14:59 +0200 |
---|---|---|
committer | Andrei Elkin <andrei.elkin@mariadb.com> | 2017-11-16 21:14:59 +0200 |
commit | 24bb6be9dc672f6cb1d88bd2d4cdab1ab87502fc (patch) | |
tree | 7b85a8cde1e060b0e267830b21370996d323ddfe /sql/sql_class.h | |
parent | 7759ad6e6ab5a29b4fb7a1b8f4d97166e288647c (diff) | |
download | mariadb-git-bb-10.2-semisync.tar.gz |
MDEV-13073. Fixed failing on BB sys_vars.rpl_semi_sync_master_enabled_basic. The issue forced to add up aan argument to THD::THD and THD::init to propagate skip of a mutex locking. The lock could not be released instead as this leads to clear deadlock; the test is received a piece for concurrent ack thread start/stop.bb-10.2-semisync
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r-- | sql/sql_class.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h index c0a6f5b0e62..b708b96053f 100644 --- a/sql/sql_class.h +++ b/sql/sql_class.h @@ -3098,11 +3098,20 @@ public: /* Debug Sync facility. See debug_sync.cc. */ struct st_debug_sync_control *debug_sync_control; #endif /* defined(ENABLED_DEBUG_SYNC) */ - THD(my_thread_id id, bool is_wsrep_applier= false); + /** + @param id thread identifier + @param is_wsrep_applier thread type + @param skip_lock instruct whether @c LOCK_global_system_variables + is already locked, to not acquire it then. + */ + THD(my_thread_id id, bool is_wsrep_applier= false, bool skip_lock= false); ~THD(); - - void init(void); + /** + @param skip_lock instruct whether @c LOCK_global_system_variables + is already locked, to not acquire it then. + */ + void init(bool skip_lock= false); /* Initialize memory roots necessary for query processing and (!) pre-allocate memory for it. We can't do that in THD constructor because |