Added --error-retry store option to retry network errors #202
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently when downloading chunks from s3 store over unreliable network, TCP session can fall apart and server will begin to send
RST
package. And because of that commands that work with s3 store fails. That would be great to have and option to retry download in case of network error.We already have
ErrorRetry
entry inStoreOptions
, in this commit I'm adding--error-retry
cli option that overridesErrorRetry
from configs. Also I think that there is bug with retry here https://github.com/folbricht/desync/blob/master/s3.go#L97-L99:GetObject()
will return error only when object or bucket name is invalid and retry will no fix it. At the same time we ignore network errors that can raise duringioutil.ReadAll
https://github.com/folbricht/desync/blob/master/s3.go#L104 that can be fixed with retry.