summaryrefslogtreecommitdiff
path: root/sql/sql_class.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r--sql/sql_class.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h
index 46c37e1b57f..ef42eaf594c 100644
--- a/sql/sql_class.h
+++ b/sql/sql_class.h
@@ -281,6 +281,25 @@ public:
THD();
~THD();
bool store_globals();
+ inline const char* enter_cond(pthread_cond_t *cond, pthread_mutex_t* mutex,
+ const char* msg)
+ {
+ const char* old_msg = proc_info;
+ pthread_mutex_lock(&mysys_var->mutex);
+ mysys_var->current_mutex = mutex;
+ mysys_var->current_cond = cond;
+ proc_info = msg;
+ pthread_mutex_unlock(&mysys_var->mutex);
+ return old_msg;
+ }
+ inline void exit_cond(const char* old_msg)
+ {
+ pthread_mutex_lock(&mysys_var->mutex);
+ mysys_var->current_mutex = 0;
+ mysys_var->current_cond = 0;
+ proc_info = old_msg;
+ pthread_mutex_unlock(&mysys_var->mutex);
+ }
inline time_t query_start() { query_start_used=1; return start_time; }
inline void set_time() { if (user_time) start_time=time_after_lock=user_time; else time_after_lock=time(&start_time); }
inline void end_time() { time(&start_time); }