From 7526c91ccd93556cf0af86d541950eb391b11269 Mon Sep 17 00:00:00 2001 From: Daniel Bennett Date: Thu, 3 Oct 2024 10:29:36 -0500 Subject: [PATCH] scheduler: non-nil err when no devices match (#24118) --- scheduler/rank.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scheduler/rank.go b/scheduler/rank.go index fcc157edf..8e3f80b78 100644 --- a/scheduler/rank.go +++ b/scheduler/rank.go @@ -506,7 +506,9 @@ NEXTNODE: devices: set.From(task.Resources.NUMA.GetDevices()), } - offer, sumAffinities, err := devAllocator.createOffer(memory, device) + var offer *structs.AllocatedDeviceResource + var sumAffinities float64 + offer, sumAffinities, err = devAllocator.createOffer(memory, device) if offer == nil || err != nil { devAllocator = devAllocatorSnapshot taskResources.Devices = taskResourcesSnapshot @@ -554,6 +556,7 @@ NEXTNODE: // If preemption is not enabled, then this node is exhausted. if !iter.evict { + // surface err from createOffer() iter.ctx.Metrics().ExhaustedNode(option.Node, fmt.Sprintf("devices: %s", err)) continue NEXTNODE }