File pacemaker-pengine-resources-allowed-to-stop-before-state-known-everywhere.patch of Package pacemaker.14737
commit b322110dd85215ec58ba0a53c5bce3007959a8cd
Author: Andrew Beekhof <andrew@beekhof.net>
Date: Wed Oct 25 10:27:09 2017 +1100
Fix: PE: Resources are allowed to stop before their state is known everywhere
diff --git a/pengine/native.c b/pengine/native.c
index 82cfb5731..5ba7b5f99 100644
--- a/pengine/native.c
+++ b/pengine/native.c
@@ -3007,8 +3007,14 @@ native_create_probe(resource_t * rsc, node_t * node, action_t * complete,
custom_action_order(rsc, NULL, probe,
top, reload_key(rsc), NULL,
pe_order_optional, data_set);
-
- if (node->details->shutdown == FALSE) {
+
+ if(node->details->shutdown == FALSE
+ && is_not_set(rsc->flags, pe_rsc_failed)
+ && rsc->next_role != RSC_ROLE_STOPPED) {
+ /* Avoid trying to move resources before we know the location
+ * elsewhere, but stopping should always be allowed.
+ * Especially if the resource has failed.
+ */
custom_action_order(rsc, NULL, probe,
rsc, generate_op_key(rsc->id, RSC_STOP, 0), NULL,
pe_order_optional, data_set);