Bug #8067 table courription with delay-key-write turned ON and REPAIR or OPTIMIZE
Submitted: 21 Jan 2005 11:17 Modified: 28 Feb 2005 15:00
Reporter: Corin Langosch Email Updates:
Status: No Feedback Impact on me:
None 
Category:MySQL Server: MyISAM storage engine Severity:S2 (Serious)
Version:4.1.9, official 686 binary OS:Linux (debian amd64 pure64)
Assigned to: Assigned Account CPU Architecture:Any

[21 Jan 2005 11:17] Corin Langosch
Description:
we only run ONE mysql server. however using OPTIMIZE oder REAPAIR with delay-key-write turned ON causes table corruption. 

accourding to the DOC it's not allowed to start another programm (as another mysql server) on the same database or use myisamcheck

quote
--
Don't flush key buffers between writes for any MyISAM table. Note: If you do this, you should not use MyISAM tables from another program (such as from another MySQL server or with myisamchk) when the table is in use. Doing so will lead to index corruption. Using --external-locking will not help for tables that use --delay--key-write. 
--

if mysql automatically starts another mysql server or myisam check if a query like "REPAIR TABLE xyz" is executed, i think this should clearly be mentioned in the doc. otherwise there seems to be a bug in mysql.

How to repeat:
set delay-key-write=ON 

create simple table and generate traffic.

run "REPAIR" or "OPTIMIZE" on that table.

table corruption should occur.

Suggested fix:
update doc to clearly state that also no "REPAIR" or "OPTIMIZE" is allowed an that tables. otherwise please fix the bug :)
[30 Jan 2005 15:00] Dean Ellis
I cannot repeat against 4.1.10 using my own particular table definitions and types of queries, so please send us a repeatable test case with the SQL to create, populate and corrupt the table, demonstrating this behavior.
[1 Mar 2005 0:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".