diff options
author | Jan Lindström <jan.lindstrom@mariadb.com> | 2021-01-11 08:34:04 +0200 |
---|---|---|
committer | Jan Lindström <jan.lindstrom@mariadb.com> | 2021-01-11 08:34:04 +0200 |
commit | d1aea01dd3438225a2adcca19d79f7a9ff22c8f8 (patch) | |
tree | a6fec29df398b8abf2e51dd18c117d84ca04d783 /sql/sql_base.h | |
parent | 3b548d3bbf888e7c9e9853cf826e528b5195d8bd (diff) | |
download | mariadb-git-bb-10.2-MDEV-23536.tar.gz |
MDEV-23536 : Race condition between KILL and transaction commitbb-10.2-MDEV-23536
Fix test regression. We need to pass information do we hold
THD::LOCK_thd_data mutex to close_thread_table,
close_thread_tables and Locked_tables_list::unlock_locked_tables
because unlock_locked_tables would otherwise take it.
Diffstat (limited to 'sql/sql_base.h')
-rw-r--r-- | sql/sql_base.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sql/sql_base.h b/sql/sql_base.h index b67341bcbda..55b0aa645cf 100644 --- a/sql/sql_base.h +++ b/sql/sql_base.h @@ -147,7 +147,7 @@ TABLE_LIST *find_table_in_list(TABLE_LIST *table, TABLE_LIST *TABLE_LIST::*link, const char *db_name, const char *table_name); -void close_thread_tables(THD *thd); +void close_thread_tables(THD *thd, bool have_mutex=false); void switch_to_nullable_trigger_fields(List<Item> &items, TABLE *); void switch_defaults_to_nullable_trigger_fields(TABLE *table); bool fill_record_n_invoke_before_triggers(THD *thd, TABLE *table, @@ -269,7 +269,7 @@ bool open_normal_and_derived_tables(THD *thd, TABLE_LIST *tables, uint flags, uint dt_phases); bool lock_tables(THD *thd, TABLE_LIST *tables, uint counter, uint flags); int decide_logging_format(THD *thd, TABLE_LIST *tables); -void close_thread_table(THD *thd, TABLE **table_ptr); +void close_thread_table(THD *thd, TABLE **table_ptr, bool have_mutex=false); TABLE_LIST *unique_table(THD *thd, TABLE_LIST *table, TABLE_LIST *table_list, uint check_flag); bool is_equal(const LEX_STRING *a, const LEX_STRING *b); |