>Description:
Deadlock possible when LOCKing underlying tables in a MERGE table definition
>How-To-Repeat:
mysql> CREATE TABLE lock_test1 ( test CHAR(5) DEFAULT '' NOT NULL PRIMARY KEY
);
mysql> CREATE TABLE lock_test2 ( test CHAR(5) DEFAULT '' NOT NULL PRIMARY KEY
);
mysql> CREATE TABLE lock_test (test CHAR(5) DEFAULT '' NOT NULL, KEY(test))
TYPE=MERGE UNION=(lock_test1,lock_test2);
mysql> LOCK TABLES lock_test1 WRITE;
mysql> DROP TABLE lock_test;
<client hangs here>
From a different client:
mysql> SHOW PROCESSLIST;
+-------+------+-----------+-------+------------+------+-------------------+-------------------------+
| Id | User | Host | db | Command | Time | State |
Info |
+-------+------+-----------+-------+------------+------+-------------------+-------------------------+
| 13154 | root | localhost | books | Query | 100 | Waiting on cond |
DROP TABLE lock_test |
| 13155 | root | localhost | books | Query | 108 | Locked |
SELECT * FROM lock_test |
| 13157 | root | localhost | books | Field List | 68 | Waiting for table |
|
| 13158 | root | localhost | NULL | Query | 0 | NULL |
SHOW PROCESSLIST |
+-------+------+-----------+-------+------------+------+-------------------+-------------------------+
4 rows in set (0.00 sec)
>Fix:
Unknown
>Submitter-Id: <submitter ID>
>Originator: root
>Organization: NetCentral, Inc.
>MySQL support: extended email support
>Synopsis: Deadlock possible when working with MERGE tables
>Severity: serious
>Priority: medium
>Category: mysql
>Class: sw-bug
>Release: mysql-3.23.33 (Source distribution)
>Server: /usr/local/bin/mysqladmin Ver 8.15 Distrib 3.23.33, for pc-linux-gnu on i586
Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL license
Server version 3.23.29a-gamma
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /tmp/mysql.sock
Uptime: 75 days 6 hours 8 min 22 sec
Threads: 1 Questions: 2464115 Slow queries: 4 Opens: 38 Flush tables: 1 Open
tables: 7 Queries per second avg: 0.379
>Environment:
System: Linux neuter 2.2.14-15mdk #1 Tue Jan 4 22:24:20 CET 2000 i586 unknown
Architecture: i586
Some paths: /usr/bin/perl /usr/bin/make /usr/bin/gmake /usr/bin/gcc /usr/bin/cc
GCC: Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux/2.95.2/specs
gcc version 2.95.2 19991024 (release)
Compilation info: CC='gcc' CFLAGS='' CXX='c++' CXXFLAGS='' LDFLAGS=''
LIBC:
lrwxrwxrwx 1 root root 13 Dec 24 1999 /lib/libc.so.6 -> libc-2.1.2.so
-rwxr-xr-x 1 root root 5195054 Dec 15 1999 /lib/libc-2.1.2.so
-rw-r--r-- 1 root root 20508346 Dec 15 1999 /usr/lib/libc.a
-rw-r--r-- 1 root root 178 Dec 15 1999 /usr/lib/libc.so
Configure command: ./configure
Perl: This is perl, version 5.005_03 built for i386-linux
---------------------------------------------------------------------
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 <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php