| Bug #771 | myisamchk crash on crashed MYISAM compressed tables | ||
|---|---|---|---|
| Submitted: | 1 Jul 2003 4:12 | Modified: | 4 Jul 2003 3:14 |
| Reporter: | Martin Mokrejs | Email Updates: | |
| Status: | Can't repeat | Impact on me: | |
| Category: | MySQL Server: MyISAM storage engine | Severity: | S2 (Serious) |
| Version: | 4.0.13 | OS: | Linux (linux 2.4.19) |
| Assigned to: | CPU Architecture: | Any | |
[1 Jul 2003 4:12]
Martin Mokrejs
[2 Jul 2003 5:43]
Martin Mokrejs
It demonstrates one more bug:
mysql> repair table contig_data;
[I pressed after a while ctrl+c, as the .TMD file has zero size all the time. I guess because of the crash demonstratable easily by myisamchk -r reportted here originally)]
Aborted
bioadmin@bontebok$ mysqladmin -hjerboas processlist
+----+--------+----------------------+-------------------------+---------+------+-------------------+---------------
-----------+
| Id | User | Host | db | Command | Time | State | Info
|
+----+--------+----------------------+-------------------------+---------+------+-------------------+---------------
-----------+
| 45 | pedant | bontebok.gsf.de:3833 | Drosophila_melanogaster | Query | 73 | Repair by sorting | repair table c
ontig_data |
| 50 | pedant | bontebok.gsf.de:3844 | | Query | 0 | | show processli
st |
+----+--------+----------------------+-------------------------+---------+------+-------------------+---------------
-----------+
bioadmin@bontebok$ mysql -hjerboas Drosophila_melanogaster
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
kill 45;
bioadmin@bontebok$ mysql -hjerboas
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 52 to server version: 4.0.13-standard-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> show processlist;
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
| 45 | pedant | bontebok.gsf.de:3833 | Drosophila_melanogaster | Query | 110 | Repair by sorting | repair table contig_data |
| 51 | pedant | bontebok.gsf.de:3849 | Drosophila_melanogaster | Field List | 32 | Waiting for table | |
| 52 | pedant | bontebok.gsf.de:3850 | NULL | Query | 0 | NULL | show processlist |
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
3 rows in set (0.00 sec)
mysql> kill 45;
Query OK, 0 rows affected (0.00 sec)
mysql> show processlist;
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
| 45 | pedant | bontebok.gsf.de:3833 | Drosophila_melanogaster | Killed | 119 | Repair by sorting | repair table contig_data |
| 51 | pedant | bontebok.gsf.de:3849 | Drosophila_melanogaster | Field List | 41 | Waiting for table | |
| 52 | pedant | bontebok.gsf.de:3850 | NULL | Query | 0 | NULL | show processlist |
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
3 rows in set (0.00 sec)
mysql> show processlist;
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
| 45 | pedant | bontebok.gsf.de:3833 | Drosophila_melanogaster | Killed | 122 | Repair by sorting | repair table contig_data |
| 51 | pedant | bontebok.gsf.de:3849 | Drosophila_melanogaster | Field List | 44 | Waiting for table | |
| 52 | pedant | bontebok.gsf.de:3850 | NULL | Query | 0 | NULL | show processlist |
+----+--------+----------------------+-------------------------+------------+------+-------------------+--------------------------+
3 rows in set (0.00 sec)
So the killed process doesn't go away!
[3 Jul 2003 17:15]
Michael Widenius
To be able to repeat the problem we would need a copy of the packed table (and if possible a copy of the not packed data). You can upload any testcase to ftp://support.mysql.com/pub/mysql/secret
[4 Jul 2003 3:14]
Sergei Golubchik
I wasn't able to repeat it. myisamchk produces tons of messages like Found link that points at -8769496673510283653 (outside data file) at 1259552 Found link that points at 2865652877524523398 (outside data file) at 1260016 Found block with too small length at 1260840; Skipped Found link that points at -7233973963831846416 (outside data file) at 1260896 Found link that points at 323910004596437184 (outside data file) at 1260916 Found link that points at -2580456083037413577 (outside data file) at 1261388 Found block with too small length at 1261604; Skipped Found block with too small length at 1263060; Skipped Found block with too small length at 1263448; Skipped Found link that points at -1091879638804344063 (outside data file) at 1263596 but does not crash
[15 Jul 2003 5:56]
Martin Mokrejs
Hmm, I can't repeat the crash even myself now, strange. mysql version is definitely same. :(
