Fix the client sometimes would not retry #109
Merged
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.
Resolves #108
After upgrading
2.9.0
, sometimes the retry would not works as expected.The temporary solution is downgrading to
2.8.3
.Root cause
This issue is inducted by the mechanism of checking whether skip the retry:
aiohttp_retry/aiohttp_retry/client.py
Lines 92 to 93 in 5ea8c8e
Sometimes,
response.method
is the string in lowercase (such asget
) whileself._retry_options.methods
is a set of uppercase strings (such as{'GET', 'POST'}
), the retry will be skipped, which does not match the expectation.Solution
Ensure the method string is comparing in the same case.