call mtr.add_suppression("InnoDB: Table \"test\".\"t1\" is corrupted. Please drop the table and recreate."); call mtr.add_suppression("InnoDB: Cannot open table test/t1 from the internal data dictionary of InnoDB though the .frm file for the table exists. See http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html for how you can resolve the problem."); call mtr.add_suppression("InnoDB: Database page corruption on disk or a failed file read of tablespace test/t1 page \[page id: space=[0-9]+, page number=[0-9]+\]. You may have to recover from a backup."); # Create and populate the table to be corrupted set global innodb_file_per_table=ON; CREATE TABLE t1 (a INT AUTO_INCREMENT PRIMARY KEY, b TEXT) ENGINE=InnoDB; INSERT INTO t1 (b) VALUES ('corrupt me'); INSERT INTO t1 (b) VALUES ('corrupt me'); # Corrupt the table Munged a string. Munged a string. # Now t1 is corrupted but we should not crash SELECT * FROM t1; Got one of the listed errors INSERT INTO t1(b) VALUES('abcdef'); Got one of the listed errors UPDATE t1 set b = 'deadbeef' where a = 1; Got one of the listed errors # Cleanup, this must be possible DROP TABLE t1;