summaryrefslogtreecommitdiff
path: root/sql/sql_base.h
diff options
context:
space:
mode:
authorSergey Vojtovich <svoj@mariadb.org>2019-12-21 01:22:09 +0400
committerSergey Vojtovich <svoj@mariadb.org>2020-04-03 13:01:21 +0400
commitbfdd30d3e92d3bf5570cc050967098c6b5a2d73a (patch)
tree7168d167db615d501b8a49b3b81bf200c5445a4e /sql/sql_base.h
parent54c03cb4f073b4c3140e75d1747798bace96fdba (diff)
downloadmariadb-git-bfdd30d3e92d3bf5570cc050967098c6b5a2d73a.tar.gz
Fixed close_cached_connection_tables() flushing
Let DROP SERVER and ALTER SERVER perform fair affected tables flushing. That is acquire MDL_EXCLUSIVE and do tdc_remove_table(TDC_RT_REMOVE_ALL). Aim of this patch is elimination of another inconsistent use of TDC_RT_REMOVE_UNUSED. It fixes (to some extent) a problem described in the beginning of sql_server.cc, when close_cached_connection_tables() interferes with concurrent transaction. A better fix should probably introduce proper MDL locks for server objects? Part of MDEV-17882 - Cleanup refresh version
Diffstat (limited to 'sql/sql_base.h')
-rw-r--r--sql/sql_base.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/sql/sql_base.h b/sql/sql_base.h
index 929dc245073..773b95b8317 100644
--- a/sql/sql_base.h
+++ b/sql/sql_base.h
@@ -306,7 +306,6 @@ bool close_cached_tables(THD *thd, TABLE_LIST *tables,
bool wait_for_refresh, ulong timeout);
void purge_tables();
bool flush_tables(THD *thd, flush_tables_type flag);
-bool close_cached_connection_tables(THD *thd, LEX_CSTRING *connect_string);
void close_all_tables_for_name(THD *thd, TABLE_SHARE *share,
ha_extra_function extra,
TABLE *skip_table);