jargon

Backend & systems·Queues, streams and delivery semantics

the worker processed the message, crashed before acknowledging it, and the queue handed the same message to somebody else.

At-least-once delivery

A guarantee that every message is delivered, possibly more than once. It is the default in nearly every broker, because acknowledging after processing is the only way to survive consumer crashes. It makes duplicate handling the consumer's problem, which is why an at-least-once consumer that is not idempotent is a bug waiting for a redeploy.

Commonly confused with