diff --git a/pkg/scheduler/framework/v1alpha1/framework.go b/pkg/scheduler/framework/v1alpha1/framework.go index a4d3d787c5e..6e9fe4ad2a3 100644 --- a/pkg/scheduler/framework/v1alpha1/framework.go +++ b/pkg/scheduler/framework/v1alpha1/framework.go @@ -93,8 +93,9 @@ func NewFramework(r Registry, plugins *config.Plugins, args []config.PluginConfi // A weight of zero is not permitted, plugins can be disabled explicitly // when configured. - if pg[name].Weight != 0 { - f.pluginNameToWeightMap[name] = int(pg[name].Weight) + f.pluginNameToWeightMap[name] = int(pg[name].Weight) + if f.pluginNameToWeightMap[name] == 0 { + f.pluginNameToWeightMap[name] = 1 } } @@ -119,10 +120,10 @@ func NewFramework(r Registry, plugins *config.Plugins, args []config.PluginConfi if !ok { return nil, fmt.Errorf("plugin %v does not extend score plugin", sc.Name) } - f.scorePlugins = append(f.scorePlugins, p) - if _, exists := f.pluginNameToWeightMap[p.Name()]; !exists { - return nil, fmt.Errorf("score plugin %v is not configured with weight", sc.Name) + if f.pluginNameToWeightMap[p.Name()] == 0 { + return nil, fmt.Errorf("score plugin %v is not configured with weight", p.Name()) } + f.scorePlugins = append(f.scorePlugins, p) } else { return nil, fmt.Errorf("score plugin %v does not exist", sc.Name) } @@ -279,7 +280,7 @@ func (f *framework) RunScorePlugins(pc *PluginContext, pod *v1.Pod, nodes []*v1. workqueue.ParallelizeUntil(ctx, 16, len(nodes), func(index int) { for _, pl := range f.scorePlugins { // Score plugins' weight has been checked when they are initialized. - weight, _ := f.pluginNameToWeightMap[pl.Name()] + weight := f.pluginNameToWeightMap[pl.Name()] score, status := pl.Score(pc, pod, nodes[index].Name) if !status.IsSuccess() { errCh.SendErrorWithCancel(fmt.Errorf(status.Message()), cancel) diff --git a/test/integration/scheduler/framework_test.go b/test/integration/scheduler/framework_test.go index 1050b6b5166..910efafccb3 100644 --- a/test/integration/scheduler/framework_test.go +++ b/test/integration/scheduler/framework_test.go @@ -456,7 +456,6 @@ func TestScorePlugin(t *testing.T) { Enabled: []schedulerconfig.Plugin{ { Name: scorePluginName, - Weight: 1, }, }, },