You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 830ffa9
Browse filesBrowse the repository at this point in the historyBrowse files
Add experimental `temporalio.contrib.streams` so Activities and clients can append ordered records to a Workflow's stream in Redis, and outside readers can follow it from a cursor. The `temporalio-streams` crate runs the store and the reader rules in process, so every SDK reads the same records.
2
2
A Workflow publishes to its own stream with `stream_producer`. The Worker sends each live activation's records with `PublishWorkflowTask` before it completes the activation, so readers see them while the Workflow Task runs and nothing goes to History. If the store fails the append, the Workflow Task fails with `StreamOutputNotAppended`. A topic the store reports closed drops its records with a warning and counts `workflow_stream_output_dropped`.
3
3
A Workflow's producer attempt is `(prefix << 16) | retry`, where `prefix` is the WorkflowTaskStarted event id of the run's last completed Workflow Task and `retry` counts that task's reruns since, from 1. So a read reports `SUPERSEDED` only for a rerun of the same task. `SupersessionTracker` tells a reader which earlier records each `SUPERSEDED` withdraws.
4
-
A Local Activity publishes to its Workflow's stream with `activity_handle`, under a producer identity that survives its reruns.
4
+
A Local Activity publishes to its Workflow's stream with `stream_producer`, under a producer identity that survives its reruns. Its attempt comes from the Workflow Task facts its Workflow stamps on the call, with no server call, and a reader withdraws its records when that task never completed.
5
5
A read of a Workflow that Temporal doesn't know yet answers empty for `owner_start_grace` (60 seconds unless set), so a reader can start before its owner.
0 commit comments