Connectum API Reference / @connectum/events-amqp / types / AmqpPublishRetryOptions
Interface: AmqpPublishRetryOptions
Defined in: packages/events-amqp/src/types.ts:461
Tuning for the opt-in bounded publish retry (AmqpAdapterOptions.publishRetry). Backoff knobs mirror AmqpRecoveryOptions (same names, same cap-before-jitter semantics) — but maxRetries defaults to a BOUNDED 5 here, not Infinity.
Properties
factor?
readonlyoptionalfactor?:number
Defined in: packages/events-amqp/src/types.ts:469
Exponential backoff factor.
Default
2initialDelay?
readonlyoptionalinitialDelay?:number
Defined in: packages/events-amqp/src/types.ts:465
First retry delay in ms.
Default
100jitter?
readonlyoptionaljitter?:number
Defined in: packages/events-amqp/src/types.ts:471
Symmetric jitter factor (0..1).
Default
0.2maxDelay?
readonlyoptionalmaxDelay?:number
Defined in: packages/events-amqp/src/types.ts:467
Base delay cap in ms; jitter applies on top of the capped base.
Default
30000maxRetries?
readonlyoptionalmaxRetries?:number
Defined in: packages/events-amqp/src/types.ts:463
Retries after the first attempt (N retries = N+1 attempts). A negative value clamps to 0 (single attempt); Infinity is honored — retry until disconnect() aborts.
Default
5onRetry?
readonlyoptionalonRetry?: (info) =>void
Defined in: packages/events-amqp/src/types.ts:485
Observability hook, invoked once per scheduled retry. MUST NOT throw (exceptions are isolated). Scoped here deliberately — publish retries are per-operation events, not connection lifecycle, so they do not join AmqpLifecycleEvent.
Parameters
info
attempt
number
delay
number
error
Error
routingKey
string
Returns
void
retryOnTimeout?
readonlyoptionalretryOnTimeout?:boolean
Defined in: packages/events-amqp/src/types.ts:478
Also retry AmqpPublishTimeoutError (no broker outcome within publishTimeoutMs). The message state at a timeout is UNKNOWN, so this raises the duplicate likelihood — enable only with consumer-side dedup.
Default
false