Skip to content

Commit

Permalink
Release v7.0.0 Commit 3c89937 Doc Commit #27affce
Browse files Browse the repository at this point in the history
  • Loading branch information
buildmachine-sou-jenkins2 committed Nov 23, 2023
1 parent ca813e1 commit 645528a
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions pages/en-us/Error-Handling.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ We start though by describing the expected flow when messages are handled by Wor
Some messages however cannot be handled by the Worker and these are described next.

## Poisoned Messages
A poisoned message is a message that a worker is unable to handle. The message is deemed poisonous during processing when repeated catastrophic failure of the worker occurs. Regardless of how many times the message is retried, the worker will not be able to handle the message in a graceful manor. The flow of a poisoned message is described in Figure 2 below:
A poisoned message is a message that a worker is unable to handle. The message is deemed poisonous during processing when repeated catastrophic failure of the worker occurs. Regardless of how many times the message is retried, the worker will not be able to handle the message in a graceful manner. The flow of a poisoned message is described in Figure 2 below:

![Poisoned Messages](images/PoisonedMessage.png)
*Figure 2 - Poisoned message flow*
Expand All @@ -38,7 +38,7 @@ A poisoned message is a message that a worker is unable to handle. The message i
2. The processing of the message causes the worker to die unexpectedly.
3. The Autoscaler service scales the worker back up again to facilitate a retry.
4. The original message is re-delivered for retry where the `x-caf-worker-retry` message header is stamped on the message and incremented. Messages which cause a worker to crash are retried up to 10 times by default before the worker gives up trying to process them and marks them as poisoned. Note that the number of permitted retries is configurable via the environment variable `CAF_WORKER_RETRY_LIMIT`.
5. When the permitted number of retries is exceeded, a `RESULT_EXCEPTION` response including the poisoned message details is published on the messaging output queue `worker-output-queue` by the worker framework.
5. When the permitted number of retries is exceeded, a `RESULT_EXCEPTION` response including the poisoned message details is published on the messaging output queue `worker-output-queue` by the worker framework. The poison message details will contain the worker friendly name defined using environment variable `CAF_WORKER_FRIENDLY_NAME`. Setting `CAF_WORKER_FRIENDLY_NAME` for the worker is preferable. If not set, the worker friendly name will default to the worker class name.
6. When the response has been published, the original message is then acknowledged.

## OutOfMemory / StackOverflow Errors
Expand Down

0 comments on commit 645528a

Please sign in to comment.