mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
Extract reload_acl_and_cache() and flush_tables_with_read_lock()
into an own implementation file.
This commit is contained in:
@@ -89,6 +89,49 @@ TABLE_SHARE *get_cached_table_share(const char *db, const char *table_name);
|
||||
|
||||
TABLE *open_ltable(THD *thd, TABLE_LIST *table_list, thr_lock_type update,
|
||||
uint lock_flags);
|
||||
|
||||
/* mysql_lock_tables() and open_table() flags bits */
|
||||
#define MYSQL_OPEN_IGNORE_GLOBAL_READ_LOCK 0x0001
|
||||
#define MYSQL_OPEN_IGNORE_FLUSH 0x0002
|
||||
#define MYSQL_OPEN_TEMPORARY_ONLY 0x0004
|
||||
#define MYSQL_LOCK_IGNORE_GLOBAL_READ_ONLY 0x0008
|
||||
#define MYSQL_LOCK_LOG_TABLE 0x0010
|
||||
/**
|
||||
Do not try to acquire a metadata lock on the table: we
|
||||
already have one.
|
||||
*/
|
||||
#define MYSQL_OPEN_HAS_MDL_LOCK 0x0020
|
||||
/**
|
||||
If in locked tables mode, ignore the locked tables and get
|
||||
a new instance of the table.
|
||||
*/
|
||||
#define MYSQL_OPEN_GET_NEW_TABLE 0x0040
|
||||
/** Don't look up the table in the list of temporary tables. */
|
||||
#define MYSQL_OPEN_SKIP_TEMPORARY 0x0080
|
||||
/** Fail instead of waiting when conficting metadata lock is discovered. */
|
||||
#define MYSQL_OPEN_FAIL_ON_MDL_CONFLICT 0x0100
|
||||
/** Open tables using MDL_SHARED lock instead of one specified in parser. */
|
||||
#define MYSQL_OPEN_FORCE_SHARED_MDL 0x0200
|
||||
/**
|
||||
Open tables using MDL_SHARED_HIGH_PRIO lock instead of one specified
|
||||
in parser.
|
||||
*/
|
||||
#define MYSQL_OPEN_FORCE_SHARED_HIGH_PRIO_MDL 0x0400
|
||||
/**
|
||||
When opening or locking the table, use the maximum timeout
|
||||
(LONG_TIMEOUT = 1 year) rather than the user-supplied timeout value.
|
||||
*/
|
||||
#define MYSQL_LOCK_IGNORE_TIMEOUT 0x0800
|
||||
|
||||
/** Please refer to the internals manual. */
|
||||
#define MYSQL_OPEN_REOPEN (MYSQL_OPEN_IGNORE_FLUSH |\
|
||||
MYSQL_OPEN_IGNORE_GLOBAL_READ_LOCK |\
|
||||
MYSQL_LOCK_IGNORE_GLOBAL_READ_ONLY |\
|
||||
MYSQL_LOCK_IGNORE_TIMEOUT |\
|
||||
MYSQL_OPEN_GET_NEW_TABLE |\
|
||||
MYSQL_OPEN_SKIP_TEMPORARY |\
|
||||
MYSQL_OPEN_HAS_MDL_LOCK)
|
||||
|
||||
bool open_table(THD *thd, TABLE_LIST *table_list, MEM_ROOT *mem_root,
|
||||
Open_table_context *ot_ctx);
|
||||
bool open_new_frm(THD *thd, TABLE_SHARE *share, const char *alias,
|
||||
|
||||
Reference in New Issue
Block a user