Files
restic/changelog/0.18.1_2025-09-21/issue-5467

28 lines
1.3 KiB
Plaintext
Raw Permalink Normal View History

Bugfix: Improve handling of download retries in `check` command
2025-09-15 19:52:24 +02:00
In very rare cases, the `check` command could unnecessarily report repository
damage if the backend returned incomplete, corrupted data on the first download
try which is afterwards resolved by a download retry.
2025-09-08 11:54:29 +02:00
This could result in an error output like the following:
2025-09-17 18:26:21 +02:00
2025-09-08 11:54:29 +02:00
```
Load(<data/34567890ab>, 33918928, 0) returned error, retrying after 871.35598ms: readFull: unexpected EOF
Load(<data/34567890ab>, 33918928, 0) operation successful after 1 retries
check successful on second attempt, original error pack 34567890ab[...] contains 6 errors: [blob 12345678[...]: decrypting blob <data/12345678> from 34567890 failed: ciphertext verification failed ...]
[...]
Fatal: repository contains errors
```
2025-09-15 19:52:24 +02:00
This fix only applies to a very specific case where the log shows
`operation successful after 1 retries` followed by a
`check successful on second attempt, original error` that only reports
2025-09-08 11:54:29 +02:00
`ciphertext verification failed` errors in the pack file. If any other errors
are reported in the pack file, then the repository still has to be considered
as damaged.
2025-09-15 19:52:24 +02:00
Now, only the check result of the last download retry is reported as intended.
https://github.com/restic/restic/issues/5467
https://github.com/restic/restic/pull/5495