diff options
author | Aleksey Midenkov <midenok@gmail.com> | 2020-08-04 01:52:52 +0300 |
---|---|---|
committer | Aleksey Midenkov <midenok@gmail.com> | 2020-08-07 00:00:50 +0300 |
commit | 98e7f5f13cdbc0225e1257182b44df6a5c989b89 (patch) | |
tree | b70776ad9b08c231b9c65aedaea738e44d6287d2 | |
parent | 1e0f005463504b30551f9c07a82791061d5261af (diff) | |
download | mariadb-git-bb-10.5-midenok-MDEV-21052.tar.gz |
Lowercase table names before locking/acquiringbb-10.5-midenok-MDEV-21052
Fixed test innodb_bug57255
-rw-r--r-- | mysql-test/main/foreign_key.result | 9 | ||||
-rw-r--r-- | mysql-test/main/foreign_key.test | 9 | ||||
-rw-r--r-- | sql/sql_table.cc | 2 |
3 files changed, 19 insertions, 1 deletions
diff --git a/mysql-test/main/foreign_key.result b/mysql-test/main/foreign_key.result index 7097df3ad6e..3f915f82ae5 100644 --- a/mysql-test/main/foreign_key.result +++ b/mysql-test/main/foreign_key.result @@ -132,6 +132,15 @@ create table t1 (id int primary key); create table t2 (id int references t1(id)) select id from t1; flush tables; drop table t2, t1; +create database D; +create table D.T1(id int primary key); +create table t2(id int primary key, f1 int references D.T1(id)); +select * from D.T1; +id +drop table t2; +flush tables; +drop table D.T1; +drop database D; # Check duplicate id create or replace table t1 (id int primary key) engine innodb; create or replace table t2 (id2 int, diff --git a/mysql-test/main/foreign_key.test b/mysql-test/main/foreign_key.test index c704dee4fb7..437d93e6bdb 100644 --- a/mysql-test/main/foreign_key.test +++ b/mysql-test/main/foreign_key.test @@ -169,6 +169,15 @@ create table t2 (id int references t1(id)) select id from t1; flush tables; drop table t2, t1; +create database D; +create table D.T1(id int primary key); +create table t2(id int primary key, f1 int references D.T1(id)); +select * from D.T1; +drop table t2; +flush tables; +drop table D.T1; +drop database D; + --echo # Check duplicate id create or replace table t1 (id int primary key) engine innodb; --error ER_DUP_CONSTRAINT_NAME diff --git a/sql/sql_table.cc b/sql/sql_table.cc index c9ce1fff8db..ffd6642b140 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -12520,7 +12520,7 @@ bool TABLE_SHARE::fk_handle_create(THD *thd, FK_create_vector &shares) @return Error status */ -bool Alter_table_ctx::fk_prepare_rename(TABLE *table, Create_field *def, +bool Alter_table_ctx::fk_prepare_rename(THD *thd, TABLE *table, Create_field *def, mbd::set<FK_table_to_lock> &fk_tables_to_lock) { Table_name altered_table(table->s->db, table->s->table_name); |