Configurable exponential timeout
I am trying to use boto for a various set of operations for which I would like to have the same logic in terms of retry attempts. After looking through the documentations, with the exception of being able to set a maximum number of linear retries for downloading data, it does not seem that this logic is exposed at all to the user. Is your documentation out of date, or is there a reason why this is not exposed?
There are a number of places where botocore internally has retry capabilities for but you're correct that we don't expose it to end users. I'm going to go ahead and flag this as a feature request. Thanks!
This is also functionality I am currently looking for. Specifically being able to lower the retry count on failed s3 upload requests. The default of 5 retries in _retry.json takes ~9s to throw a ClientError which is a fairly long time to wait.
#1260 implemented configurable max_attempts for retries. As far as I can tell, overriding the growth_factor on the delay_config should be a very similar change.
@jantman https://github.com/boto/botocore/pull/891#issuecomment-321910539
:( ok
Any further thoughts to allowing a base_delay to be configurable, as part of the config users can make on the client, subsequently passed on through to the retry handlers, e.g. standard exponential backoff delay_amount function? I believe IAM endpoints quota replenish operates on discreet 1 second windows. Having retries within the current 1 second boundary only adds to the problem, for the iam client boto3.