Skip to content

Resilliency: automatic retries

Sercan Guler [MSFT] edited this page Apr 2, 2019 · 1 revision

To provide resiliency to network level issues, as well as Storage service throttling errors (HTTP status code 503s), AzCopy retries a failed request (e.g. uploading of a single chunk of 8MB) up to 20 times with exponential backoff and a maximum wait time of 1 minute between each retry. AzCopy stops retrying and times out the overall operation after 15 minutes to eliminate overly long duration of retries.

Here is an example request failure:

  • Imagine the first HTTP PUT request takes 10 seconds
  • 1st retry would happen in 0 seconds, and may take 1 second (may take up 15 mins)
  • 2nd retry: 1 seconds + 1 second
  • 3rd retry: 2 seconds + 1 second
  • 4th retry: 4 seconds + 1 second
  • 5th retry: 8 seconds + 1 second
  • 6th retry: 16 seconds + 1 second
  • 7th retry: 32 seconds + 1 second
  • 8th retry: 1 minute + 1 seconds
  • 9th retry: 1 minute + 1 seconds
  • 10th retry: 1 minute + 1 seconds
  • 11th retry: 1 minute + 1 seconds
  • ....