Bug #21131 SHOW TABLE STATUS blocked by write lock
Submitted: 19 Jul 2006 2:27 Modified: 20 Mar 2009 16:20
Reporter: Kolbe Kegel Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Locking Severity:S4 (Feature request)
Version:4.1.20 OS:Any
Assigned to: CPU Architecture:Any

[19 Jul 2006 2:27] Kolbe Kegel
Description:
SHOW TABLE STATUS can be blocked by a write lock held by an INSERT statement.

How to repeat:

connection 1) create table foo2 (a int, b int, unique key foo2$a (a));
connection 1) lock table foo2 read;
connection 2) insert into foo2 values (1, 2) ON DUPLICATE KEY UPDATE b = 2;
connection 3) show table status foo2;

Suggested fix:
SHOW TABLE STATUS should request a HIGH PRIORITY read lock so that nothing blocks it.
[4 Oct 2008 23:05] Konstantin Osipov
Can't repeat using the latest 6.0. Please re-verify.
[20 Mar 2009 16:20] Valeriy Kravchuk
Indeed, on 6.0.11 SHOW TABLE STATUS is not blocked. So the problem s solved, it seems.