Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.1(EOL)
-
None
-
winx64-debug
Description
http://buildbot.askmonty.org/buildbot/builders/winx64-debug/builds/3657/steps/test/logs/stdio
innodb.innodb-alter-debug 'innodb_plugin' w2 [ pass ] 965
|
innodb.log_data_file_size 'xtradb' w1 [ fail ] Found warnings/errors in server log file!
|
Test ended at 2017-05-05 18:40:03
|
line
|
2017-05-05 18:40:00 5016 [Warning] InnoDB: A copy of page 4:4 in the doublewrite buffer slot 17 is not within space bounds
|
|
2017-05-05 18:40:00 5016 [Warning] InnoDB: A copy of page 5:4 in the doublewrite buffer slot 23 is not within space bounds
|
|
2017-05-05 18:40:00 5016 [Warning] InnoDB: A copy of page 6:5 in the doublewrite buffer slot 30 is not within space bounds
|
|
2017-05-05 18:40:02 4704 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace test/ibd4f page [page id: space=5, page number=4]. You may have to recover from a backup.
|
|
2017-05-05 18:40:02 4704 [ERROR] InnoDB: Read operation failed for tablespace ./test/ibd4f.ibd offset 4 with error Page read from tablespace is corrupted.
|
|
2017-05-05 18:40:02 5016 [ERROR] Plugin 'InnoDB' init function returned error.
|
|
2017-05-05 18:40:02 5016 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
|
Attachments
Issue Links
- is duplicated by
-
MDEV-13823 innodb.log_data_file_size fails on buildbot with warnings intermittently
-
- Closed
-
- relates to
-
MDEV-11556 InnoDB redo log apply fails to adjust data file sizes
-
- Closed
-
The test is at fault.
The main purpose of the test is to ensure that data files are extended to the desired size when applying redo log.
The test correctly ensures that no redo log checkpoint occurred after the CREATE TABLE statements. But it does not ensure that nothing was written to the doublewrite buffer for the pages that the test is truncating on purpose.
Apparently, sometimes some of the pages that the test is truncating would already have been written to the doublewrite buffer, causing failure.
Under normal operation, nothing should be written to the doublewrite buffer before the data file has been extended to the appropriate size. Therefore, we should not touch the doublewrite recovery code, but instead make the test more robust, either by zeroing out the offending pages from the doublewrite buffer or by skipping the test if doublewrite buffer entries exist for the files that the test is about to truncate.