[MDEV-27424] mariabackup ignores physically corrupt first pages Created: 2022-01-05 Updated: 2022-03-15 Resolved: 2022-03-05 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | mariabackup |
| Affects Version/s: | None |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Critical |
| Reporter: | Anders Karlsson | Assignee: | Anders Karlsson |
| Resolution: | Incomplete | Votes: | 1 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||
| Description |
|
When a tables has a corrupt first page, a backup on said table is largely ignored. The table in question is not backup up at all, there are no errors logged and mariabackup exists without any errors. Using said incremental backup to recover will end up with said table missing. This might be caused by a disk error or something. Innochecksum will detect the issue but not mariabackup. To reproduce:
Now run mariabackup. In the target directory there is no .ibd file for the table t1 in the "test" database. The exit status from mariabackup is 0 and there are no errors in the log. One can see that the table t1 is not copied though, beyond the .frm file. At first I noticed this only for incremental backups, but the situation is the same for full backups. |
| Comments |
| Comment by Marko Mäkelä [ 2022-01-11 ] | |||||||||||||||||||||||||||||||
|
Here is a start of an mtr test case.
karlsson, which version are you using? In 10.5, this fails just fine:
For 10.6 or later, rr record can be added after exec to get an rr replay trace to find out why the file is not being copied. The corrupted first page is being read and found to be invalid in the following call trace:
The following code in Datafile::validate_first_page() might not be entirely appropriate:
|