@@ -549,16 +549,16 @@ api_get_request(Service, Path) ->
549
549
-spec api_get_request_with_retries (string (), path (), integer (), integer ()) -> result ().
550
550
% % @doc Invoke an API call to an AWS service with retries.
551
551
% % @end
552
+ api_get_request_with_retries (_ , _ , 0 , _ ) ->
553
+ rabbit_log :warning (" Request to AWS service has failed after ~b retries." , [? MAX_RETRIES ]),
554
+ {error , " AWS service is unavailable." };
552
555
api_get_request_with_retries (Service , Path , Retries , WaitTimeBetweenRetries ) ->
553
556
ensure_credentials_valid (),
554
557
case get (Service , Path ) of
555
558
{ok , {_Headers , Payload }} -> rabbit_log :debug (" AWS request: ~s~n Response: ~p " , [Path , Payload ]),
556
559
{ok , Payload };
557
560
{error , {credentials , _ }} -> {error , credentials };
558
- {error , Message , _ } -> case Retries > 0 of
559
- true -> rabbit_log :warning (" Error occurred ~s~n Will retry AWS request, remaining retries: ~b " , [Message , Retries ]),
560
- timer :sleep (WaitTimeBetweenRetries ),
561
- api_get_request_with_retries (Service , Path , Retries - 1 , WaitTimeBetweenRetries );
562
- false -> {error , Message }
563
- end
561
+ {error , Message , _ } -> rabbit_log :warning (" Error occurred ~s~n Will retry AWS request, remaining retries: ~b " , [Message , Retries ]),
562
+ timer :sleep (WaitTimeBetweenRetries ),
563
+ api_get_request_with_retries (Service , Path , Retries - 1 , WaitTimeBetweenRetries )
564
564
end .
0 commit comments