hashicorp/nomad · error
failed to lookup eval: %v
Error message
failed to lookup eval: %v
What it means
Fires inside the blocking Eval.Get RPC when the state store lookup of the evaluation by ID returns an error (Raft/state store failure); it is not a not-found case — not-found yields a nil eval and an empty reply.
Source
Thrown at nomad/eval_endpoint.go:77
allowNsOp := acl.NamespaceValidator(acl.NamespaceCapabilityReadJob)
aclObj, err := e.srv.ResolveACL(args)
if err != nil {
return err
} else if !allowNsOp(aclObj, args.RequestNamespace()) {
return structs.ErrPermissionDenied
}
// Setup the blocking query
opts := blockingOptions{
queryOpts: &args.QueryOptions,
queryMeta: &reply.QueryMeta,
run: func(ws memdb.WatchSet, state *state.StateStore) error {
var related []*structs.EvaluationStub
// Look for the eval
eval, err := state.EvalByID(ws, args.EvalID)
if err != nil {
return fmt.Errorf("failed to lookup eval: %v", err)
}
if eval != nil {
// Re-check namespace in case it differs from request.
if !allowNsOp(aclObj, eval.Namespace) {
return structs.ErrPermissionDenied
}
// Lookup related evals if requested.
if args.IncludeRelated {
related, err = state.EvalsRelatedToID(ws, eval.ID)
if err != nil {
return fmt.Errorf("failed to lookup related evals: %v", err)
}
// Use a copy to avoid modifying the original eval.
eval = eval.Copy()
eval.RelatedEvals = relatedView on GitHub (pinned to 482b49bf1a)
Solutions
- Check server logs for Raft or memdb errors
- Verify cluster health and quorum
- Retry the eval read once the state store is healthy
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at nomad/eval_endpoint.go:77 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/47056fabcd388ef0.
Report an issue: GitHub.