hashicorp/nomad · error

wait min %s is greater than max %s

Error message

wait min %s is greater than max %s

What it means

WaitConfig.Validate: the min wait exceeds the max wait in a template's wait stanza. Consul Template uses min/max to batch template renders, and min > max makes the interval unusable.

Source

Thrown at nomad/structs/structs.go:9152

	case !pointer.Eq(wc.Max, o.Max):
		return false
	}
	return true
}

// Validate that the min is not greater than the max
func (wc *WaitConfig) Validate() error {
	if wc == nil {
		return nil
	}

	// If either one is nil, they aren't comparable, so they can't be invalid.
	if wc.Min == nil || wc.Max == nil {
		return nil
	}

	if *wc.Min > *wc.Max {
		return fmt.Errorf("wait min %s is greater than max %s", wc.Min, wc.Max)
	}

	return nil
}

// Set of possible states for a task.
const (
	TaskStatePending = "pending" // The task is waiting to be run.
	TaskStateRunning = "running" // The task is currently running.
	TaskStateDead    = "dead"    // Terminal state of task.
)

// TaskState tracks the current state of a task and events that caused state
// transitions.
type TaskState struct {
	// The current state of the task.
	State string

View on GitHub (pinned to 482b49bf1a)

Solutions

  1. Set wait min less than or equal to wait max, e.g. min = "5s", max = "10s"
  2. Omit min or max so only one bound applies (they are not comparable when one is nil)
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at nomad/structs/structs.go:9152 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/62669bd628c0fb9c. Report an issue: GitHub.