Skip to content

Conversation

@rnro
Copy link
Contributor

@rnro rnro commented May 29, 2025

Some 429: Too many requests responses have been seen when attempting to curl remote CI scripts.

This change adds --retry 3 which means that curl will retry 3 times on transient error codes, first for 1 second and then doubled each retry.

from man curl

       --retry <num>
              If a transient error is returned when curl tries to perform a transfer, it
              retries this number of times before giving up. Setting the number to 0
              makes curl do no retries (which is the default). Transient error means
              either: a timeout, an FTP 4xx response code or an HTTP 408, 429, 500, 502,
              503 or 504 response code.

              When curl is about to retry a transfer, it first waits one second and then
              for all forthcoming retries it doubles the waiting time until it reaches 10
              minutes which then remains delay between the rest of the retries. By using
              --retry-delay you disable this exponential backoff algorithm. See also
              --retry-max-time to limit the total time allowed for retries.

              curl complies with the Retry-After: response header if one was present to
              know when to issue the next retry (added in 7.66.0).

              If --retry is provided several times, the last set value is used.

Some 429: Too many requests responses have been seen when attempting to
curl remote CI scripts.

This change adds `--retry 3` which means that curl will retry 3 times on
transient error codes, first for 1 second and then doubled each retry.
@rnro rnro requested a review from a team as a code owner May 29, 2025 05:48
@shahmishal
Copy link
Member

Not sure if it will help but we can try. Normally 429 return code is for rate limit.

@ahoppen ahoppen merged commit 67428c1 into swiftlang:main Jun 2, 2025
34 of 35 checks passed
@rnro rnro deleted the retry_script_curls branch June 3, 2025 09:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants