mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-4441 DROP DATABASE with a newly created ARCHIVE table does not work
1. DROP DATABASE should use ha_discover_table_names(), not look at .frm files. 2. filename_to_tablename() also encodes temp file names #sql- -> #mysql50##sql 3. no special treatment for #sql- files, no TABLE_LIST::internal_tmp_table 4. discover also table file names, that start from #
This commit is contained in:
@ -123,3 +123,6 @@ select * from `a/../`;
|
||||
a
|
||||
flush tables;
|
||||
drop table `a/../`;
|
||||
create database test1;
|
||||
create table test1.t1 (i int) engine=archive;
|
||||
drop database test1;
|
||||
|
@ -102,3 +102,10 @@ select * from `a/../`; flush tables;
|
||||
remove_file $mysqld_datadir/test/a@002f@002e@002e@002f.frm;
|
||||
drop table `a/../`;
|
||||
|
||||
#
|
||||
# MDEV-4441 DROP DATABASE with a newly created ARCHIVE table does not work
|
||||
#
|
||||
create database test1;
|
||||
create table test1.t1 (i int) engine=archive;
|
||||
drop database test1;
|
||||
|
||||
|
@ -8,12 +8,12 @@ select * from mysqltest1.t1 into outfile 'mysqltest1/f1.txt';
|
||||
create table mysqltest1.t2 (n int);
|
||||
create table mysqltest1.t3 (n int);
|
||||
drop database mysqltest1;
|
||||
ERROR HY000: Error dropping database (can't rmdir './mysqltest1/', errno: 17 "File exists")
|
||||
ERROR HY000: Error dropping database (can't rmdir './mysqltest1', errno: 39 "Directory not empty")
|
||||
use mysqltest1;
|
||||
show tables;
|
||||
Tables_in_mysqltest1
|
||||
drop database mysqltest1;
|
||||
ERROR HY000: Error dropping database (can't rmdir './mysqltest1/', errno: 17 "File exists")
|
||||
ERROR HY000: Error dropping database (can't rmdir './mysqltest1', errno: 39 "Directory not empty")
|
||||
use mysqltest1;
|
||||
show tables;
|
||||
Tables_in_mysqltest1
|
||||
|
@ -13,7 +13,7 @@ insert into mysqltest1.t1 values (1);
|
||||
select * from mysqltest1.t1 into outfile 'mysqltest1/f1.txt';
|
||||
create table mysqltest1.t2 (n int);
|
||||
create table mysqltest1.t3 (n int);
|
||||
--replace_result \\ /
|
||||
--replace_result \\ / 66 39
|
||||
--error 1010
|
||||
drop database mysqltest1;
|
||||
use mysqltest1;
|
||||
@ -30,7 +30,7 @@ while ($1)
|
||||
}
|
||||
--enable_query_log
|
||||
|
||||
--replace_result \\ /
|
||||
--replace_result \\ / 66 39
|
||||
--error 1010
|
||||
drop database mysqltest1;
|
||||
use mysqltest1;
|
||||
|
Reference in New Issue
Block a user