Merge pull request #124714 from sanposhiho/prealloc

scheduler: preallocation for NodeToStatusMap
This commit is contained in:
Kubernetes Prow Robot 2024-05-07 07:07:58 -07:00 committed by GitHub
commit e798b9c269
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -441,13 +441,16 @@ func (sched *Scheduler) schedulePod(ctx context.Context, fwk framework.Framework
// filter plugins and filter extenders. // filter plugins and filter extenders.
func (sched *Scheduler) findNodesThatFitPod(ctx context.Context, fwk framework.Framework, state *framework.CycleState, pod *v1.Pod) ([]*framework.NodeInfo, framework.Diagnosis, error) { func (sched *Scheduler) findNodesThatFitPod(ctx context.Context, fwk framework.Framework, state *framework.CycleState, pod *v1.Pod) ([]*framework.NodeInfo, framework.Diagnosis, error) {
logger := klog.FromContext(ctx) logger := klog.FromContext(ctx)
diagnosis := framework.Diagnosis{
NodeToStatusMap: make(framework.NodeToStatusMap),
}
allNodes, err := sched.nodeInfoSnapshot.NodeInfos().List() allNodes, err := sched.nodeInfoSnapshot.NodeInfos().List()
if err != nil { if err != nil {
return nil, diagnosis, err return nil, framework.Diagnosis{
NodeToStatusMap: make(framework.NodeToStatusMap),
}, err
}
diagnosis := framework.Diagnosis{
NodeToStatusMap: make(framework.NodeToStatusMap, len(allNodes)),
} }
// Run "prefilter" plugins. // Run "prefilter" plugins.
preRes, s := fwk.RunPreFilterPlugins(ctx, state, pod) preRes, s := fwk.RunPreFilterPlugins(ctx, state, pod)