External Events section doesn't mention RaiseEvent fails when no worker is connected

Open Beginner friendly
#5,305 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
1-3 hours
Newbie friendliness
88/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Active
Domain
documentation

Research direction

Start with the External Events section in Workflow Features and Concepts, then read pkg/runtime/wfengine/wfengine.go at OnGetWorkItemsConnectionCallback and OnGetWorkItemsDisconnectCallback. Add the operational note and recommended retry guidance, with a related suspension/resumption cross-reference if useful; done means the behavior is clearly documented without implying workflow-state loss.

Written by the indexing model from the issue text.

Description

content/missing-information

What content needs to be created or modified?

Document an operational constraint for workflow external events: RaiseEvent / raise-event fails when no app worker is connected.
Workflow actor types register with placement only while at least one app worker is connected through GetWorkItems. When an app is down, such as during a restart, raising an event can fail with actor type ... not registered even if workflow instance state is durably persisted and resumes once a worker reconnects.

Describe the solution you'd like

Add a note explaining this expected behavior and recommended caller handling:

  • Worker registration reflects which host currently serves a workflow actor type.
  • A RaiseEvent call while no worker is connected may return a not-registered error.
  • Callers building restart or recovery automation should retry the request until a worker reconnects.
    This prevents failure being mistaken for workflow-state loss rather than a temporary timing race.

Where should the new material be placed?

Workflow Features and Concepts: External Events (https://docs.dapr.io/developing-applications/building-blocks/workflow/workflow-features-concepts/#external-events)
A cross-reference or related note in Workflow Suspension/Resumption could also be useful.

The associated pull request from dapr/dapr, dapr/components-contrib, or other Dapr code repos

NA

Additional context

Relevant runtime behavior is implemented in pkg/runtime/wfengine/wfengine.go, specifically OnGetWorkItemsConnectionCallback and OnGetWorkItemsDisconnectCallback.
These callbacks register workflow actor types while workers are connected and remove registration after workers disconnect. Durable workflow state remains intact; workflows resume correctly after worker reconnection.

Dominant language
SCSS
Stars
1k
Forks
796
Avg merge
3d 12h
Merged PRs (30d)
16

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from dapr/docs

All issues in dapr/docs

Similar issues

More Documentation issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.