jargon

Comparison

Poison messagevsPoison record

Poison message

one malformed payload keeps crashing the consumer, gets redelivered, crashes it again, and the whole queue stops moving.

A message that reliably fails processing and, under at-least-once redelivery, blocks or consumes the consumer indefinitely. It is the specific failure a dead letter queue and a redelivery count exist to contain. It is also why a consumer should distinguish retryable failures from permanent ones rather than retrying everything.

Full entry →

Poison record

one malformed row fails the batch, the batch retries, and the same row fails it again every five minutes for two days.

A single input that cannot be processed and blocks everything behind it because the failure is retried indefinitely. Retry logic that cannot distinguish a transient failure from a permanent one turns a single bad record into a stopped pipeline. The standard treatment is a bounded retry count followed by diverting the record somewhere it can be inspected, so progress resumes and nothing is lost.

Full entry →

Related comparisons