Clarification on Azure Storage Retry Policy


  • Hi Guys,

    Could you help to clarify a doubt regarding Retry Policy configuration in Azure Storage. I had given the exponential retry policy as

    RetryPolicy = new ExponentialRetry(TimeSpan.FromSeconds(10), 5),
    MaximumExecutionTime = TimeSpan.FromSeconds(10)

    I am not sure or clear what this MaximumExecutionTime means. Is it the total time  for all retries or individual retries. For eg. From the above example I had given a ExponentialRetry of TimeSpan.FromSeconds(10). So it means it will retry after 10 seconds. But if I give the maximum execution time as also 10 seconds. it means it will retry only once and not further. And I had to increase the timeout to 100secnods for 10retries. Am I right. Could anyone help to clarify what it means exactly


    Vishnu VG

    Vishnu VG

    Sunday, April 2, 2017 5:45 AM


  • Note: For most of the Azure built-in retry mechanisms, there is currently no way apply a different retry policy for different types of error or exception beyond the functionality include in the retry policy. Therefore, the best guidance available at the time of writing is to configure a policy that provides the optimum average performance and availability. One way to fine-tune the policy is to analyze log files to determine the type of transient faults that are occurring. For example, if the majority of errors are related to network connectivity issues, you might attempt an immediate retry rather than wait a long time for the first retry.

    Maximum Execution Time:

    Maximum execution time for the request, including all potential retry attempts. Server timeout interval for the request (value is rounded to seconds). If not specified, it will use the default value for all requests to the server. Usually, the best option is to omit this setting so that the server default is used.

    Exponential Policy:

    Number of retry attempts. Back-off interval between retries. Multiples of this timespan, including a random element, will be used for subsequent retry attempts. Added to all retry intervals computed from deltaBackoff. This value cannot be changed. MaxBackoff is used if the computed retry interval is greater than MaxBackoff. This value cannot be changed.

    Linear Policy:

    Number of retry attempts. Back-off interval between retries.

    For more information, see “Azure Storage retry guidelines”.

    Sunday, April 2, 2017 6:27 PM