File bug-1000743_pacemaker-pengine-shutdown-maintenance-node.patch of Package pacemaker.14737
commit fd6be1f54065c1707130b283eb7f9c09e468810b
Author: Gao,Yan <ygao@suse.com>
Date: Wed Aug 24 15:08:19 2016 +0200
Fix: pengine: Do not fence a maintenance node if it shuts down cleanly
A node in maintenance mode might hold resources after it has stopped its
cluster service, but it should not be fenced for that. And the resources
thought to be running on it should remain unmanaged.
diff --git a/lib/pengine/unpack.c b/lib/pengine/unpack.c
index 67aab9f..f4c7391 100644
--- a/lib/pengine/unpack.c
+++ b/lib/pengine/unpack.c
@@ -1842,7 +1842,9 @@ process_rsc_state(resource_t * rsc, node_t * node,
/* If a managed resource is believed to be running, but node is down ... */
if (rsc->role > RSC_ROLE_STOPPED
- && node->details->online == FALSE && is_set(rsc->flags, pe_rsc_managed)) {
+ && node->details->online == FALSE
+ && node->details->maintenance == FALSE
+ && is_set(rsc->flags, pe_rsc_managed)) {
char *reason = NULL;
gboolean should_fence = FALSE;