summaryrefslogtreecommitdiff
path: root/sql/sql_insert.cc
diff options
context:
space:
mode:
authorSergey Vojtovich <svoj@mariadb.org>2015-04-22 13:29:56 +0400
committerSergey Vojtovich <svoj@mariadb.org>2015-05-13 15:56:56 +0400
commitb22959903b89e798f8804ec9a815c88f75915cd9 (patch)
tree8b3443332de3bea57ced828a7932ade4add36ce0 /sql/sql_insert.cc
parent8345bc692192788c25ec004134a3a095437aeb1c (diff)
downloadmariadb-git-b22959903b89e798f8804ec9a815c88f75915cd9.tar.gz
MDEV-7943 - pthread_getspecific() takes 0.76% in OLTP RO
Added THD argument to select_result and all derivative classes. This reduces number of pthread_getspecific calls from 796 to 776 per OLTP RO transaction.
Diffstat (limited to 'sql/sql_insert.cc')
-rw-r--r--sql/sql_insert.cc12
1 files changed, 7 insertions, 5 deletions
diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc
index 24d75d97ee4..aaaf7b998b0 100644
--- a/sql/sql_insert.cc
+++ b/sql/sql_insert.cc
@@ -3348,15 +3348,17 @@ bool mysql_insert_select_prepare(THD *thd)
}
-select_insert::select_insert(TABLE_LIST *table_list_par, TABLE *table_par,
+select_insert::select_insert(THD *thd_arg, TABLE_LIST *table_list_par,
+ TABLE *table_par,
List<Item> *fields_par,
List<Item> *update_fields,
List<Item> *update_values,
enum_duplicates duplic,
- bool ignore_check_option_errors)
- :table_list(table_list_par), table(table_par), fields(fields_par),
- autoinc_value_of_last_inserted_row(0),
- insert_into_view(table_list_par && table_list_par->view != 0)
+ bool ignore_check_option_errors):
+ select_result_interceptor(thd_arg),
+ table_list(table_list_par), table(table_par), fields(fields_par),
+ autoinc_value_of_last_inserted_row(0),
+ insert_into_view(table_list_par && table_list_par->view != 0)
{
bzero((char*) &info,sizeof(info));
info.handle_duplicates= duplic;