mirror of
https://github.com/MariaDB/server.git
synced 2025-08-05 13:16:09 +03:00
MDEV-12628: innodb.innodb_bug14147491 sporadically fails in buildbot due to wrong error number
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.
This commit is contained in:
@@ -6,17 +6,12 @@ INSERT INTO t1 (b) VALUES ('corrupt me');
|
|||||||
# Corrupt the table
|
# Corrupt the table
|
||||||
Munged a string.
|
Munged a string.
|
||||||
Munged a string.
|
Munged a string.
|
||||||
# The below SELECT query will return that table is not
|
# Now t1 is corrupted but we should not crash
|
||||||
# in engine because table is corrupted
|
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1;
|
||||||
ERROR 42S02: Table 'test.t1' doesn't exist in engine
|
Got one of the listed errors
|
||||||
INSERT INTO t1(b) VALUES('abcdef');
|
INSERT INTO t1(b) VALUES('abcdef');
|
||||||
ERROR 42S02: Table 'test.t1' doesn't exist in engine
|
Got one of the listed errors
|
||||||
UPDATE t1 set b = 'deadbeef' where a = 1;
|
UPDATE t1 set b = 'deadbeef' where a = 1;
|
||||||
ERROR 42S02: Table 'test.t1' doesn't exist in engine
|
Got one of the listed errors
|
||||||
CHECK TABLE t1;
|
# Cleanup, this must be possible
|
||||||
Table Op Msg_type Msg_text
|
|
||||||
test.t1 check Error Table 'test.t1' doesn't exist in engine
|
|
||||||
test.t1 check status Operation failed
|
|
||||||
# Cleanup
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
@@ -11,6 +11,8 @@
|
|||||||
call mtr.add_suppression("InnoDB: Table `test`.`t1` is corrupted. Please drop the table and recreate.");
|
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. Please refer to http://dev.mysql.com/doc/refman/5.7/en/innodb-troubleshooting.html for how to resolve the issue.");
|
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. Please refer to http://dev.mysql.com/doc/refman/5.7/en/innodb-troubleshooting.html for how to resolve the issue.");
|
||||||
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.");
|
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.");
|
||||||
|
call mtr.add_suppression("InnoDB: We detected index corruption in an InnoDB type table.*");
|
||||||
|
call mtr.add_suppression("mysqld: Index for table 't1' is corrupt; try to repair it");
|
||||||
--enable_query_log
|
--enable_query_log
|
||||||
|
|
||||||
--echo # Create and populate the table to be corrupted
|
--echo # Create and populate the table to be corrupted
|
||||||
@@ -63,18 +65,16 @@ EOF
|
|||||||
|
|
||||||
--source include/start_mysqld.inc
|
--source include/start_mysqld.inc
|
||||||
|
|
||||||
--echo # The below SELECT query will return that table is not
|
--echo # Now t1 is corrupted but we should not crash
|
||||||
--echo # in engine because table is corrupted
|
|
||||||
--error ER_NO_SUCH_TABLE_IN_ENGINE
|
--error 1030,1712,1932
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1;
|
||||||
|
|
||||||
--error ER_NO_SUCH_TABLE_IN_ENGINE
|
--error 126,1030,1034,1712,1932
|
||||||
INSERT INTO t1(b) VALUES('abcdef');
|
INSERT INTO t1(b) VALUES('abcdef');
|
||||||
|
|
||||||
--error ER_NO_SUCH_TABLE_IN_ENGINE
|
--error 1030,1712,1932
|
||||||
UPDATE t1 set b = 'deadbeef' where a = 1;
|
UPDATE t1 set b = 'deadbeef' where a = 1;
|
||||||
|
|
||||||
CHECK TABLE t1;
|
--echo # Cleanup, this must be possible
|
||||||
|
|
||||||
--echo # Cleanup
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
Reference in New Issue
Block a user