From 3d9033f39070585549cd1efeefd4c87a36fc10c4 Mon Sep 17 00:00:00 2001
From: Morris Jette <jette@schedmd.com>
Date: Thu, 20 Oct 2011 10:20:25 -0700
Subject: [PATCH] Re-calculate rather than preserve a job's new prio if
 original prio <=1

---
 src/plugins/priority/basic/priority_basic.c             | 2 +-
 src/plugins/priority/multifactor/priority_multifactor.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/plugins/priority/basic/priority_basic.c b/src/plugins/priority/basic/priority_basic.c
index 86b1247b17e..f82d7404dd7 100644
--- a/src/plugins/priority/basic/priority_basic.c
+++ b/src/plugins/priority/basic/priority_basic.c
@@ -110,7 +110,7 @@ extern uint32_t priority_p_set(uint32_t last_prio, struct job_record *job_ptr)
 {
 	uint32_t new_prio = 1;
 
-	if (job_ptr->direct_set_prio)
+	if (job_ptr->direct_set_prio && (job_ptr->priority > 1))
 		return job_ptr->priority;
 
 	if (last_prio >= 2)
diff --git a/src/plugins/priority/multifactor/priority_multifactor.c b/src/plugins/priority/multifactor/priority_multifactor.c
index bcfed0517e1..04eaf2604e4 100644
--- a/src/plugins/priority/multifactor/priority_multifactor.c
+++ b/src/plugins/priority/multifactor/priority_multifactor.c
@@ -531,7 +531,7 @@ static uint32_t _get_priority_internal(time_t start_time,
 	double priority		= 0.0;
 	priority_factors_object_t pre_factors;
 
-	if (job_ptr->direct_set_prio)
+	if (job_ptr->direct_set_prio && (job_ptr->priority > 1))
 		return job_ptr->priority;
 
 	if (!job_ptr->details) {
-- 
GitLab