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
compute: publish maintained indexes into the sharing registry
Both export paths now publish their `oks`/`errs` arrangements into the per-process
registry when the runtime's role publishes. A re-export arm has no streams of its
own, so it re-imports the shared traces under its own id and publishes those. That
import gives the re-export's dataflow operators, and `mz_compute_error_counts`
forwards a dependency's counts only to a re-export whose dataflow has none, so
the arm also logs the re-export's error counts from the imported errors. Logging
indexes publish the same way, gated strictly on `Maintenance`: an interactive
runtime reads maintenance's slot, and its own copy would clobber it, while `Solo`
has no registry peer at all.
`ComputeRuntimeRole::Interactive` stops being test-only. Nothing constructs it
yet, but `publishes()` has to name it, and `pub mod server` keeps the variant
reachable so dead-code analysis is satisfied without an attribute. The stale
`owns_process_globals` note claiming every constructible role owns the globals
goes with it.
Carrying the role and the registry to the render path is what the rest of this
change is: `Config` and `Worker` gain both, `ComputeState` stores them and
exposes `role()`, and clusterd builds one registry per process. Per process, not
per runtime, because a reader on one runtime looks up the slot a publisher on
another filled.
No behavior change. `Solo` is the only role anything constructs and it does not
publish, so every added block is skipped and no dataflow gains an operator.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VDm7opomJLxbNUEP3r9BLk
0 commit comments