Current Behavior
backoff_options.retry_after is misleading. It seems to be an absolute number of seconds. However, it's a multiplicative factor.
See backoff_factor=self.backoff_options.retry_after, in PlatformClient
And relevant implementation from urllib3:
https://github.com/urllib3/urllib3/blob/b34619f94ece0c40e691a5aaf1304953d88089de/src/urllib3/util/retry.py#L143
:param float backoff_factor:
A backoff factor to apply between attempts after the second try
(most errors are resolved immediately by a second try without a
delay). urllib3 will sleep for::
{backoff factor} * (2 ** ({number of previous retries}))
seconds.
The readme is wrong as well:
The exponential backoff parameters are as follows:
retry_after - The amount of time, in seconds, to wait between throttled request attempts.
Optional, will default to 5.
Expected Behavior
Change the variable name to match what it does.
Steps To Reproduce
No response
Environment
Python Version
OS Version
...
Debug logs
No response
Anything else?
No response
Current Behavior
backoff_options.retry_afteris misleading. It seems to be an absolute number of seconds. However, it's a multiplicative factor.See
backoff_factor=self.backoff_options.retry_after,inPlatformClientAnd relevant implementation from urllib3:
https://github.com/urllib3/urllib3/blob/b34619f94ece0c40e691a5aaf1304953d88089de/src/urllib3/util/retry.py#L143
The readme is wrong as well:
Expected Behavior
Change the variable name to match what it does.
Steps To Reproduce
No response
Environment
Debug logs
No response
Anything else?
No response