Fix to handle LE overload status 503 appropriately

- LE HTTP response status 503 is not an error, it must be handled via sleep and retry
- s. https://community.letsencrypt.org/t/new-service-busy-responses-beginning-during-high-load/184174

fixes #4530
This commit is contained in:
Markus Hoffrogge 2023-03-02 00:02:13 +01:00
parent d4befeb536
commit 15f96b7239

View File

@ -2229,6 +2229,12 @@ _send_signed_request() {
_debug3 _body "$_body" _debug3 _body "$_body"
fi fi
if [ "$code" = '503' ]; then
_sleep_overload_retry_sec=3
_info "It seems the CA server is currently overloaded, let's wait and retry. Sleeping $_sleep_overload_retry_sec seconds."
_sleep $_sleep_overload_retry_sec
continue
fi
if _contains "$_body" "JWS has invalid anti-replay nonce" || _contains "$_body" "JWS has an invalid anti-replay nonce"; then if _contains "$_body" "JWS has invalid anti-replay nonce" || _contains "$_body" "JWS has an invalid anti-replay nonce"; then
_info "It seems the CA server is busy now, let's wait and retry. Sleeping $_sleep_retry_sec seconds." _info "It seems the CA server is busy now, let's wait and retry. Sleeping $_sleep_retry_sec seconds."
_CACHED_NONCE="" _CACHED_NONCE=""