From f71fbd23c778ef184e27e7afbfc142691e0f2ce0 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Mon, 3 Mar 2025 16:47:06 +0100 Subject: [PATCH] Simplify HttpRequestException handling in retry logic. Replaced specific transient status code check for HttpRequestException with a more generalized handling approach. This ensures all HTTP exceptions are retried, improving robustness and simplifying the logic. --- src/modules/Elsa.Http/Activities/SendHttpRequestBase.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/Elsa.Http/Activities/SendHttpRequestBase.cs b/src/modules/Elsa.Http/Activities/SendHttpRequestBase.cs index f2eb9d987..fb2763484 100644 --- a/src/modules/Elsa.Http/Activities/SendHttpRequestBase.cs +++ b/src/modules/Elsa.Http/Activities/SendHttpRequestBase.cs @@ -264,7 +264,7 @@ public abstract class SendHttpRequestBase : Activity { ShouldHandle = new PredicateBuilder() .Handle() // Specific timeout exception - .Handle(ex => IsTransientStatusCode(ex.StatusCode)) // Network errors or transient HTTP codes + .Handle() // Any HTTP exception .HandleResult(response => IsTransientStatusCode(response.StatusCode)), MaxRetryAttempts = 4, UseJitter = false, // If enabled, adds a random value between -25% and +25% of the calculated Delay, except if BackoffType is Exponential, where a DecorrelatedJitterBackoffV2 formula is used for jitter calculation. That formula is based on Polly.Contrib.WaitAndRetry.