bug in DROP DATABASE

bug in DROP DATABASE

am 24.01.2003 10:22:40 von Dirkjan Ochtman

Hi,

How-To-Repeat:

Version: MySQL 4.0.9-gamma-max-nt
Windows: Windows XP + SP 1

> mysql -u User -p
Enter password: *******

> SHOW TABLE STATUS FROM `Database`;
4 rows in set (0.00 sec)

> DROP DATABASE `Database`;
ERROR 6: Error on delete of '.\Database\TABLE.MYI' (Errcode: 13)

I think you get the same kind of error when doing an ALTER TABLE query
directly after the "SHOW TABLE STATUS FROM" SQL.

Regards,

Dirkjan Ochtman


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13571@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 24.01.2003 14:02:15 von Sinisa Milivojevic

Dirkjan Ochtman writes:
> Hi,
>
> How-To-Repeat:
>
> Version: MySQL 4.0.9-gamma-max-nt
> Windows: Windows XP + SP 1
>
> > mysql -u User -p
> Enter password: *******
>
> > SHOW TABLE STATUS FROM `Database`;
> 4 rows in set (0.00 sec)
>
> > DROP DATABASE `Database`;
> ERROR 6: Error on delete of '.\Database\TABLE.MYI' (Errcode: 13)
>
> I think you get the same kind of error when doing an ALTER TABLE query
> directly after the "SHOW TABLE STATUS FROM" SQL.
>
> Regards,
>
> Dirkjan Ochtman

Hi!

The above is not a bug and can not be reproduced.

The above means that MySQL service is running under one user, while it
utilizes for datadir a volume that is owned by another user.

--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Mr. Sinisa Milivojevic
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ Larnaca, Cyprus
<___/ www.mysql.com

Join MySQL Users Conference and Expo:
http://www.mysql.com/events/uc2003/


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13574@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 25.01.2003 14:20:44 von Dirkjan Ochtman

Uhm, my MySQL service is running as LocalSystem (the default for Windows XP
Services), while "Everyone" has "Full Control" to the MySQL data dir, so I
don't see why these queries should not work.

Regards,

Dirkjan

----- Original Message -----
From: "Sinisa Milivojevic"
To:
Cc:
Sent: Friday, January 24, 2003 2:02 PM
Subject: Re: bug in DROP DATABASE


> Dirkjan Ochtman writes:
> > Hi,
> >
> > How-To-Repeat:
> >
> > Version: MySQL 4.0.9-gamma-max-nt
> > Windows: Windows XP + SP 1
> >
> > > mysql -u User -p
> > Enter password: *******
> >
> > > SHOW TABLE STATUS FROM `Database`;
> > 4 rows in set (0.00 sec)
> >
> > > DROP DATABASE `Database`;
> > ERROR 6: Error on delete of '.\Database\TABLE.MYI' (Errcode: 13)
> >
> > I think you get the same kind of error when doing an ALTER TABLE query
> > directly after the "SHOW TABLE STATUS FROM" SQL.
> >
> > Regards,
> >
> > Dirkjan Ochtman
>
> Hi!
>
> The above is not a bug and can not be reproduced.
>
> The above means that MySQL service is running under one user, while it
> utilizes for datadir a volume that is owned by another user.
>
> --
> __ ___ ___ ____ __
> / |/ /_ __/ __/ __ \/ / Mr. Sinisa Milivojevic
> / /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
> /_/ /_/\_, /___/\___\_\___/ Larnaca, Cyprus
> <___/ www.mysql.com
>
> Join MySQL Users Conference and Expo:
> http://www.mysql.com/events/uc2003/
>
>
> ------------------------------------------------------------ ---------
> Before posting, please check:
> http://www.mysql.com/manual.php (the manual)
> http://lists.mysql.com/ (the list archive)
>
> To request this thread, e-mail bugs-thread13574@lists.mysql.com
> To unsubscribe, e-mail
>
>
>


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13585@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 25.01.2003 14:47:38 von Sinisa Milivojevic

Dirkjan Ochtman writes:
> Uhm, my MySQL service is running as LocalSystem (the default for Windows XP
> Services), while "Everyone" has "Full Control" to the MySQL data dir, so I
> don't see why these queries should not work.
>
> Regards,
>
> Dirkjan

The error code returned by MySQL is undoubtfull.

Your "LocalSystem" user does have reading but no writting privileges
over MySQL datadir, at least not a privilege of removing directories.



--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Mr. Sinisa Milivojevic
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ Larnaca, Cyprus
<___/ www.mysql.com

Join MySQL Users Conference and Expo:
http://www.mysql.com/events/uc2003/


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13586@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 25.01.2003 14:54:15 von Dirkjan Ochtman

The problem occurs not when deleting a directory, but on deleting a *.myi
file. Besides, if the DROP DATABASE is not prefixed by the SHOW TABLE STATUS
FROM query there is no problem whatsoever. The problem will only occur if I
issue a DROP DATABASE on a database that I previously issued a SHOW TABLE
STATUS FROM on, even if I closed the client after the SHOW TABLE STATUS
FROM. But if I restart the server, then the client and then directly try to
DROP the DATABASE, it works just fine!

Regards,

Dirkjan

----- Original Message -----
From: "Sinisa Milivojevic"
To:
Cc:
Sent: Saturday, January 25, 2003 2:47 PM
Subject: Re: bug in DROP DATABASE


> Dirkjan Ochtman writes:
> > Uhm, my MySQL service is running as LocalSystem (the default for Windows
XP
> > Services), while "Everyone" has "Full Control" to the MySQL data dir, so
I
> > don't see why these queries should not work.
> >
> > Regards,
> >
> > Dirkjan
>
> The error code returned by MySQL is undoubtfull.
>
> Your "LocalSystem" user does have reading but no writting privileges
> over MySQL datadir, at least not a privilege of removing directories.
>
>
>
> --
> __ ___ ___ ____ __
> / |/ /_ __/ __/ __ \/ / Mr. Sinisa Milivojevic
> / /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
> /_/ /_/\_, /___/\___\_\___/ Larnaca, Cyprus
> <___/ www.mysql.com
>
> Join MySQL Users Conference and Expo:
> http://www.mysql.com/events/uc2003/
>
>
>


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13587@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 25.01.2003 17:56:21 von miguel solorzano

At 10:22 24/01/2003 +0100, Dirkjan Ochtman wrote:
Hi,

Sorry but I don't be able for to repeat the behavior reported:

Microsoft Windows 2000 [Vers=E3o 5.00.2195]
(C) Copyright 1985-1999 Microsoft Corp.

c:\mysql\bin>mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.9-gamma-max-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create database `database`;
Query OK, 1 row affected (0.09 sec)

mysql> use database;
Database changed
mysql> create table utest (id int);
Query OK, 0 rows affected (0.05 sec)

mysql> show table status from `database`;

1 row in set (0.00 sec)

mysql> drop database `database`;
Query OK, 0 rows affected (0.05 sec)

mysql>
>Hi,
>
>How-To-Repeat:
>
>Version: MySQL 4.0.9-gamma-max-nt
>Windows: Windows XP + SP 1
>
> > mysql -u User -p
>Enter password: *******
>
> > SHOW TABLE STATUS FROM `Database`;
>4 rows in set (0.00 sec)
>
> > DROP DATABASE `Database`;
>ERROR 6: Error on delete of '.\Database\TABLE.MYI' (Errcode: 13)
>
>I think you get the same kind of error when doing an ALTER TABLE query
>directly after the "SHOW TABLE STATUS FROM" SQL.
>
>Regards,
>
>Dirkjan Ochtman
>
>
>----------------------------------------------------------- ----------
>Before posting, please check:
> http://www.mysql.com/manual.php (the manual)
> http://lists.mysql.com/ (the list archive)
>
>To request this thread, e-mail bugs-thread13571@lists.mysql.com
>To unsubscribe, e-mail

--=20
Regards,
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Miguel Angel Sol=F3rzano
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ S=E3o Paulo - Brazil
<___/ www.mysql.com=20


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13591@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 27.01.2003 16:21:43 von Manuzhai

Hi,

I think I found the actual problem: case-sensitivity. Try the same sequence
of commands but consistenly replacing "database" with "Database"! I tried
these statements with both dbtest and Dbtest, and while dbtest went okay,
Dbtest errored the same way I had experienced before. This is on Windows
5.1.2600.

----- Original Message -----
From: "miguel solórzano"
To: "Dirkjan Ochtman" ;
Cc:
Sent: Saturday, January 25, 2003 5:56 PM
Subject: Re: bug in DROP DATABASE


At 10:22 24/01/2003 +0100, Dirkjan Ochtman wrote:
Hi,

Sorry but I don't be able for to repeat the behavior reported:

Microsoft Windows 2000 [Versão 5.00.2195]
(C) Copyright 1985-1999 Microsoft Corp.

c:\mysql\bin>mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.9-gamma-max-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create database `database`;
Query OK, 1 row affected (0.09 sec)

mysql> use database;
Database changed
mysql> create table utest (id int);
Query OK, 0 rows affected (0.05 sec)

mysql> show table status from `database`;

1 row in set (0.00 sec)

mysql> drop database `database`;
Query OK, 0 rows affected (0.05 sec)

mysql>
>Hi,
>
>How-To-Repeat:
>
>Version: MySQL 4.0.9-gamma-max-nt
>Windows: Windows XP + SP 1
>
> > mysql -u User -p
>Enter password: *******
>
> > SHOW TABLE STATUS FROM `Database`;
>4 rows in set (0.00 sec)
>
> > DROP DATABASE `Database`;
>ERROR 6: Error on delete of '.\Database\TABLE.MYI' (Errcode: 13)
>
>I think you get the same kind of error when doing an ALTER TABLE query
>directly after the "SHOW TABLE STATUS FROM" SQL.
>
>Regards,
>
>Dirkjan Ochtman
>
>
>----------------------------------------------------------- ----------
>Before posting, please check:
> http://www.mysql.com/manual.php (the manual)
> http://lists.mysql.com/ (the list archive)
>
>To request this thread, e-mail bugs-thread13571@lists.mysql.com
>To unsubscribe, e-mail

--
Regards,
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Miguel Angel Solórzano
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ São Paulo - Brazil
<___/ www.mysql.com




------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13601@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 27.01.2003 20:07:07 von Dirkjan Ochtman

Hi,

I have another addition to the problem: it seems that MySQL creates all
lowercased databases now. I remember this being a configuration option
somewhere, but I can't find it in my.ini. I guess it would make sense if
MySQL didn't lowercase everything before so I had databases called "pMA",
for example, while it lowercases everything now. Still, it's weird that the
commands I tried work after restarting the server.

Regards,

Dirkjan

----- Original Message -----
From: "miguel solórzano"
To: "Dirkjan Ochtman" ;
Cc:
Sent: Saturday, January 25, 2003 5:56 PM
Subject: Re: bug in DROP DATABASE


At 10:22 24/01/2003 +0100, Dirkjan Ochtman wrote:
Hi,

Sorry but I don't be able for to repeat the behavior reported:

Microsoft Windows 2000 [Versão 5.00.2195]
(C) Copyright 1985-1999 Microsoft Corp.

c:\mysql\bin>mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.9-gamma-max-nt

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create database `database`;
Query OK, 1 row affected (0.09 sec)

mysql> use database;
Database changed
mysql> create table utest (id int);
Query OK, 0 rows affected (0.05 sec)

mysql> show table status from `database`;

1 row in set (0.00 sec)

mysql> drop database `database`;
Query OK, 0 rows affected (0.05 sec)

mysql>
>Hi,
>
>How-To-Repeat:
>
>Version: MySQL 4.0.9-gamma-max-nt
>Windows: Windows XP + SP 1
>
> > mysql -u User -p
>Enter password: *******
>
> > SHOW TABLE STATUS FROM `Database`;
>4 rows in set (0.00 sec)
>
> > DROP DATABASE `Database`;
>ERROR 6: Error on delete of '.\Database\TABLE.MYI' (Errcode: 13)
>
>I think you get the same kind of error when doing an ALTER TABLE query
>directly after the "SHOW TABLE STATUS FROM" SQL.
>
>Regards,
>
>Dirkjan Ochtman
>
>
>----------------------------------------------------------- ----------
>Before posting, please check:
> http://www.mysql.com/manual.php (the manual)
> http://lists.mysql.com/ (the list archive)
>
>To request this thread, e-mail bugs-thread13571@lists.mysql.com
>To unsubscribe, e-mail

--
Regards,
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Miguel Angel Solórzano
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ São Paulo - Brazil
<___/ www.mysql.com




------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13603@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 27.01.2003 23:19:52 von miguel solorzano

At 20:36 27/01/2003 +0100, Dirkjan Ochtman wrote:
Hi,
>Okay, sorry for spamming like this, but I can confirm this now. Found the
>configuration option, put "lower_case_table_names =3D 0" in my.ini and
>restarted the server, and after this the test queries used before worked
>fine
>for both `database` and `Database`. You might want to put out an extra
>warning to Windows users, include the above statement in the Windows-dist
>my.cnf, catch this behavior or make MySQL give a more specific warning.

I will test again and if I find the behavior you had reported I assume
that is a bug, since MySQL should handle this correctly when
lower_case_table_names =3D 1 ;(.

>My
>problem is fixed now. :)

In the meantime you should use this work around.

>Regards,
>
>Dirkjan (bot: query sql !!!)

--=20
Regards,
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Miguel Angel Sol=F3rzano
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ S=E3o Paulo - Brazil
<___/ www.mysql.com=20


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13604@lists.mysql.com
To unsubscribe, e-mail

Re: bug in DROP DATABASE

am 29.01.2003 16:08:32 von Michael Widenius

Hi!

>>>>> "Sinisa" == Sinisa Milivojevic writes:

Sinisa> Dirkjan Ochtman writes:
>> Uhm, my MySQL service is running as LocalSystem (the default for Windows XP
>> Services), while "Everyone" has "Full Control" to the MySQL data dir, so I
>> don't see why these queries should not work.
>>
>> Regards,
>>
>> Dirkjan

Sinisa> The error code returned by MySQL is undoubtfull.

Just an update about the error code.

> > DROP DATABASE `Database`;
> ERROR 6: Error on delete of '.\Database\TABLE.MYI' (Errcode: 13)

In Windows you will get error 13 if you try to delete a file that is
open.

If you get an error in cases like this it normally means that MySQL
didn't properly close all involved tables before doing the drop.

As Dirkjan reported in a later email, the problem is that when we do
SHOW TABLE STATUS we are reading the database and file names from disk
but NOT converting them to lower case before opening and caching the
table, even if --lower-case-table-names is defined.

I have found and corrected the problem and it will be fixed in 4.0.10
or 4.0.11.

Regards,
Monty

------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread13626@lists.mysql.com
To unsubscribe, e-mail