Blame SOURCES/025-stop_unexpected-test.patch

ce46a7
From 8a0a16c8ed72c74d656664694ebe36b76ff22498 Mon Sep 17 00:00:00 2001
ce46a7
From: Ken Gaillot <kgaillot@redhat.com>
ce46a7
Date: Wed, 30 Mar 2022 17:14:33 -0500
ce46a7
Subject: [PATCH] Test: cts-scheduler: add test for
ce46a7
 multiple-active=stop_unexpected
ce46a7
ce46a7
---
ce46a7
 cts/cts-scheduler.in                          |   1 +
ce46a7
 cts/scheduler/dot/stop-unexpected.dot         |  40 ++++
ce46a7
 cts/scheduler/exp/stop-unexpected.exp         | 201 ++++++++++++++++++
ce46a7
 cts/scheduler/scores/stop-unexpected.scores   |  17 ++
ce46a7
 cts/scheduler/summary/stop-unexpected.summary |  41 ++++
ce46a7
 cts/scheduler/xml/stop-unexpected.xml         | 131 ++++++++++++
ce46a7
 6 files changed, 431 insertions(+)
ce46a7
 create mode 100644 cts/scheduler/dot/stop-unexpected.dot
ce46a7
 create mode 100644 cts/scheduler/exp/stop-unexpected.exp
ce46a7
 create mode 100644 cts/scheduler/scores/stop-unexpected.scores
ce46a7
 create mode 100644 cts/scheduler/summary/stop-unexpected.summary
ce46a7
 create mode 100644 cts/scheduler/xml/stop-unexpected.xml
ce46a7
ce46a7
diff --git a/cts/cts-scheduler.in b/cts/cts-scheduler.in
ce46a7
index 3a8aeaca5..8c04687da 100644
ce46a7
--- a/cts/cts-scheduler.in
ce46a7
+++ b/cts/cts-scheduler.in
ce46a7
@@ -273,6 +273,7 @@ TESTS = [
ce46a7
         [ "rec-rsc-6", "Resource Recover - multiple - restart" ],
ce46a7
         [ "rec-rsc-7", "Resource Recover - multiple - stop" ],
ce46a7
         [ "rec-rsc-8", "Resource Recover - multiple - block" ],
ce46a7
+        [ "stop-unexpected", "Resource Recover - multiple - stop unexpected" ],
ce46a7
         [ "rec-rsc-9", "Resource Recover - group/group" ],
ce46a7
         [ "monitor-recovery", "on-fail=block + resource recovery detected by recurring monitor" ],
ce46a7
         [ "stop-failure-no-quorum", "Stop failure without quorum" ],
ce46a7
diff --git a/cts/scheduler/dot/stop-unexpected.dot b/cts/scheduler/dot/stop-unexpected.dot
ce46a7
new file mode 100644
ce46a7
index 000000000..0f67eec54
ce46a7
--- /dev/null
ce46a7
+++ b/cts/scheduler/dot/stop-unexpected.dot
ce46a7
@@ -0,0 +1,40 @@
ce46a7
+ digraph "g" {
ce46a7
+"dgroup_running_0" [ style=bold color="green" fontcolor="orange"]
ce46a7
+"dgroup_start_0" -> "dgroup_running_0" [ style = bold]
ce46a7
+"dgroup_start_0" -> "dummy2_start_0 node2" [ style = bold]
ce46a7
+"dgroup_start_0" -> "dummy3_start_0 node2" [ style = bold]
ce46a7
+"dgroup_start_0" -> "dummy_start_0 node2" [ style = bold]
ce46a7
+"dgroup_start_0" [ style=bold color="green" fontcolor="orange"]
ce46a7
+"dgroup_stop_0" -> "dgroup_stopped_0" [ style = bold]
ce46a7
+"dgroup_stop_0" -> "dummy2_stop_0 node2" [ style = bold]
ce46a7
+"dgroup_stop_0" -> "dummy3_stop_0 node2" [ style = bold]
ce46a7
+"dgroup_stop_0" -> "dummy_stop_0 node3" [ style = bold]
ce46a7
+"dgroup_stop_0" [ style=bold color="green" fontcolor="orange"]
ce46a7
+"dgroup_stopped_0" -> "dgroup_start_0" [ style = bold]
ce46a7
+"dgroup_stopped_0" [ style=bold color="green" fontcolor="orange"]
ce46a7
+"dummy2_monitor_10000 node2" [ style=bold color="green" fontcolor="black"]
ce46a7
+"dummy2_start_0 node2" -> "dgroup_running_0" [ style = bold]
ce46a7
+"dummy2_start_0 node2" -> "dummy2_monitor_10000 node2" [ style = bold]
ce46a7
+"dummy2_start_0 node2" -> "dummy3_start_0 node2" [ style = bold]
ce46a7
+"dummy2_start_0 node2" [ style=bold color="green" fontcolor="black"]
ce46a7
+"dummy2_stop_0 node2" -> "dgroup_stopped_0" [ style = bold]
ce46a7
+"dummy2_stop_0 node2" -> "dummy2_start_0 node2" [ style = bold]
ce46a7
+"dummy2_stop_0 node2" -> "dummy_stop_0 node3" [ style = bold]
ce46a7
+"dummy2_stop_0 node2" [ style=bold color="green" fontcolor="black"]
ce46a7
+"dummy3_monitor_10000 node2" [ style=bold color="green" fontcolor="black"]
ce46a7
+"dummy3_start_0 node2" -> "dgroup_running_0" [ style = bold]
ce46a7
+"dummy3_start_0 node2" -> "dummy3_monitor_10000 node2" [ style = bold]
ce46a7
+"dummy3_start_0 node2" [ style=bold color="green" fontcolor="black"]
ce46a7
+"dummy3_stop_0 node2" -> "dgroup_stopped_0" [ style = bold]
ce46a7
+"dummy3_stop_0 node2" -> "dummy2_stop_0 node2" [ style = bold]
ce46a7
+"dummy3_stop_0 node2" -> "dummy3_start_0 node2" [ style = bold]
ce46a7
+"dummy3_stop_0 node2" [ style=bold color="green" fontcolor="black"]
ce46a7
+"dummy_monitor_10000 node2" [ style=bold color="green" fontcolor="black"]
ce46a7
+"dummy_start_0 node2" -> "dgroup_running_0" [ style = bold]
ce46a7
+"dummy_start_0 node2" -> "dummy2_start_0 node2" [ style = bold]
ce46a7
+"dummy_start_0 node2" -> "dummy_monitor_10000 node2" [ style = bold]
ce46a7
+"dummy_start_0 node2" [ style=bold color="green" fontcolor="orange"]
ce46a7
+"dummy_stop_0 node3" -> "dgroup_stopped_0" [ style = bold]
ce46a7
+"dummy_stop_0 node3" -> "dummy_start_0 node2" [ style = bold]
ce46a7
+"dummy_stop_0 node3" [ style=bold color="green" fontcolor="black"]
ce46a7
+}
ce46a7
diff --git a/cts/scheduler/exp/stop-unexpected.exp b/cts/scheduler/exp/stop-unexpected.exp
ce46a7
new file mode 100644
ce46a7
index 000000000..1f94532f7
ce46a7
--- /dev/null
ce46a7
+++ b/cts/scheduler/exp/stop-unexpected.exp
ce46a7
@@ -0,0 +1,201 @@
ce46a7
+<transition_graph cluster-delay="60s" stonith-timeout="90" failed-stop-offset="INFINITY" failed-start-offset="INFINITY"  transition_id="0">
ce46a7
+  <synapse id="0">
ce46a7
+    <action_set>
ce46a7
+      <pseudo_event id="15" operation="stopped" operation_key="dgroup_stopped_0">
ce46a7
+        <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </pseudo_event>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="4" operation="stop" operation_key="dummy_stop_0" on_node="node3" on_node_uuid="node3"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="1">
ce46a7
+    <action_set>
ce46a7
+      <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0">
ce46a7
+        <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </pseudo_event>
ce46a7
+    </action_set>
ce46a7
+    <inputs/>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="2">
ce46a7
+    <action_set>
ce46a7
+      <pseudo_event id="13" operation="running" operation_key="dgroup_running_0">
ce46a7
+        <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </pseudo_event>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="7" operation="start" operation_key="dummy_start_0"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="11" operation="start" operation_key="dummy3_start_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="3">
ce46a7
+    <action_set>
ce46a7
+      <pseudo_event id="12" operation="start" operation_key="dgroup_start_0">
ce46a7
+        <attributes CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </pseudo_event>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="15" operation="stopped" operation_key="dgroup_stopped_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="4">
ce46a7
+    <action_set>
ce46a7
+      <pseudo_event id="7" operation="start" operation_key="dummy_start_0">
ce46a7
+        <attributes CRM_meta_name="start" CRM_meta_record_pending="false" CRM_meta_timeout="300000" />
ce46a7
+      </pseudo_event>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="4" operation="stop" operation_key="dummy_stop_0" on_node="node3" on_node_uuid="node3"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="5">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="4" operation="stop" operation_key="dummy_stop_0" on_node="node3" on_node_uuid="node3">
ce46a7
+        <primitive id="dummy" class="ocf" provider="heartbeat" type="DummyTimeout"/>
ce46a7
+        <attributes CRM_meta_name="stop" CRM_meta_on_node="node3" CRM_meta_on_node_uuid="node3" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="6">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="2" operation="monitor" operation_key="dummy_monitor_10000" on_node="node2" on_node_uuid="node2">
ce46a7
+        <primitive id="dummy" class="ocf" provider="heartbeat" type="DummyTimeout"/>
ce46a7
+        <attributes CRM_meta_interval="10000" CRM_meta_name="monitor" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="7" operation="start" operation_key="dummy_start_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="7">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2">
ce46a7
+        <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy"/>
ce46a7
+        <attributes CRM_meta_name="start" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="7" operation="start" operation_key="dummy_start_0"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="8">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="8" operation="stop" operation_key="dummy2_stop_0" on_node="node2" on_node_uuid="node2">
ce46a7
+        <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy"/>
ce46a7
+        <attributes CRM_meta_name="stop" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="9">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="3" operation="monitor" operation_key="dummy2_monitor_10000" on_node="node2" on_node_uuid="node2">
ce46a7
+        <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy"/>
ce46a7
+        <attributes CRM_meta_interval="10000" CRM_meta_name="monitor" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="10">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="11" operation="start" operation_key="dummy3_start_0" on_node="node2" on_node_uuid="node2">
ce46a7
+        <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy"/>
ce46a7
+        <attributes CRM_meta_name="start" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="9" operation="start" operation_key="dummy2_start_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="12" operation="start" operation_key="dgroup_start_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="11">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="10" operation="stop" operation_key="dummy3_stop_0" on_node="node2" on_node_uuid="node2">
ce46a7
+        <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy"/>
ce46a7
+        <attributes CRM_meta_name="stop" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <pseudo_event id="14" operation="stop" operation_key="dgroup_stop_0"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+  <synapse id="12">
ce46a7
+    <action_set>
ce46a7
+      <rsc_op id="1" operation="monitor" operation_key="dummy3_monitor_10000" on_node="node2" on_node_uuid="node2">
ce46a7
+        <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy"/>
ce46a7
+        <attributes CRM_meta_interval="10000" CRM_meta_name="monitor" CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_record_pending="false" CRM_meta_timeout="20000" />
ce46a7
+      </rsc_op>
ce46a7
+    </action_set>
ce46a7
+    <inputs>
ce46a7
+      <trigger>
ce46a7
+        <rsc_op id="11" operation="start" operation_key="dummy3_start_0" on_node="node2" on_node_uuid="node2"/>
ce46a7
+      </trigger>
ce46a7
+    </inputs>
ce46a7
+  </synapse>
ce46a7
+</transition_graph>
ce46a7
diff --git a/cts/scheduler/scores/stop-unexpected.scores b/cts/scheduler/scores/stop-unexpected.scores
ce46a7
new file mode 100644
ce46a7
index 000000000..68f98e837
ce46a7
--- /dev/null
ce46a7
+++ b/cts/scheduler/scores/stop-unexpected.scores
ce46a7
@@ -0,0 +1,17 @@
ce46a7
+
ce46a7
+pcmk__group_allocate: dgroup allocation score on node2: 0
ce46a7
+pcmk__group_allocate: dgroup allocation score on node3: 0
ce46a7
+pcmk__group_allocate: dummy allocation score on node2: 0
ce46a7
+pcmk__group_allocate: dummy allocation score on node3: 0
ce46a7
+pcmk__group_allocate: dummy2 allocation score on node2: 100
ce46a7
+pcmk__group_allocate: dummy2 allocation score on node3: 0
ce46a7
+pcmk__group_allocate: dummy3 allocation score on node2: 100
ce46a7
+pcmk__group_allocate: dummy3 allocation score on node3: 0
ce46a7
+pcmk__native_allocate: dummy allocation score on node2: 200
ce46a7
+pcmk__native_allocate: dummy allocation score on node3: 0
ce46a7
+pcmk__native_allocate: dummy2 allocation score on node2: 200
ce46a7
+pcmk__native_allocate: dummy2 allocation score on node3: -INFINITY
ce46a7
+pcmk__native_allocate: dummy3 allocation score on node2: 100
ce46a7
+pcmk__native_allocate: dummy3 allocation score on node3: -INFINITY
ce46a7
+pcmk__native_allocate: st-sbd allocation score on node2: 100
ce46a7
+pcmk__native_allocate: st-sbd allocation score on node3: 0
ce46a7
diff --git a/cts/scheduler/summary/stop-unexpected.summary b/cts/scheduler/summary/stop-unexpected.summary
ce46a7
new file mode 100644
ce46a7
index 000000000..7c7fc68b6
ce46a7
--- /dev/null
ce46a7
+++ b/cts/scheduler/summary/stop-unexpected.summary
ce46a7
@@ -0,0 +1,41 @@
ce46a7
+Current cluster status:
ce46a7
+  * Node List:
ce46a7
+    * Online: [ node2 node3 ]
ce46a7
+
ce46a7
+  * Full List of Resources:
ce46a7
+    * st-sbd	(stonith:external/sbd):	 Started node2
ce46a7
+    * Resource Group: dgroup:
ce46a7
+      * dummy	(ocf:heartbeat:DummyTimeout):	 FAILED [ node2 node3 ]
ce46a7
+      * dummy2	(ocf:heartbeat:Dummy):	 Started node2
ce46a7
+      * dummy3	(ocf:heartbeat:Dummy):	 Started node2
ce46a7
+
ce46a7
+Transition Summary:
ce46a7
+  * Recover    dummy      ( node2 )  due to being multiply active
ce46a7
+  * Restart    dummy2     ( node2 )  due to required dummy start
ce46a7
+  * Restart    dummy3     ( node2 )  due to required dummy2 start
ce46a7
+
ce46a7
+Executing Cluster Transition:
ce46a7
+  * Pseudo action:   dgroup_stop_0
ce46a7
+  * Resource action: dummy3          stop on node2
ce46a7
+  * Resource action: dummy2          stop on node2
ce46a7
+  * Resource action: dummy           stop on node3
ce46a7
+  * Pseudo action:   dgroup_stopped_0
ce46a7
+  * Pseudo action:   dgroup_start_0
ce46a7
+  * Pseudo action:   dummy_start_0
ce46a7
+  * Resource action: dummy           monitor=10000 on node2
ce46a7
+  * Resource action: dummy2          start on node2
ce46a7
+  * Resource action: dummy2          monitor=10000 on node2
ce46a7
+  * Resource action: dummy3          start on node2
ce46a7
+  * Resource action: dummy3          monitor=10000 on node2
ce46a7
+  * Pseudo action:   dgroup_running_0
ce46a7
+
ce46a7
+Revised Cluster Status:
ce46a7
+  * Node List:
ce46a7
+    * Online: [ node2 node3 ]
ce46a7
+
ce46a7
+  * Full List of Resources:
ce46a7
+    * st-sbd	(stonith:external/sbd):	 Started node2
ce46a7
+    * Resource Group: dgroup:
ce46a7
+      * dummy	(ocf:heartbeat:DummyTimeout):	 Started node2
ce46a7
+      * dummy2	(ocf:heartbeat:Dummy):	 Started node2
ce46a7
+      * dummy3	(ocf:heartbeat:Dummy):	 Started node2
ce46a7
diff --git a/cts/scheduler/xml/stop-unexpected.xml b/cts/scheduler/xml/stop-unexpected.xml
ce46a7
new file mode 100644
ce46a7
index 000000000..6e61aeba3
ce46a7
--- /dev/null
ce46a7
+++ b/cts/scheduler/xml/stop-unexpected.xml
ce46a7
@@ -0,0 +1,131 @@
ce46a7
+<cib epoch="631" num_updates="25" admin_epoch="0" validate-with="pacemaker-3.0" crm_feature_set="3.0.8" have-quorum="1" cib-last-written="Thu Aug 20 11:44:27 2015" update-origin="node2" update-client="cibadmin" update-user="root" dc-uuid="node2">
ce46a7
+  <configuration>
ce46a7
+    <crm_config>
ce46a7
+      <cluster_property_set id="cib-bootstrap-options">
ce46a7
+        <nvpair name="dc-version" value="1.1.11-3ca8c3b" id="cib-bootstrap-options-dc-version"/>
ce46a7
+        <nvpair name="cluster-infrastructure" value="corosync" id="cib-bootstrap-options-cluster-infrastructure"/>
ce46a7
+        <nvpair name="node-action-limit" value="2" id="cib-bootstrap-options-node-action-limit"/>
ce46a7
+        <nvpair name="no-quorum-policy" value="ignore" id="cib-bootstrap-options-no-quorum-policy"/>
ce46a7
+        <nvpair name="stonith-enabled" value="false" id="cib-bootstrap-options-stonith-enabled"/>
ce46a7
+        <nvpair name="stonith-timeout" value="90" id="cib-bootstrap-options-stonith-timeout"/>
ce46a7
+        <nvpair name="last-lrm-refresh" value="1439556204" id="cib-bootstrap-options-last-lrm-refresh"/>
ce46a7
+      </cluster_property_set>
ce46a7
+    </crm_config>
ce46a7
+    <nodes>
ce46a7
+      <node uname="node2" id="node2">
ce46a7
+        <instance_attributes id="nodes-node2">
ce46a7
+          <nvpair id="nodes-node2-standby" name="standby" value="off"/>
ce46a7
+        </instance_attributes>
ce46a7
+      </node>
ce46a7
+      <node id="node3" uname="node3">
ce46a7
+        <instance_attributes id="nodes-node3">
ce46a7
+          <nvpair id="nodes-node3-standby" name="standby" value="off"/>
ce46a7
+        </instance_attributes>
ce46a7
+      </node>
ce46a7
+    </nodes>
ce46a7
+    <resources>
ce46a7
+      <primitive id="st-sbd" class="stonith" type="external/sbd"/>
ce46a7
+      <group id="dgroup">
ce46a7
+        <meta_attributes id="dgroup-meta_attributes">
ce46a7
+          <nvpair name="multiple-active" value="stop_unexpected" id="dgroup-meta_attributes-multiple-active"/>
ce46a7
+        </meta_attributes>
ce46a7
+        <primitive id="dummy" class="ocf" provider="heartbeat" type="DummyTimeout">
ce46a7
+          <operations>
ce46a7
+            <op name="monitor" interval="10s" timeout="20" id="dummy-monitor-10s"/>
ce46a7
+            <op name="start" timeout="300s" interval="0" id="dummy-start-0"/>
ce46a7
+            <op name="stop" timeout="20s" interval="0" id="dummy-stop-0"/>
ce46a7
+          </operations>
ce46a7
+          <meta_attributes id="dummy-meta_attributes">
ce46a7
+            <nvpair name="target-role" value="Started" id="dummy-meta_attributes-target-role"/>
ce46a7
+          </meta_attributes>
ce46a7
+        </primitive>
ce46a7
+        <primitive id="dummy2" class="ocf" provider="heartbeat" type="Dummy">
ce46a7
+          <operations>
ce46a7
+            <op name="monitor" interval="10s" timeout="20" id="dummy2-monitor-10s"/>
ce46a7
+            <op name="start" timeout="20s" interval="0" id="dummy2-start-0"/>
ce46a7
+            <op name="stop" timeout="20s" interval="0" id="dummy2-stop-0"/>
ce46a7
+          </operations>
ce46a7
+          <meta_attributes id="dummy2-meta_attributes">
ce46a7
+            <nvpair name="target-role" value="Started" id="dummy2-meta_attributes-target-role"/>
ce46a7
+          </meta_attributes>
ce46a7
+        </primitive>
ce46a7
+        <primitive id="dummy3" class="ocf" provider="heartbeat" type="Dummy">
ce46a7
+          <operations>
ce46a7
+            <op name="monitor" interval="10s" timeout="20" id="dummy3-monitor-10s"/>
ce46a7
+            <op name="start" timeout="20s" interval="0" id="dummy3-start-0"/>
ce46a7
+            <op name="stop" timeout="20s" interval="0" id="dummy3-stop-0"/>
ce46a7
+          </operations>
ce46a7
+          <meta_attributes id="dummy3-meta_attributes">
ce46a7
+            <nvpair name="target-role" value="Started" id="dummy3-meta_attributes-target-role"/>
ce46a7
+          </meta_attributes>
ce46a7
+        </primitive>
ce46a7
+      </group>
ce46a7
+    </resources>
ce46a7
+    <constraints/>
ce46a7
+    <op_defaults>
ce46a7
+      <meta_attributes id="op_defaults-options">
ce46a7
+        <nvpair id="op_defaults-options-record-pending" name="record-pending" value="false"/>
ce46a7
+      </meta_attributes>
ce46a7
+    </op_defaults>
ce46a7
+    <rsc_defaults>
ce46a7
+      <meta_attributes id="rsc_defaults-options">
ce46a7
+        <nvpair name="resource-stickiness" value="100" id="rsc_defaults-options-resource-stickiness"/>
ce46a7
+        <nvpair name="migration-threshold" value="100" id="rsc_defaults-options-migration-threshold"/>
ce46a7
+      </meta_attributes>
ce46a7
+    </rsc_defaults>
ce46a7
+  </configuration>
ce46a7
+  <status>
ce46a7
+    <node_state id="node2" uname="node2" in_ccm="true" crmd="online" crm-debug-origin="do_update_resource" join="member" expected="member">
ce46a7
+      <transient_attributes id="node2">
ce46a7
+        <instance_attributes id="status-node2">
ce46a7
+          <nvpair id="status-node2-shutdown" name="shutdown" value="0"/>
ce46a7
+          <nvpair id="status-node2-probe_complete" name="probe_complete" value="true"/>
ce46a7
+        </instance_attributes>
ce46a7
+      </transient_attributes>
ce46a7
+      <lrm id="node2">
ce46a7
+        <lrm_resources>
ce46a7
+          <lrm_resource id="dummy3" type="Dummy" class="ocf" provider="heartbeat">
ce46a7
+            <lrm_rsc_op id="dummy3_last_0" operation_key="dummy3_start_0" operation="start" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="13:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;13:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="24" rc-code="0" op-status="0" interval="0" last-run="1440063239" last-rc-change="1440063239" exec-time="6" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+            <lrm_rsc_op id="dummy3_monitor_10000" operation_key="dummy3_monitor_10000" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="14:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;14:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="25" rc-code="0" op-status="0" interval="10000" last-rc-change="1440063239" exec-time="5" queue-time="0" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/>
ce46a7
+          </lrm_resource>
ce46a7
+          <lrm_resource id="st-sbd" type="external/sbd" class="stonith">
ce46a7
+            <lrm_rsc_op id="st-sbd_last_0" operation_key="st-sbd_start_0" operation="start" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="10:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;10:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="27" rc-code="0" op-status="0" interval="0" last-run="1440064019" last-rc-change="1440064019" exec-time="1213" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+          </lrm_resource>
ce46a7
+          <lrm_resource id="dummy" type="DummyTimeout" class="ocf" provider="heartbeat">
ce46a7
+            <lrm_rsc_op id="dummy_last_0" operation_key="dummy_start_0" operation="start" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="9:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;9:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="20" rc-code="0" op-status="0" interval="0" last-run="1440063237" last-rc-change="1440063237" exec-time="1009" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+            <lrm_rsc_op id="dummy_monitor_10000" operation_key="dummy_monitor_10000" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="10:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;10:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="21" rc-code="0" op-status="0" interval="10000" last-rc-change="1440063238" exec-time="1010" queue-time="0" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/>
ce46a7
+          </lrm_resource>
ce46a7
+          <lrm_resource id="dummy2" type="Dummy" class="ocf" provider="heartbeat">
ce46a7
+            <lrm_rsc_op id="dummy2_last_0" operation_key="dummy2_start_0" operation="start" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="11:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;11:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="22" rc-code="0" op-status="0" interval="0" last-run="1440063239" last-rc-change="1440063239" exec-time="5" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+            <lrm_rsc_op id="dummy2_monitor_10000" operation_key="dummy2_monitor_10000" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="12:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;12:1:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="23" rc-code="0" op-status="0" interval="10000" last-rc-change="1440063239" exec-time="5" queue-time="0" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/>
ce46a7
+          </lrm_resource>
ce46a7
+        </lrm_resources>
ce46a7
+      </lrm>
ce46a7
+    </node_state>
ce46a7
+    <node_state id="node3" uname="node3" crmd="online" crm-debug-origin="do_update_resource" in_ccm="true" join="member" expected="member">
ce46a7
+      <transient_attributes id="node3">
ce46a7
+        <instance_attributes id="status-node3">
ce46a7
+          <nvpair id="status-node3-shutdown" name="shutdown" value="0"/>
ce46a7
+          <nvpair id="status-node3-probe_complete" name="probe_complete" value="true"/>
ce46a7
+        </instance_attributes>
ce46a7
+      </transient_attributes>
ce46a7
+      <lrm id="node3">
ce46a7
+        <lrm_resources>
ce46a7
+          <lrm_resource id="dummy3" type="Dummy" class="ocf" provider="heartbeat">
ce46a7
+            <lrm_rsc_op id="dummy3_last_0" operation_key="dummy3_monitor_0" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="11:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:7;11:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="18" rc-code="7" op-status="0" interval="0" last-run="1440063820" last-rc-change="1440063820" exec-time="7" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+          </lrm_resource>
ce46a7
+          <lrm_resource id="st-sbd" type="external/sbd" class="stonith">
ce46a7
+            <lrm_rsc_op id="st-sbd_last_0" operation_key="st-sbd_stop_0" operation="stop" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="9:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:0;9:6:0:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="21" rc-code="0" op-status="0" interval="0" last-run="1440064019" last-rc-change="1440064019" exec-time="1" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+          </lrm_resource>
ce46a7
+          <lrm_resource id="dummy" type="DummyTimeout" class="ocf" provider="heartbeat">
ce46a7
+            <lrm_rsc_op id="dummy_last_0" operation_key="dummy_start_0" operation="start" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" transition-magic="0:7;5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" call-id="20" rc-code="7" op-status="0" interval="0" last-run="1440063984" last-rc-change="1440063984" exec-time="179014" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+            <lrm_rsc_op id="dummy_last_failure_0" operation_key="dummy_start_0" operation="start" crm-debug-origin="do_update_resource" crm_feature_set="3.0.8" transition-key="5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" transition-magic="0:7;5:0:0:a5e85e43-f35a-4f75-8e15-f0ddc8d81812" call-id="20" rc-code="7" op-status="0" interval="0" last-run="1440063984" last-rc-change="1440063984" exec-time="179014" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+          </lrm_resource>
ce46a7
+          <lrm_resource id="dummy2" type="Dummy" class="ocf" provider="heartbeat">
ce46a7
+            <lrm_rsc_op id="dummy2_last_0" operation_key="dummy2_monitor_0" operation="monitor" crm-debug-origin="build_active_RAs" crm_feature_set="3.0.8" transition-key="10:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" transition-magic="0:7;10:2:7:b78eae54-472e-4e90-a3c5-ec4b25a6d8cf" call-id="14" rc-code="7" op-status="0" interval="0" last-run="1440063820" last-rc-change="1440063820" exec-time="11" queue-time="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8" op-force-restart=" state " op-restart-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/>
ce46a7
+          </lrm_resource>
ce46a7
+        </lrm_resources>
ce46a7
+      </lrm>
ce46a7
+    </node_state>
ce46a7
+  </status>
ce46a7
+</cib>
ce46a7
-- 
ce46a7
2.27.0
ce46a7