diff options
author | Sergey Vojtovich <svoj@mariadb.org> | 2015-06-02 15:35:02 +0400 |
---|---|---|
committer | Sergey Vojtovich <svoj@mariadb.org> | 2015-06-02 18:02:32 +0400 |
commit | d298b02233b6f6be71208418bec6243123593c3c (patch) | |
tree | 9e825991274980de7a011e2bde1bfdec61f6363f /sql/sql_class.h | |
parent | 3709c7fc6d46c624c24523907eb2a0ad8a1e5062 (diff) | |
download | mariadb-git-d298b02233b6f6be71208418bec6243123593c3c.tar.gz |
MDEV-8191 - THD::set_query() takes 0.07% in OLTP RO
Moved THD::set_query() definition to sql_class.h so that it can be inlined.
Overhead change:
THD::set_query 0.07% -> out of radar
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r-- | sql/sql_class.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h index aff6e35f583..2b832b121f8 100644 --- a/sql/sql_class.h +++ b/sql/sql_class.h @@ -3704,7 +3704,16 @@ public: { set_query(CSET_STRING(query_arg, query_length_arg, charset())); } - void set_query(const CSET_STRING &str); /* Mutex protected */ + void set_query(const CSET_STRING &string_arg) + { + mysql_mutex_lock(&LOCK_thd_data); + set_query_inner(string_arg); + mysql_mutex_unlock(&LOCK_thd_data); + +#ifdef HAVE_PSI_THREAD_INTERFACE + PSI_THREAD_CALL(set_thread_info)(query(), query_length()); +#endif + } void reset_query() /* Mutex protected */ { set_query(CSET_STRING()); } void set_query_and_id(char *query_arg, uint32 query_length_arg, |