[MDEV-13823] innodb.log_data_file_size fails on buildbot with warnings intermittently Created: 2017-09-16  Updated: 2017-09-18  Resolved: 2017-09-18

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - XtraDB
Affects Version/s: 10.1
Fix Version/s: 10.1.27

Type: Bug Priority: Major
Reporter: Vladislav Vaintroub Assignee: Marko Mäkelä
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Duplicate
duplicates MDEV-12893 innodb.log_data_file_size failed in b... Closed
Relates
relates to MDEV-12699 Improve crash recovery of corrupted d... Closed

 Description   

From
http://buildbot.askmonty.org/buildbot/builders/win32-debug/builds/5412/steps/test/logs/stdio

innodb.log_data_file_size '16k,xtradb' w1 [ fail ] Found warnings/errors in server log file!
Test ended at 2017-09-16 00:13:01
line
2017-09-16 0:12:59 4080 [Warning] InnoDB: A copy of page 4:4 in the doublewrite buffer slot 13 is not within space bounds

2017-09-16 0:12:59 4080 [Warning] InnoDB: A copy of page 5:4 in the doublewrite buffer slot 19 is not within space bounds

2017-09-16 0:13:00 2392 [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-09-16 0:13:00 2392 [ERROR] InnoDB: Read operation failed for tablespace ./test/ibd4f.ibd offset 4 with error Page read from tablespace is corrupted.

2017-09-16 0:13:01 4080 [ERROR] Plugin 'InnoDB' init function returned error.

2017-09-16 0:13:01 4080 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

^ Found warnings in D:/win32-debug/build/mysql-test/var/1/log/mysqld.1.err
ok



 Comments   
Comment by Elena Stepanova [ 2017-09-16 ]

Duplicate of MDEV-12893

Comment by Marko Mäkelä [ 2017-09-18 ]

My fix introduced another intermittent test failure (actually, exposing MDEV-12699).

2017-09-18 10:43:11 0 [Note] InnoDB: Recovered page [page id: space=0, page number=322] from the doublewrite buffer.
2017-09-18 10:43:16 0 [Note] InnoDB: Starting final batch to recover 25 pages from redo log.
2017-09-18 10:43:16 0 [Note] InnoDB: Log sequence number at the start 3129101 and the end 0 do not match
2017-09-18 10:43:16 0 [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.

The test is truncating this page to 1234 bytes. Apparently what happens is that the file will be zero-padded to the correct length, and subsequently we will read a corrupted page (the first 1234 bytes are correct; the remaining bytes are 0).

To work around MDEV-12699, the test must set those 1234 bytes to zeroes, so that the subsequent startup will see a valid-looking all-zero page after extending the file.

Generated at Thu Feb 08 08:08:39 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.