Skip to content

Commit a66c818

Browse files
committed
use priorityclass lister
Signed-off-by: lowang_bh <lhui_wang@163.com>
1 parent a754b6f commit a66c818

File tree

1 file changed

+7
-10
lines changed

1 file changed

+7
-10
lines changed

pkg/controller/podgroup.go

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import (
2121
"github.com/google/go-cmp/cmp"
2222
common "github.com/kubeflow/common/pkg/apis/common/v1"
2323
corev1 "k8s.io/api/core/v1"
24-
schedulingv1 "k8s.io/api/scheduling/v1"
2524
"k8s.io/apimachinery/pkg/api/equality"
2625
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2726
schedulinglisters "k8s.io/client-go/listers/scheduling/v1"
@@ -183,7 +182,7 @@ func (v *VolcanoCtrl) calculatePGMinResources(minMember *int32, mpiJob *kubeflow
183182
}
184183

185184
// sort task by priorityClasses
186-
return calPgMinResource(minMember, mpiJob, v.PriorityClassLister.Get)
185+
return calPgMinResource(minMember, mpiJob, v.PriorityClassLister)
187186
}
188187

189188
func (v *VolcanoCtrl) pgSpecsAreEqual(a, b metav1.Object) bool {
@@ -323,7 +322,7 @@ func (s *SchedulerPluginsCtrl) calculatePGMinResources(minMember *int32, mpiJob
323322
return nil
324323
}
325324

326-
return calPgMinResource(minMember, mpiJob, s.PriorityClassLister.Get)
325+
return calPgMinResource(minMember, mpiJob, s.PriorityClassLister)
327326
}
328327

329328
func (s *SchedulerPluginsCtrl) pgSpecsAreEqual(a, b metav1.Object) bool {
@@ -334,10 +333,8 @@ func (s *SchedulerPluginsCtrl) pgSpecsAreEqual(a, b metav1.Object) bool {
334333

335334
var _ PodGroupControl = &SchedulerPluginsCtrl{}
336335

337-
type PriorityClassGetFunc func(string) (*schedulingv1.PriorityClass, error)
338-
339336
// calPgMinResource returns the minimum resource for mpiJob with minMembers
340-
func calPgMinResource(minMember *int32, mpiJob *kubeflow.MPIJob, pFunc PriorityClassGetFunc) *corev1.ResourceList {
337+
func calPgMinResource(minMember *int32, mpiJob *kubeflow.MPIJob, pcLister schedulinglisters.PriorityClassLister) *corev1.ResourceList {
341338
var order replicasOrder
342339
for rt, replica := range mpiJob.Spec.MPIReplicaSpecs {
343340
rp := replicaPriority{
@@ -346,7 +343,7 @@ func calPgMinResource(minMember *int32, mpiJob *kubeflow.MPIJob, pFunc PriorityC
346343
ReplicaSpec: *replica,
347344
}
348345

349-
rp.priority = calculatePriority(&replica.Template.Spec, pFunc)
346+
rp.priority = calculatePriority(&replica.Template.Spec, pcLister)
350347
order = append(order, rp)
351348
}
352349

@@ -411,14 +408,14 @@ func calculatePriorityClassName(
411408
// calculatePriority get priority
412409
// 1. get priority with priorityClass's value
413410
// 2. get priority with priority
414-
func calculatePriority(podSpec *corev1.PodSpec, pFunc PriorityClassGetFunc) int32 {
411+
func calculatePriority(podSpec *corev1.PodSpec, pcLister schedulinglisters.PriorityClassLister) int32 {
415412
if podSpec == nil {
416413
return 0
417414
}
418415
var priority int32
419416
pcName := podSpec.PriorityClassName
420-
if len(pcName) != 0 && pFunc != nil {
421-
if priorityClass, err := pFunc(pcName); err != nil {
417+
if len(pcName) != 0 && pcLister != nil {
418+
if priorityClass, err := pcLister.Get(pcName); err != nil {
422419
klog.Warningf("Ignore priority class %q: %v", pcName, err)
423420
if podSpec.Priority != nil {
424421
priority = *podSpec.Priority

0 commit comments

Comments
 (0)