summaryrefslogtreecommitdiff
path: root/sql/sql_base.h
diff options
context:
space:
mode:
authorKonstantin Osipov <kostja@sun.com>2010-08-12 17:50:23 +0400
committerKonstantin Osipov <kostja@sun.com>2010-08-12 17:50:23 +0400
commit29c4873ad5bb0e0f3eb1faf3f22ec00f11ca5cb4 (patch)
tree9e8417877eab9778cb09f99e71c11401e7749bbc /sql/sql_base.h
parent265a6edd23cfdb69c6ac072bf01887f7aed1168c (diff)
parent00496b7acd1f2ac8b099ba7e6a4c7bbf09178384 (diff)
downloadmariadb-git-29c4873ad5bb0e0f3eb1faf3f22ec00f11ca5cb4.tar.gz
Commit on behalf of Dmitry Lenev.
Merge his patch for Bug#52044 into 5.5, and apply review comments.
Diffstat (limited to 'sql/sql_base.h')
-rw-r--r--sql/sql_base.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/sql/sql_base.h b/sql/sql_base.h
index 379aa67f203..e59b20957d2 100644
--- a/sql/sql_base.h
+++ b/sql/sql_base.h
@@ -70,6 +70,7 @@ enum enum_tdc_remove_table_type {TDC_RT_REMOVE_ALL, TDC_RT_REMOVE_NOT_OWN,
#define RTFC_CHECK_KILLED_FLAG 0x0004
bool check_dup(const char *db, const char *name, TABLE_LIST *tables);
+extern mysql_mutex_t LOCK_open;
bool table_cache_init(void);
void table_cache_free(void);
bool table_def_init(void);
@@ -226,7 +227,8 @@ TABLE *open_performance_schema_table(THD *thd, TABLE_LIST *one_table,
Open_tables_state *backup);
void close_performance_schema_table(THD *thd, Open_tables_state *backup);
-bool close_cached_tables(THD *thd, TABLE_LIST *tables, bool wait_for_refresh);
+bool close_cached_tables(THD *thd, TABLE_LIST *tables,
+ bool wait_for_refresh, ulong timeout);
bool close_cached_connection_tables(THD *thd, bool wait_for_refresh,
LEX_STRING *connect_string);
void close_all_tables_for_name(THD *thd, TABLE_SHARE *share,
@@ -426,8 +428,8 @@ public:
enum enum_open_table_action
{
OT_NO_ACTION= 0,
- OT_MDL_CONFLICT,
- OT_WAIT_TDC,
+ OT_BACKOFF_AND_RETRY,
+ OT_REOPEN_TABLES,
OT_DISCOVER,
OT_REPAIR
};
@@ -437,9 +439,6 @@ public:
bool request_backoff_action(enum_open_table_action action_arg,
TABLE_LIST *table);
- void add_request(MDL_request *request)
- { m_mdl_requests.push_front(request); }
-
bool can_recover_from_failed_open() const
{ return m_action != OT_NO_ACTION; }
@@ -461,8 +460,6 @@ public:
uint get_flags() const { return m_flags; }
private:
- /** List of requests for all locks taken so far. Used for waiting on locks. */
- MDL_request_list m_mdl_requests;
/**
For OT_DISCOVER and OT_REPAIR actions, the table list element for
the table which definition should be re-discovered or which