mirror of
https://github.com/MariaDB/server.git
synced 2025-09-06 19:08:06 +03:00
Actual error number returned from the query depends what point corrupted page is accessed, is it accessed when we read one of the pages for result set or is it accessed during background page read.
21 lines
1.1 KiB
Plaintext
21 lines
1.1 KiB
Plaintext
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;
|