Closed tanveergill closed 8 months ago
The system's scheduling logic has been updated to introduce a new fairness mechanism that differentiates requests based on a fairness_label_key
. This ensures a more equitable distribution of resources among requests within the same priority. Metrics related to the previous Weighted Fair Queuing Scheduler have been removed in favor of new ones that track this fairness. Additionally, the scheduler code now includes methods for identifying request workload and flow, and the configuration files have been adjusted to reflect these changes.
File Path | Change Summary |
---|---|
api/aperture/policy/language/v1/flowcontrol.proto , docs/content/reference/configuration/spec.md |
Added fairness_label_key to enforce fairness in request scheduling. |
docs/content/reference/observability/prometheus-metrics/agent.md |
Removed WFQScheduler metrics; added workload fairness metrics. |
pkg/scheduler/scheduler.go , pkg/scheduler/wfq.go , pkg/scheduler/.../scheduler.go |
Updated Scheduler interface and WFQScheduler with new methods and fields for fairness; metrics adjusted accordingly. |
pkg/scheduler/wfq_test.go , pkg/metrics/schema.go |
Updated tests and metrics schema to align with scheduling fairness changes. |
pkg/policies/flowcontrol/actuators/workload-scheduler/scheduler.go |
Modified Factory struct, SchedulerMetrics, and Decide method to accommodate fairness metrics. |
.pre-commit-config.yaml |
Updated codespell configuration. |
"In the burrow of the code, a change was sown,
🐇 A fairness key in the scheduler's home.
No more FIFO, just fair play,
For every request that hops its way."
Description of change
Checklist
Summary by CodeRabbit
New Features
fairness_label_key
for enforcing fairness in workload scheduling.Documentation
fairness_label_key
details.Refactor
Chores
Bug Fixes