From 5b80f25c95194f18e05610ed4140952a21d7b039 Mon Sep 17 00:00:00 2001 From: Weizhen Wang Date: Mon, 6 Feb 2023 17:07:31 +0800 Subject: [PATCH 1/2] resourcemanager: avoid to schedule when no task is in the pool Signed-off-by: Weizhen Wang --- resourcemanager/schedule.go | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/resourcemanager/schedule.go b/resourcemanager/schedule.go index 50a5f54697800..ea6aa2a0cb92a 100644 --- a/resourcemanager/schedule.go +++ b/resourcemanager/schedule.go @@ -31,13 +31,15 @@ func (r *ResourceManager) schedule() { } func (r *ResourceManager) schedulePool(pool *util.PoolContainer) scheduler.Command { - for _, sch := range r.scheduler { - cmd := sch.Tune(pool.Component, pool.Pool) - switch cmd { - case scheduler.Hold: - continue - default: - return cmd + if pool.Pool.Running() != 0 { + for _, sch := range r.scheduler { + cmd := sch.Tune(pool.Component, pool.Pool) + switch cmd { + case scheduler.Hold: + continue + default: + return cmd + } } } return scheduler.Hold From 51e3813c8a9f38924515719c4bd581320ac3410b Mon Sep 17 00:00:00 2001 From: Weizhen Wang Date: Mon, 6 Feb 2023 17:47:09 +0800 Subject: [PATCH 2/2] update: Signed-off-by: Weizhen Wang --- resourcemanager/schedule.go | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/resourcemanager/schedule.go b/resourcemanager/schedule.go index ea6aa2a0cb92a..a33e0b75a764e 100644 --- a/resourcemanager/schedule.go +++ b/resourcemanager/schedule.go @@ -31,15 +31,16 @@ func (r *ResourceManager) schedule() { } func (r *ResourceManager) schedulePool(pool *util.PoolContainer) scheduler.Command { - if pool.Pool.Running() != 0 { - for _, sch := range r.scheduler { - cmd := sch.Tune(pool.Component, pool.Pool) - switch cmd { - case scheduler.Hold: - continue - default: - return cmd - } + if pool.Pool.Running() == 0 { + return scheduler.Hold + } + for _, sch := range r.scheduler { + cmd := sch.Tune(pool.Component, pool.Pool) + switch cmd { + case scheduler.Hold: + continue + default: + return cmd } } return scheduler.Hold