summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksey Midenkov <midenok@gmail.com>2020-08-04 01:52:52 +0300
committerAleksey Midenkov <midenok@gmail.com>2020-08-07 00:00:50 +0300
commit98e7f5f13cdbc0225e1257182b44df6a5c989b89 (patch)
treeb70776ad9b08c231b9c65aedaea738e44d6287d2
parent1e0f005463504b30551f9c07a82791061d5261af (diff)
downloadmariadb-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.result9
-rw-r--r--mysql-test/main/foreign_key.test9
-rw-r--r--sql/sql_table.cc2
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);