summaryrefslogtreecommitdiff
path: root/sql/sql_class.h
diff options
context:
space:
mode:
authorAndrei Elkin <andrei.elkin@mariadb.com>2017-11-16 21:14:59 +0200
committerAndrei Elkin <andrei.elkin@mariadb.com>2017-11-16 21:14:59 +0200
commit24bb6be9dc672f6cb1d88bd2d4cdab1ab87502fc (patch)
tree7b85a8cde1e060b0e267830b21370996d323ddfe /sql/sql_class.h
parent7759ad6e6ab5a29b4fb7a1b8f4d97166e288647c (diff)
downloadmariadb-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.h15
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