forked from TrueCloudLab/restic
db2398f35b
Apparently, 2 minutes are too short in some cases and can result in canceled List requests.
32 lines
1.5 KiB
Text
32 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 cannot 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 file or a 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 a 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
|