Retries
If a worker crashes or is not able to report the status on time for any reason, a task will be moved to ENQUEUED
state,
removed from Inflight index, and added to the main index, so that it can be dequeued again. Counter attempts
will be incremented on the task.

If a worker reports FAILED
status… TODO
The same applies to optional retry_strategy
in Enqueue
request. This is a per-task
override of the retry_strategy
set on the queue level.
A failed task can be retried according to retry_strategy
. TODO. When all retry attempts are exhausted a task moves
to DEAD
state. Dead tasks can be persisted in Dead Letter Queue which is configured with dead_letter_queue_config
at the
queue level. Dead tasks can be inspected with GetTask
and TODO list dts RPC and retried again with RestartTasks
RPC. While reporting FAILED
status a worker can add an arbitrary string debug_info
(such as a stacktrace) which can
be helpful for an inspection later. If no Dead Letter Queue is configured all dead tasks will be immediately deleted.