Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions mysql-test/main/create_or_replace.test
Original file line number Diff line number Diff line change
Expand Up @@ -239,6 +239,7 @@ select LOCK_MODE,LOCK_TYPE, TABLE_SCHEMA,TABLE_NAME from information_schema.meta
--error ER_DUP_FIELDNAME
create or replace table test.t1 (a int) select 1 as 'a', 2 as 'a';
show tables;
--sorted_result
select LOCK_MODE,LOCK_TYPE, TABLE_SCHEMA,TABLE_NAME from information_schema.metadata_lock_info;
--sorted_result
select LOCK_MODE,LOCK_TYPE, TABLE_SCHEMA,TABLE_NAME from information_schema.metadata_lock_info;
Expand Down
8 changes: 4 additions & 4 deletions mysql-test/main/mdl.result
Original file line number Diff line number Diff line change
Expand Up @@ -28,19 +28,19 @@ WHERE TABLE_NAME NOT LIKE 'innodb_%_stats';
LOCK_MODE LOCK_TYPE TABLE_SCHEMA TABLE_NAME
MDL_BACKUP_DDL Backup lock
MDL_BACKUP_DML Backup lock
MDL_SHARED_WRITE Table metadata lock test t1
MDL_SHARED_NO_READ_WRITE Table metadata lock test t3
MDL_INTENTION_EXCLUSIVE Schema metadata lock test
MDL_SHARED_NO_READ_WRITE Table metadata lock test t3
MDL_SHARED_WRITE Table metadata lock test t1
UNLOCK TABLES;
LOCK TABLES t3 WRITE, t1 WRITE CONCURRENT;
SELECT LOCK_MODE, LOCK_TYPE, TABLE_SCHEMA, TABLE_NAME FROM information_schema.metadata_lock_info
WHERE TABLE_NAME NOT LIKE 'innodb_%_stats';
LOCK_MODE LOCK_TYPE TABLE_SCHEMA TABLE_NAME
MDL_BACKUP_DDL Backup lock
MDL_BACKUP_DML Backup lock
MDL_SHARED_WRITE Table metadata lock test t1
MDL_SHARED_NO_READ_WRITE Table metadata lock test t3
MDL_INTENTION_EXCLUSIVE Schema metadata lock test
MDL_SHARED_NO_READ_WRITE Table metadata lock test t3
MDL_SHARED_WRITE Table metadata lock test t1
UNLOCK TABLES;
LOCK TABLES t1 WRITE, mysql.user WRITE;
SELECT LOCK_MODE, LOCK_TYPE, TABLE_SCHEMA, TABLE_NAME FROM information_schema.metadata_lock_info
Expand Down
2 changes: 2 additions & 0 deletions mysql-test/main/mdl.test
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,12 @@ SELECT LOCK_MODE, LOCK_TYPE, TABLE_SCHEMA, TABLE_NAME FROM information_schema.me
WHERE TABLE_NAME NOT LIKE 'innodb_%_stats';
UNLOCK TABLES;
LOCK TABLES t1 WRITE CONCURRENT, t3 WRITE;
--sorted_result
SELECT LOCK_MODE, LOCK_TYPE, TABLE_SCHEMA, TABLE_NAME FROM information_schema.metadata_lock_info
WHERE TABLE_NAME NOT LIKE 'innodb_%_stats';
UNLOCK TABLES;
LOCK TABLES t3 WRITE, t1 WRITE CONCURRENT;
--sorted_result
SELECT LOCK_MODE, LOCK_TYPE, TABLE_SCHEMA, TABLE_NAME FROM information_schema.metadata_lock_info
WHERE TABLE_NAME NOT LIKE 'innodb_%_stats';
UNLOCK TABLES;
Expand Down
6 changes: 6 additions & 0 deletions mysql-test/main/mysqld--help.result
Original file line number Diff line number Diff line change
Expand Up @@ -716,6 +716,11 @@ The following specify which files/extra groups are read (specified before remain
Unused. Deprecated, will be removed in a future release.
--metadata-locks-hash-instances=#
Unused. Deprecated, will be removed in a future release.
--metadata-locks-instances=#
Number of fast lanes to create for metadata locks. Can be
used to improve DML scalability by eliminating
MDL_lock::rwlock load. Use 1 to disable MDL fast lanes.
Supported MDL namespaces: BACKUP
--mhnsw-default-distance=name
Distance function to build the vector index for. One of:
euclidean, cosine
Expand Down Expand Up @@ -1847,6 +1852,7 @@ max-write-lock-count 18446744073709551615
memlock FALSE
metadata-locks-cache-size 1024
metadata-locks-hash-instances 8
metadata-locks-instances 8
mhnsw-default-distance euclidean
mhnsw-default-m 6
mhnsw-ef-search 20
Expand Down
10 changes: 10 additions & 0 deletions mysql-test/suite/sys_vars/r/sysvars_server_embedded.result
Original file line number Diff line number Diff line change
Expand Up @@ -2202,6 +2202,16 @@ NUMERIC_BLOCK_SIZE 1
ENUM_VALUE_LIST NULL
READ_ONLY YES
COMMAND_LINE_ARGUMENT REQUIRED
VARIABLE_NAME METADATA_LOCKS_INSTANCES
VARIABLE_SCOPE GLOBAL
VARIABLE_TYPE INT UNSIGNED
VARIABLE_COMMENT Number of fast lanes to create for metadata locks. Can be used to improve DML scalability by eliminating MDL_lock::rwlock load. Use 1 to disable MDL fast lanes. Supported MDL namespaces: BACKUP
NUMERIC_MIN_VALUE 1
NUMERIC_MAX_VALUE 256
NUMERIC_BLOCK_SIZE 1
ENUM_VALUE_LIST NULL
READ_ONLY YES
COMMAND_LINE_ARGUMENT REQUIRED
VARIABLE_NAME MHNSW_DEFAULT_DISTANCE
VARIABLE_SCOPE SESSION
VARIABLE_TYPE ENUM
Expand Down
10 changes: 10 additions & 0 deletions mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result
Original file line number Diff line number Diff line change
Expand Up @@ -2422,6 +2422,16 @@ NUMERIC_BLOCK_SIZE 1
ENUM_VALUE_LIST NULL
READ_ONLY YES
COMMAND_LINE_ARGUMENT REQUIRED
VARIABLE_NAME METADATA_LOCKS_INSTANCES
VARIABLE_SCOPE GLOBAL
VARIABLE_TYPE INT UNSIGNED
VARIABLE_COMMENT Number of fast lanes to create for metadata locks. Can be used to improve DML scalability by eliminating MDL_lock::rwlock load. Use 1 to disable MDL fast lanes. Supported MDL namespaces: BACKUP
NUMERIC_MIN_VALUE 1
NUMERIC_MAX_VALUE 256
NUMERIC_BLOCK_SIZE 1
ENUM_VALUE_LIST NULL
READ_ONLY YES
COMMAND_LINE_ARGUMENT REQUIRED
VARIABLE_NAME MHNSW_DEFAULT_DISTANCE
VARIABLE_SCOPE SESSION
VARIABLE_TYPE ENUM
Expand Down
2 changes: 1 addition & 1 deletion plugin/metadata_lock_info/metadata_lock_info.cc
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ int i_s_metadata_lock_info_fill_row(
TABLE *table = param->table;
DBUG_ENTER("i_s_metadata_lock_info_fill_row");
MDL_context *mdl_ctx = mdl_ticket->get_ctx();
MDL_key *mdl_key = mdl_ticket->get_key();
const MDL_key *mdl_key = mdl_ticket->get_key();
MDL_key::enum_mdl_namespace mdl_namespace = mdl_key->mdl_namespace();
if (!granted)
DBUG_RETURN(0);
Expand Down
2 changes: 1 addition & 1 deletion sql/item_func.cc
Original file line number Diff line number Diff line change
Expand Up @@ -4165,7 +4165,7 @@ class User_level_lock
const uchar *ull_get_key(const void *ptr, size_t *length, my_bool)
{
User_level_lock *ull = (User_level_lock*) ptr;
MDL_key *key = ull->lock->get_key();
const MDL_key *key = ull->lock->get_key();
*length= key->length();
return key->ptr();
}
Expand Down
Loading