Workflow task heartbeat failed

We have a Workflow that consists of multiple Local Activities. We need to ensure that these activities run on the same machine. We temporarily adopted the use of Local Activities for some reasons.

However, during actual execution, we encountered failures when triggering ForceWorkflowTaskCompleted. The following error messages were occasionally encountered:

WARN  Failed to process workflow task. <...> Error error sending workflow task heartbeat Workflow task not found.
WARN  Failed to process workflow task. <...> Error error sending workflow task heartbeat context deadline exceeded
WARN  Failed to process workflow task. <...> Error error sending workflow task heartbeat timeout

The Web UI will have a WorkflowTaskTimeout event.

As a result, the affected Local Activity is retried even though it is still running correctly, leading to conflicts between the two instances of the same Activity running simultaneously.

  • Does renewing WorkflowTask only get called once?
  • What should we do to solve this problem? Should we use the normal Activities with session?"

Use normal Activities with a session. Local activities were never intended to be used for running some logic on the same machine.