Skip to main content

Interface: ExecutionStrategyOptions

Defined in: src/resilience/ExecutionStrategy.ts:5

Properties​

maxRetryCount?​

optional maxRetryCount?: number

Defined in: src/resilience/ExecutionStrategy.ts:9

Maximum number of retry attempts. Default is 3.


initialDelayMs?​

optional initialDelayMs?: number

Defined in: src/resilience/ExecutionStrategy.ts:14

Initial delay before first retry in milliseconds. Default is 100ms.


maxDelayMs?​

optional maxDelayMs?: number

Defined in: src/resilience/ExecutionStrategy.ts:19

Maximum delay between retries in milliseconds. Default is 2000ms.


backoffMultiplier?​

optional backoffMultiplier?: number

Defined in: src/resilience/ExecutionStrategy.ts:24

Multiplier for exponential backoff. Default is 2.


jitter?​

optional jitter?: boolean

Defined in: src/resilience/ExecutionStrategy.ts:29

Whether to add random jitter (0% - 25%) to prevent thundering herd. Default is true.


retryOnDeadlocks?​

optional retryOnDeadlocks?: boolean

Defined in: src/resilience/ExecutionStrategy.ts:34

Whether to retry on database deadlocks. Default is true.


retryOnTransientErrors?​

optional retryOnTransientErrors?: boolean

Defined in: src/resilience/ExecutionStrategy.ts:39

Whether to retry on transient connection/timeout errors. Default is true.


isTransient?​

optional isTransient?: (error) => boolean

Defined in: src/resilience/ExecutionStrategy.ts:44

Optional custom predicate to determine if an error should be retried.

Parameters​

ParameterType
errorunknown

Returns​

boolean


onRetry?​

optional onRetry?: (error, attempt, delayMs) => void

Defined in: src/resilience/ExecutionStrategy.ts:49

Callback invoked before each retry attempt.

Parameters​

ParameterType
errorunknown
attemptnumber
delayMsnumber

Returns​

void