Skip to main content

Module engine

Module engine 

Source
Expand description

The execution engine: owns persistence, in-memory projections of active executions, the worker registry and task dispatch.

Every state change goes through Engine::commit, which assigns sequence numbers, persists the events transactionally and only then updates memory.

Structs§

ContractAnnouncement
Engine
EngineConfig
EngineError
HeartbeatAck
Limits
Server-wide resource limits.
RegisterWorker
Registration
ResultAck
StartResult
TaskAssignment
A task handed to a worker (RFC-0001 §8.3 ExecuteTaskRequest).
WorkerInfo

Functions§

child_execution_id
Deterministic id of the child execution started by unit of parent, so that starting it again after a crash is a no-op.
child_execution_id_in_run
child_execution_id for a unit of run run of the parent: runs after the first add .run<N>, so a later run’s child is a new execution.
effective_limits
The stricter of the server’s limits and the workflow’s limits { ... }.
system_clock

Type Aliases§

Clock
Result