Skip to content

Commit

Permalink
perf: check validity before constructing a new set of requirements (k…
Browse files Browse the repository at this point in the history
  • Loading branch information
tzneal authored Feb 19, 2025
1 parent 3745282 commit 22eb374
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions pkg/controllers/provisioning/scheduling/existingnode.go
Original file line number Diff line number Diff line change
Expand Up @@ -92,11 +92,13 @@ func (n *ExistingNode) Add(ctx context.Context, kubeClient client.Client, pod *v
return fmt.Errorf("exceeds node resources")
}

nodeRequirements := scheduling.NewRequirements(n.requirements.Values()...)
// Check NodeClaim Affinity Requirements
if err = nodeRequirements.Compatible(podData.Requirements); err != nil {
if err = n.requirements.Compatible(podData.Requirements); err != nil {
return err
}
// avoid creating our temp set of requirements until after we've ensured that at least
// the pod is compatible
nodeRequirements := scheduling.NewRequirements(n.requirements.Values()...)
nodeRequirements.Add(podData.Requirements.Values()...)

// Check Topology Requirements
Expand Down

0 comments on commit 22eb374

Please sign in to comment.