Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.4(EOL), 10.5, 10.6, 10.7(EOL), 10.8(EOL), 10.9(EOL)
-
None
Description
In non-debug builds, the test innodb.corrupted_during_recovery often causes InnoDB to output a page dump. This will upset the test driver (as noted in MDEV-25909):
10.6 d4a89b92629328f7e18b7e0595f88f24 |
innodb.corrupted_during_recovery 'innodb' w1 [ fail ] Found warnings/errors in server log file!
|
Test ended at 2021-10-27 10:14:27
|
Warnings:
|
Warning 1406 Data too long for column 'line' at row 8
|
line
|
len 16384; hex 0000000000000003ffffffffffffffff…2021-10-27
|
^ Found warnings in /dev/shm/var/1/log/mysqld.1.err
|
ok
|
The following patch allows the problem to be reproduced in a more controlled fashion:
diff --git a/storage/innobase/srv/srv0start.cc b/storage/innobase/srv/srv0start.cc
|
index 3aa1aecb54f..31b50a65967 100644
|
--- a/storage/innobase/srv/srv0start.cc
|
+++ b/storage/innobase/srv/srv0start.cc
|
@@ -1838,6 +1838,11 @@ dberr_t srv_start(bool create_new_db)
|
}
|
|
srv_is_being_started = false;
|
+ fputs("[Warning] ", stderr);
|
+ char buf[65537];
|
+ memset(buf, '0', (sizeof buf)-1);
|
+ buf[(sizeof buf)-1]='\n';
|
+ fwrite(buf, sizeof buf, 1, stderr);
|
|
if (srv_print_verbose_log) {
|
ib::info() << INNODB_VERSION_STR |
10.7 9e314fcf6e666ce6fdbdd8ca1ae23d6c4b389b21 |
innodb.innodb 'innodb' [ fail ]
|
Test ended at 2022-04-22 09:35:24
|
|
CURRENT_TEST: innodb.innodb
|
|
|
Could not execute 'check-warnings' for testcase 'innodb.innodb' (res: 1) server: 'mysqld.1:
|
mysqltest: At line 44: query 'load data infile '$log_warning' into table error_log
|
fields terminated by 'xykls37' escaped by ''
|
ignore 1 lines
|
(line)
|
set file_name='$log_error'' failed with wrong errno ER_DATA_TOO_LONG (1406): 'Data too long for column 'line' at row 1', instead of (0)...
|
not ok
|
mysqltest failed but provided no output
|
The result from queries just before the failure was:
|
< snip >
|
The InnoDB page dumps output can be about 3×innodb_page_size characters, plus a couple dozen characters of prefix.
Attachments
Issue Links
- relates to
-
MDEV-19766 innodb.leaf_page_corrupted_during_recovery failed in buildbot with Warning Data too long for column
- Closed
-
MDEV-25909 Unnecessary calls to fil_ibd_load() slow down recovery
- Open