forked from TrueCloudLab/restic
33 lines
1.5 KiB
Text
33 lines
1.5 KiB
Text
Change: Redesign backend error handling to improve reliability
|
|
|
|
Restic now downloads pack files in large chunks instead of using a streaming
|
|
download. This prevents failures due to interrupted streams. The `restore`
|
|
command now also retries downloading individual blobs that could not be
|
|
retrieved.
|
|
|
|
HTTP requests that are stuck for more than two minutes while uploading or
|
|
downloading are now forcibly interrupted. This ensures that stuck requests are
|
|
retried after a short timeout.
|
|
|
|
Attempts to access a missing or truncated file will no longer be retried. This
|
|
avoids unnecessary retries in those cases. All other backend requests are
|
|
retried for up to 15 minutes. This ensures that temporarily interrupted network
|
|
connections can be tolerated.
|
|
|
|
If a download yields a corrupt file or blob, then the download will be retried
|
|
once.
|
|
|
|
Most parts of the new backend error handling can temporarily be disabled by
|
|
setting the environment variable `RESTIC_FEATURES=backend-error-redesign=false`.
|
|
Note that this feature flag will be removed in the next minor restic version.
|
|
|
|
https://github.com/restic/restic/issues/4627
|
|
https://github.com/restic/restic/issues/4193
|
|
https://github.com/restic/restic/pull/4605
|
|
https://github.com/restic/restic/pull/4792
|
|
https://github.com/restic/restic/issues/4515
|
|
https://github.com/restic/restic/issues/1523
|
|
https://github.com/restic/restic/pull/4520
|
|
https://github.com/restic/restic/pull/4800
|
|
https://github.com/restic/restic/pull/4784
|
|
https://github.com/restic/restic/pull/4844
|