From 6fced095ce4808fe115ee59a83c02fe3ae0ddc7b Mon Sep 17 00:00:00 2001 From: Sergiusz Urbaniak Date: Tue, 20 Oct 2015 15:04:36 -0700 Subject: [PATCH] scheduler: simplify if-then-else handling in doSchedule --- contrib/mesos/pkg/scheduler/plugin.go | 38 ++++++++++++++------------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/contrib/mesos/pkg/scheduler/plugin.go b/contrib/mesos/pkg/scheduler/plugin.go index 65968b35d73..0c8b7c93a91 100644 --- a/contrib/mesos/pkg/scheduler/plugin.go +++ b/contrib/mesos/pkg/scheduler/plugin.go @@ -337,29 +337,31 @@ func (k *kubeScheduler) doSchedule(task *podtask.T) (string, error) { } slaveId := details.GetSlaveId().GetValue() - if slaveHostName := k.api.slaveHostNameFor(slaveId); slaveHostName == "" { + slaveHostName := k.api.slaveHostNameFor(slaveId) + if slaveHostName == "" { // not much sense in Release()ing the offer here since its owner died offer.Release() k.api.offers().Invalidate(details.Id.GetValue()) return "", fmt.Errorf("Slave disappeared (%v) while scheduling task %v", slaveId, task.ID) - } else { - if task.Offer != nil && task.Offer != offer { - return "", fmt.Errorf("task.offer assignment must be idempotent, task %+v: offer %+v", task, offer) - } - - task.Offer = offer - if err := k.api.algorithm().Procurement()(task, details); err != nil { - offer.Release() - task.Reset() - return "", err - } - - if err := k.api.tasks().Update(task); err != nil { - offer.Release() - return "", err - } - return slaveHostName, nil } + + if task.Offer != nil && task.Offer != offer { + return "", fmt.Errorf("task.offer assignment must be idempotent, task %+v: offer %+v", task, offer) + } + + task.Offer = offer + if err := k.api.algorithm().Procurement()(task, details); err != nil { + offer.Release() + task.Reset() + return "", err + } + + if err := k.api.tasks().Update(task); err != nil { + offer.Release() + return "", err + } + + return slaveHostName, nil } type queuer struct {