File jsc#ECO-1611-0011-Feature-scheduler-do-not-differentiate-the-case-wher.patch of Package pacemaker.27558

From f65fc05b42a9009c812896aa6435d0e8262d5991 Mon Sep 17 00:00:00 2001
From: "Gao,Yan" <ygao@suse.com>
Date: Wed, 1 Apr 2020 12:55:51 +0200
Subject: [PATCH 11/15] Feature: scheduler: do not differentiate the case where
 all the nodes have equal priority

In any cases, priority-fencing-delay won't take precedence over any
configured pcmk_delay_base/max.
---
 lib/pengine/utils.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/lib/pengine/utils.c b/lib/pengine/utils.c
index d6a184014..923c557a2 100644
--- a/lib/pengine/utils.c
+++ b/lib/pengine/utils.c
@@ -2337,17 +2337,17 @@ node_priority_fencing_delay(pe_node_t * node, pe_working_set_t * data_set)
     GListPtr gIter = NULL;
 
     // `priority-fencing-delay` is disabled
-    if (data_set->priority_fencing_delay < 0) {
-        return -1;
+    if (data_set->priority_fencing_delay <= 0) {
+        return 0;
     }
 
-    /* No need to delay fencing if the fencing target is not a normal cluster
+    /* No need to request a delay if the fencing target is not a normal cluster
      * member, for example if it's a remote node or a guest node. */
     if (node->details->type != node_member) {
         return 0;
     }
 
-    // No need to delay fencing if the fencing target is in our partition
+    // No need to request a delay if the fencing target is in our partition
     if (node->details->online) {
         return 0;
     }
@@ -2384,7 +2384,7 @@ node_priority_fencing_delay(pe_node_t * node, pe_working_set_t * data_set)
     /* All the nodes have equal priority.
      * Any configured corresponding `pcmk_delay_base/max` will be applied. */
     if (lowest_priority == top_priority) {
-        return -1;
+        return 0;
     }
 
     if (node->details->priority < top_priority) {
@@ -2468,7 +2468,7 @@ pe_fence_op(pe_node_t * node, const char *op, bool optional, const char *reason,
         free(op_key);
     }
 
-    if (data_set->priority_fencing_delay >= 0
+    if (data_set->priority_fencing_delay > 0
 
             /* It's a suitable case where `priority-fencing-delay` applies.
              * At least add `priority-fencing-delay` field as an indicator. */
-- 
2.26.1

openSUSE Build Service is sponsored by