Skip to main content

Module scheduler

Module scheduler 

Source
Expand description

Resource-aware indexing scheduler (RFC-036).

Public surface:

Scheduler        — dispatch engine
SchedulerConfig  — limits + queue capacities
SchedulerLimits  — per-queue worker counts
QueueCapacity    — per-queue depth caps
WorkPriority     — job priority levels
JobKind          — job type labels
JobState         — in-memory job state
IndexJob         — a single scheduler job
ResourceMode     — Normal / UserActive / LowImpact / Paused
SchedulerEvent   — UI event channel
QueueKind        — which queue for backpressure events

Re-exports§

pub use dispatch::Scheduler;
pub use job::IndexJob;
pub use job::JobKind;
pub use job::JobState;
pub use job::QueueKind;
pub use job::ResourceMode;
pub use job::SchedulerEvent;
pub use job::WorkPriority;
pub use limits::MAX_JOB_ATTEMPTS;
pub use limits::QueueCapacity;
pub use limits::SchedulerConfig;
pub use limits::SchedulerLimits;
pub use queue::BoundedQueue;
pub use queue::QueueSet;

Modules§

dispatch
Resource-aware indexing scheduler (RFC-036 §5–§16).
job
Job model for the resource-aware scheduler (RFC-036 §11, §15).
limits
Scheduler resource limits and configuration (RFC-036 §9, §10.3).
queue
Bounded work queues with backpressure (RFC-036 §7, §10).