Tandem

Problem types

409

Message is not in a discardable state

https://tandem.codingful.com/problems/message-not-discardable

What it means

Discard was requested for a message that is not FAILED.

Discard exists for one situation: a message that has exhausted its retries and is now blocking every later event of its aggregate. A message that has not failed is not blocking anything, so there is nothing to abandon.

What to do

Check the message's status first. If it is PENDING or IN_FLIGHT, let the relay finish; if it is DONE, it was already delivered; if it is DISCARDED, someone got there first — the audit log records who and why.

Example

{
  "type": "https://tandem.codingful.com/problems/message-not-discardable",
  "title": "Message is not in a discardable state",
  "status": 409,
  "detail": "Message 4711 is PENDING; only FAILED can be discarded"
}