Details
-
Bug
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
10.0(EOL), 10.1(EOL), 10.2(EOL), 10.3(EOL)
-
None
Description
to reproduce
OS: Unix
lower_case_table_names = 0 # default value for unix
CREATE DATABASE to_be_lowered;
|
USE to_be_lowered;
|
CREATE TABLE T1(c1 INT);
|
Stop service
Change lower_case_table_names in my.cnf to
lower_case_table_names = 1
start service
DROP DATABASE to_be_lowered;
|
SQL Error (1010): Error drop database (can't rmdir './to_be_lowered', errno: 39 "Directory not empty) |
The error message comes from unix rmdir himself.
All *.ibd and db.opt already deleted, but files T1.frm still exists in database directory,
which provoke above error message.
DROP DATABASE should check, if some .frm names are in the datadir with capital_letters,
if lower_case_table_names = 1
2 Solutions are possible.
1. Throw an error before ! deleting *.ibd files
2. Delete also the .frm files with Captial letter.