Bug #24401 MySQL server crashes if you try to retrieve data from corrupted table
| Submitted: | 17 Nov 2006 16:53 | Modified: | 7 Feb 2007 19:05 |
|---|---|---|---|
| Reporter: | Victoria Reznichenko | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server | Severity: | S2 (Serious) |
| Version: | 5.0.30 | OS: | Any (any) |
| Assigned to: | Sergey Vojtovich | CPU Architecture: | Any |
[17 Nov 2006 16:56]
MySQL Verification Team
corrupted table
Attachment: t1.zip (application/zip, text), 696 bytes.
[19 Jan 2007 11:12]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/18429 ChangeSet@1.2594, 2007-01-19 15:14:00+04:00, svoj@mysql.com +1 -0 BUG#24401 - MySQL server crashes if you try to retrieve data from corrupted table Accessing a table with corrupted column definition results in server crash. This is fixed by refusing to open such tables. Affects MyISAM only. No test case, since it requires crashed table.
[22 Jan 2007 12:33]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/18536 ChangeSet@1.2594, 2007-01-22 16:34:58+04:00, svoj@mysql.com +1 -0 BUG#24401 - MySQL server crashes if you try to retrieve data from corrupted table Accessing a table with corrupted column definition results in server crash. This is fixed by refusing to open such tables. Affects MyISAM only. No test case, since it requires crashed table.
[25 Jan 2007 9:29]
Sergey Vojtovich
Pushed to trees currently marked as 5.0.36 and 5.1.15.
[5 Feb 2007 11:42]
Sergey Vojtovich
Pushed to tree currently marked as 4.1.23.
[7 Feb 2007 19:05]
Paul DuBois
Noted in 4.1.23, 5.0.36, 5.1.15 changelogs.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.043 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
Description: I have small corrupted MyISAM table t1 (I made it corrupted for testing). If I do simple SELECT like: select * from t1 order by id; MySQL server crashes. Backtrace: (gdb) bt #0 0x085bb25c in _mi_rec_unpack (info=0x8dee1d0, to=0x8deea38 '╔' <repeats 200 times>..., from=0x8def7a1 '╔' <repeats 200 times>..., found_length=10) at mi_dynrec.c:1062 #1 0x085bc89a in _mi_read_rnd_dynamic_record (info=0x8dee1d0, buf=0x8dedf38 "Ч\001", filepos=18446744073709551615, skip_deleted_blocks=0 '\0') at mi_dynrec.c:1599 #2 0x085b2bb2 in mi_scan (info=0x8dee1d0, buf=0x8dedf38 "Ч\001") at mi_scan.c:45 #3 0x0830e756 in ha_myisam::rnd_next (this=0x8dede48, buf=0x8dedf38 "Ч\001") at ha_myisam.cc:1277 #4 0x08303918 in find_all_keys (param=0xb4fe10d4, select=0x8de3640, sort_keys=0x8dddf38, buffpek_pointers=0xb4fe0f4c, tempfile=0xb4fe1010, indexfile=0x0) at filesort.cc:464 #5 0x08304493 in filesort (thd=0xb51260e0, table=0x8ded5f8, sortorder=0x8de3748, s_length=1, select=0x8de3640, max_rows=18446744073709551615, examined_rows=0xb4fe1208) at filesort.cc:225 #6 0x08287aad in create_sort_index (thd=0xb51260e0, join=0x8de21e0, order=0x8de2148, filesort_limit=18446744073709551615, select_limit=18446744073709551615) at sql_select.cc:12212 #7 0x08299856 in JOIN::exec (this=0x8de21e0) at sql_select.cc:1804 #8 0x08295caf in mysql_select (thd=0xb51260e0, rref_pointer_array=0xb51264dc, tables=0x8de1ed0, wild_num=1, fields=@0xb5126440, conds=0x0, og_num=1, order=0x8de2148, group=0x0, having=0x0, proc_param=0x0, select_options=2156153344, result=0x8de21d0, unit=0xb5126184, select_lex=0xb51263b4) at sql_select.cc:2017 #9 0x08299d74 in handle_select (thd=0xb51260e0, lex=0xb5126120, result=0x8de21d0, setup_tables_done_option=0) at sql_select.cc:257 #10 0x08233ca8 in mysql_execute_command (thd=0xb51260e0) at sql_parse.cc:2596 #11 0x0823c130 in mysql_parse (thd=0xb51260e0, inBuf=0x8de1db0 "select \n* from t1 order by id", length=29) at sql_parse.cc:5809 #12 0x0823eae0 in dispatch_command (command=COM_QUERY, thd=0xb51260e0, packet=0xb5157091 "select \n* from t1 order by id", packet_length=30) at sql_parse.cc:1773 #13 0x0824008f in do_command (thd=0xb51260e0) at sql_parse.cc:1557 #14 0x0824125d in handle_one_connection (arg=0xb51260e0) at sql_parse.cc:1188 #15 0xb7f4d34b in start_thread () from /lib/libpthread.so.0 #16 0xb7e7765e in clone () from /lib/libc.so.6 How to repeat: I'll upload table files (.frm, .MYI, .MYD) to this issue. Just run: select * from t1 order by id