hashicorp / hashicorp/go-retryablehttp
A way to skip retrying non-idempotent requests
- Dominant language
- Go
- Stars
- 2.3k
- Forks
- 298
- PR merge metrics
- No merged PRs in 30d
Description
When non-idempotent requests, e.g. POST, are retried, it can easily lead to data corruption and duplication.
One natural way to skip retrying those is with `CheckRetry` function. But in that function, one only has the response, and not the request, to make the decision based on. Since the response in `nil` when there are connection errors, one cannot check `response.Request.Method` in that case.
It would be pretty awesome to have request passed to `CheckRetry` alongside the response, but any other solution that would allow to skip retrying based on method would be great too.
Right now I'm having to use two separate http clients, one with retries and one without, depending on the method.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.