Bug #2694 CHECK TABLE for Innodb table can crash server
Submitted: 9 Feb 2004 16:55 Modified: 17 Sep 2004 12:46
Reporter: Peter Zaitsev (Basic Quality Contributor) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S2 (Serious)
Version:all OS:Any (all)
Assigned to: Heikki Tuuri CPU Architecture:Any

[9 Feb 2004 16:55] Peter Zaitsev
Description:
During CHECK TABLE innodb  holds "index semaphore"  All the time. 

Innodb however monitors itself from "stalls" and asserts if some thread is waiting for semaphore more than 600 seconds. 

How to repeat:
Create large enough table for CHECK TABLE to check particular index longer than 600 sec.

Start check in one connection, and run SELECT COUNT(*) from other one.
[6 Jul 2004 22:19] Peter Zaitsev
Its time to escalate it as it is almost half a year since it is reported and it is still not fixed.
Also this bugs means any user with create table and insert privilege  can crash the server.

We also have more customers complain about it see CSC#3097
[9 Jul 2004 11:11] Marko Mäkelä
Patch committed to 4.0 tree (ChangeSet@1.1900)
[12 Jul 2004 16:00] Marko Mäkelä
Thank you for your bug report. This issue has been committed to our
source repository of that product and will be incorporated into the
next release.

If necessary, you can access the source repository and build the latest
available version, including the bugfix, yourself. More information 
about accessing the source trees is available at
    http://www.mysql.com/doc/en/Installing_source_tree.html

Additional info:

The timeout will now be incremented by 7200 seconds (2 hours) for the duration of CHECK TABLE operations.
[17 Sep 2004 12:46] Heikki Tuuri
Fixed in 4.0.21.