Top-level engine supervisor. Started by the host (Oban-style) as
{GenDurable, opts} in their own supervision tree.
Options
:repo— the host'sEcto.Repo(required).:fsms— FSM modules to register explicitly (default[]). Only needed for a custom:nameor to keep an old:versionrunning; otherwise a machine is resolved from thefsmcolumn (its module name). SeeGenDurable.Registry.:queues— keyword list ofqueue_name => concurrency(default[default: 10]).:lease_ttl,:heartbeat_interval,:poll_interval,:reap_interval— timings in ms (Balanced defaults: 60_000 / 20_000 / 1_000 / 30_000).:prefetch— extra rows each queue claims and buffers beyond its running slots (default0⇒ no over-fetch). SeeGenDurable.Scheduler.:min_demand— batch gate for the picker (default1).:max_poll_interval— idle-backoff ceiling in ms (default5_000).:drain_timeout— on shutdown, how long (ms) each queue waits for its in-flight steps to finish before giving up to the reaper (default5_000). Buffered (un-started) rows are released immediately regardless.
:prefetch, :min_demand, and :max_poll_interval are the feeder
aggressiveness knobs and apply to every queue; see GenDurable.Scheduler for
the trade-offs (DB chatter vs. latency vs. cross-node fairness).
Summary
Functions
Returns a specification to start this module under a supervisor.
Functions
Returns a specification to start this module under a supervisor.
See Supervisor.