Bug #67807 | InnoDB table corrupted after import using ALTER TABLE ... IMPORT TABLESPACE | ||
---|---|---|---|
Submitted: | 4 Dec 2012 23:40 | Modified: | 7 Jan 2013 23:18 |
Reporter: | Dirk LANGE | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
Version: | 5.6.8-rc | OS: | Solaris |
Assigned to: | CPU Architecture: | Any |
[4 Dec 2012 23:40]
Dirk LANGE
[5 Dec 2012 19:08]
Sveta Smirnova
Thank you for the report. Verified as described.
[12 Dec 2012 8:19]
Erlend Dahl
We now have a fix for this that will probably make the 5.6.10 release.
[7 Jan 2013 23:18]
John Russell
Added to changelog for 5.6.10: Under certain circumstances, an InnoDB table was reported as corrupted after import using ALTER TABLE ... IMPORT TABLESPACE. The problem was accompanied by one of these messages: Warning : InnoDB: The B-tree of index "PRIMARY" is corrupted. error : Corrupt or: Warning : InnoDB: The B-tree of index "GEN_CLUST_INDEX" is corrupted. error : Corrupt This issue occurred intermittently, and primarily affected large tables. The REPAIR TABLE statement would fix the problem reported by the error message.
[6 Oct 2015 21:26]
Nishesh Gupta
I am using the following version - mysql> show variables like '%version%' -> ; +-------------------------+--------------------------------------------------------------+ | Variable_name | Value | +-------------------------+--------------------------------------------------------------+ | innodb_version | 5.6.15-rel63.0 | | protocol_version | 10 | | slave_type_conversions | | | version | 5.6.15-63.0 | | version_comment | Percona XtraDB Cluster (GPL), Release 25.5, wsrep_25.5.r4061 | | version_compile_machine | x86_64 | | version_compile_os | Linux | +-------------------------+--------------------------------------------------------------+ 7 rows in set (0.00 sec) After I import table space I get the error - mysql> check table chunk_map; +-----------------------------------------------+-------+----------+-----------------------------------------------------+ | Table | Op | Msg_type | Msg_text | +-----------------------------------------------+-------+----------+-----------------------------------------------------+ | dbsnap_Tue_Oct__6_13_58_45_PDT_2015.chunk_map | check | Warning | InnoDB: The B-tree of index "PRIMARY" is corrupted. | | dbsnap_Tue_Oct__6_13_58_45_PDT_2015.chunk_map | check | error | Corrupt | +-----------------------------------------------+-------+----------+-----------------------------------------------------+ 2 rows in set (0.00 sec) If I run repair table - mysql> repair table chunk_map; +-----------------------------------------------+--------+----------+---------------------------------------------------------+ | Table | Op | Msg_type | Msg_text | +-----------------------------------------------+--------+----------+---------------------------------------------------------+ | dbsnap_Tue_Oct__6_13_58_45_PDT_2015.chunk_map | repair | note | The storage engine for the table doesn't support repair | +-----------------------------------------------+--------+----------+---------------------------------------------------------+ 1 row in set (0.00 sec) If I run alter table and then check table - mysql> alter table chunk_map engine=innodb; Query OK, 13 rows affected (0.02 sec) Records: 13 Duplicates: 0 Warnings: 0 mysql> check table chunk_map; +-----------------------------------------------+-------+----------+----------+ | Table | Op | Msg_type | Msg_text | +-----------------------------------------------+-------+----------+----------+ | dbsnap_Tue_Oct__6_13_58_45_PDT_2015.chunk_map | check | status | OK | +-----------------------------------------------+-------+----------+----------+ 1 row in set (0.00 sec) I understand that this was fixed in 5.6.10. But I still see it in 5.6.15 . What is the solution to this defect ? What should I do so that I do not get this corruption error ? After import if I get corruption should I run 'repair table' or 'alter table' like I have ? Repair table is not working for me as mentioned above.
[6 Oct 2015 22:02]
Sunny Bains
Since you are not using Oracle/InnoDB, it is difficult for us to make any comment. The corruption could be due to downstream changes and incompatibilities.