[MDEV-26326] MDEV-24626 (remove synchronous page0 write) seems to cause mariabackup to skip valid ibd file. Created: 2021-08-09 Updated: 2022-07-25 Resolved: 2022-02-01 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Backup, Storage Engine - InnoDB |
| Affects Version/s: | 10.6, 10.7, 10.8 |
| Fix Version/s: | 10.6.6, 10.7.2, 10.8.1 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Vladislav Vaintroub | Assignee: | Thirunarayanan Balathandayuthapani |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | regression-10.6 | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||
| Description |
|
http://buildbot.askmonty.org/buildbot/builders/winx64-packages/builds/26370/steps/test/logs/stdio , shows that the file t.ibd is not copied by copy-back, thus it is not in the backup. A theory : |
| Comments |
| Comment by Marko Mäkelä [ 2021-09-14 ] | ||||||||||||||
|
If an empty .ibd file is not being copied into a backup, then the backup will have to be adjusted somehow. Maybe during mariabackup --prepare, we should actually create data files in recv_sys_t::recover_deferred() if that is not already the case. Somewhat related to this, MDEV-25909 has been filed for avoiding unnecessary repeated reads of the first page of a data file. That could affect mariabackup --prepare as well. | ||||||||||||||
| Comment by Marko Mäkelä [ 2021-11-11 ] | ||||||||||||||
|
I just analyzed an rr replay trace of a failed mariabackup --prepare . An assertion would fail in my development branch due to buf_flush_discard_page() being invoked while deferred_spaces still has not been converted to tablespaces. I was unable to reproduce the race when restoring the same backup very many times. I think that a simple fix is as follows (possibly to be revised in
A cleaner fix could be to retain an additional X-latch on the page, instead of only retaining a buffer-fix. Then, no change to the page cleaner should be needed. But, this requires the page latch to always exist also for ROW_FORMAT=COMPRESSED blocks. (That is possible in my development branch.) | ||||||||||||||
| Comment by Marko Mäkelä [ 2022-01-12 ] | ||||||||||||||
|
The link in the description is stale, and no summary of the failure is available. On a quick search of the cross-reference, I found some failures of the test mariabackup.xb_compressed_encrypted that fail like this:
In fact, mariabackup.xb_compressed_encrypted is the only mariabackup.* test that has with Tablespace is missing for table in the "Failure Output" section. There were a couple more tests failing for bb-10.6- In | ||||||||||||||
| Comment by Thirunarayanan Balathandayuthapani [ 2022-01-18 ] | ||||||||||||||
|
This issue should be fixed by patch for | ||||||||||||||
| Comment by Marko Mäkelä [ 2022-02-01 ] | ||||||||||||||
|
The fix looks OK to push. I would suggest to refer to this bug in the commit and let the later report |