Skip to content

Commit bbe8d7c

Browse files
fix(distributed): check warm-path cleanup errors
The router moved legacy cleanup calls onto newly linted lines. Report cleanup failures while preserving the fallback to a cold load. Assisted-by: Codex:gpt-5 [golangci-lint]
1 parent 9b4ac35 commit bbe8d7c

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

core/services/nodes/router.go

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -642,16 +642,25 @@ func (r *SmartRouter) tryWarmPath(ctx context.Context, att *routeAttempt) *Route
642642
// Verify the backend process is still alive via gRPC health check
643643
if !r.probeHealth(ctx, node, modelAddr) {
644644
// Stale — roll back the increment, remove the specific replica row, fall through
645-
r.registry.DecrementInFlight(ctx, node.ID, att.trackingKey, replicaIdx)
646-
r.registry.RemoveNodeModel(ctx, node.ID, att.trackingKey, replicaIdx)
645+
if err := r.registry.DecrementInFlight(ctx, node.ID, att.trackingKey, replicaIdx); err != nil {
646+
xlog.Warn("Failed to release stale routing reservation",
647+
"node", node.ID, "model", att.trackingKey, "replica", replicaIdx, "error", err)
648+
}
649+
if err := r.registry.RemoveNodeModel(ctx, node.ID, att.trackingKey, replicaIdx); err != nil {
650+
xlog.Warn("Failed to remove stale model from registry",
651+
"node", node.ID, "model", att.trackingKey, "replica", replicaIdx, "error", err)
652+
}
647653
xlog.Warn("Backend not reachable for cached model, falling through to reload",
648654
"node", node.Name, "model", att.modelName, "replica", replicaIdx)
649655
return nil
650656
}
651657

652658
// Verify node still matches scheduling constraints
653659
if !r.nodeMatchesScheduling(ctx, node, att.sched) {
654-
r.registry.DecrementInFlight(ctx, node.ID, att.trackingKey, replicaIdx)
660+
if err := r.registry.DecrementInFlight(ctx, node.ID, att.trackingKey, replicaIdx); err != nil {
661+
xlog.Warn("Failed to release unmatched routing reservation",
662+
"node", node.ID, "model", att.trackingKey, "replica", replicaIdx, "error", err)
663+
}
655664
xlog.Info("Cached model on node that no longer matches selector, falling through",
656665
"node", node.Name, "model", att.trackingKey, "replica", replicaIdx)
657666
return nil

0 commit comments

Comments
 (0)