hashicorp/nomad · error
failed to get scheduler configuration: %v
Error message
failed to get scheduler configuration: %v
What it means
SystemScheduler.setJob failed reading the global scheduler configuration via state.SchedulerConfig(). Wrapped (%v) so the state-store failure is visible when tuning the stack.
Source
Thrown at scheduler/scheduler_system.go:219
}
// Success!
return true, nil
}
// setJob updates the stack with the given job and job's node pool scheduler
// configuration.
func (s *SystemScheduler) setJob(job *structs.Job) error {
// Fetch node pool and global scheduler configuration to determine how to
// configure the scheduler.
pool, err := s.state.NodePoolByName(nil, job.NodePool)
if err != nil {
return fmt.Errorf("failed to get job node pool %q: %v", job.NodePool, err)
}
_, schedConfig, err := s.state.SchedulerConfig()
if err != nil {
return fmt.Errorf("failed to get scheduler configuration: %v", err)
}
s.stack.SetJob(job)
s.stack.SetSchedulerConfiguration(schedConfig.WithNodePool(pool))
return nil
}
// computeJobAllocs is used to reconcile differences between the job,
// existing allocations and node status to update the allocations.
func (s *SystemScheduler) computeJobAllocs() error {
// Lookup the allocations by JobID
ws := memdb.NewWatchSet()
allocs, err := s.state.AllocsByJob(ws, s.eval.Namespace, s.eval.JobID, true)
if err != nil {
return fmt.Errorf("failed to get allocs for job '%s': %v", s.eval.JobID, err)
}
// Determine the tainted nodes containing job allocsView on GitHub (pinned to 482b49bf1a)
Solutions
- Check leader health and Raft logs
- Let the evaluation retry once the state read succeeds
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at scheduler/scheduler_system.go:219 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of hashicorp/nomad@482b49bf1a (2026-09-04).
Data as JSON: /api/errors/1151af6d9b7059a7.
Report an issue: GitHub.