From c9fda7aac057a4a87efd5091b053821acfc72c86 Mon Sep 17 00:00:00 2001 From: Alex Wang Date: Wed, 6 Nov 2019 16:59:57 +0800 Subject: [PATCH] move bindVolumes behind RunPermitPlugins --- pkg/scheduler/scheduler.go | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/pkg/scheduler/scheduler.go b/pkg/scheduler/scheduler.go index 6fe15338bc0..bd22179159f 100644 --- a/pkg/scheduler/scheduler.go +++ b/pkg/scheduler/scheduler.go @@ -695,18 +695,6 @@ func (sched *Scheduler) scheduleOne(ctx context.Context) { metrics.SchedulerGoroutines.WithLabelValues("binding").Inc() defer metrics.SchedulerGoroutines.WithLabelValues("binding").Dec() - // Bind volumes first before Pod - if !allBound { - err := sched.bindVolumes(assumedPod) - if err != nil { - sched.recordSchedulingFailure(assumedPodInfo, err, "VolumeBindingFailed", err.Error()) - metrics.PodScheduleErrors.Inc() - // trigger un-reserve plugins to clean up state associated with the reserved Pod - fwk.RunUnreservePlugins(bindingCycleCtx, state, assumedPod, scheduleResult.SuggestedHost) - return - } - } - // Run "permit" plugins. permitStatus := fwk.RunPermitPlugins(bindingCycleCtx, state, assumedPod, scheduleResult.SuggestedHost) if !permitStatus.IsSuccess() { @@ -727,6 +715,18 @@ func (sched *Scheduler) scheduleOne(ctx context.Context) { return } + // Bind volumes first before Pod + if !allBound { + err := sched.bindVolumes(assumedPod) + if err != nil { + sched.recordSchedulingFailure(assumedPodInfo, err, "VolumeBindingFailed", err.Error()) + metrics.PodScheduleErrors.Inc() + // trigger un-reserve plugins to clean up state associated with the reserved Pod + fwk.RunUnreservePlugins(bindingCycleCtx, state, assumedPod, scheduleResult.SuggestedHost) + return + } + } + // Run "prebind" plugins. preBindStatus := fwk.RunPreBindPlugins(bindingCycleCtx, state, assumedPod, scheduleResult.SuggestedHost) if !preBindStatus.IsSuccess() {