Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:lafenghu
pacemaker
pacemaker-ticket-standby-tests.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pacemaker-ticket-standby-tests.diff of Package pacemaker
commit c52df0e6a070de97c10ec9445f7428c3f0cfb2e4 Author: Gao,Yan <ygao@suse.com> Date: Sat Mar 24 18:23:11 2012 +0800 Low: PE: Support to make tickets standby for relinquishing tickets gracefully (regression tests) diff --git a/pengine/regression.sh b/pengine/regression.sh index f8e3d7d..493b05c 100755 --- a/pengine/regression.sh +++ b/pengine/regression.sh @@ -496,6 +496,19 @@ do_test ticket-primitive-10 "Ticket - Primitive (loss-policy=freeze, initial)" do_test ticket-primitive-11 "Ticket - Primitive (loss-policy=freeze, granted)" do_test ticket-primitive-12 "Ticket - Primitive (loss-policy=freeze, revoked)" +do_test ticket-primitive-13 "Ticket - Primitive (loss-policy=stop, standby, granted)" +do_test ticket-primitive-14 "Ticket - Primitive (loss-policy=stop, granted, standby)" +do_test ticket-primitive-15 "Ticket - Primitive (loss-policy=stop, standby, revoked)" +do_test ticket-primitive-16 "Ticket - Primitive (loss-policy=demote, standby, granted)" +do_test ticket-primitive-17 "Ticket - Primitive (loss-policy=demote, granted, standby)" +do_test ticket-primitive-18 "Ticket - Primitive (loss-policy=demote, standby, revoked)" +do_test ticket-primitive-19 "Ticket - Primitive (loss-policy=fence, standby, granted)" +do_test ticket-primitive-20 "Ticket - Primitive (loss-policy=fence, granted, standby)" +do_test ticket-primitive-21 "Ticket - Primitive (loss-policy=fence, standby, revoked)" +do_test ticket-primitive-22 "Ticket - Primitive (loss-policy=freeze, standby, granted)" +do_test ticket-primitive-23 "Ticket - Primitive (loss-policy=freeze, granted, standby)" +do_test ticket-primitive-24 "Ticket - Primitive (loss-policy=freeze, standby, revoked)" + echo"" do_test ticket-group-1 "Ticket - Group (loss-policy=stop, initial)" do_test ticket-group-2 "Ticket - Group (loss-policy=stop, granted)" @@ -509,7 +522,20 @@ do_test ticket-group-9 "Ticket - Group (loss-policy=fence, revoked)" do_test ticket-group-10 "Ticket - Group (loss-policy=freeze, initial)" do_test ticket-group-11 "Ticket - Group (loss-policy=freeze, granted)" do_test ticket-group-12 "Ticket - Group (loss-policy=freeze, revoked)" - + +do_test ticket-group-13 "Ticket - Group (loss-policy=stop, standby, granted)" +do_test ticket-group-14 "Ticket - Group (loss-policy=stop, granted, standby)" +do_test ticket-group-15 "Ticket - Group (loss-policy=stop, standby, revoked)" +do_test ticket-group-16 "Ticket - Group (loss-policy=demote, standby, granted)" +do_test ticket-group-17 "Ticket - Group (loss-policy=demote, granted, standby)" +do_test ticket-group-18 "Ticket - Group (loss-policy=demote, standby, revoked)" +do_test ticket-group-19 "Ticket - Group (loss-policy=fence, standby, granted)" +do_test ticket-group-20 "Ticket - Group (loss-policy=fence, granted, standby)" +do_test ticket-group-21 "Ticket - Group (loss-policy=fence, standby, revoked)" +do_test ticket-group-22 "Ticket - Group (loss-policy=freeze, standby, granted)" +do_test ticket-group-23 "Ticket - Group (loss-policy=freeze, granted, standby)" +do_test ticket-group-24 "Ticket - Group (loss-policy=freeze, standby, revoked)" + echo"" do_test ticket-clone-1 "Ticket - Clone (loss-policy=stop, initial)" do_test ticket-clone-2 "Ticket - Clone (loss-policy=stop, granted)" @@ -523,7 +549,20 @@ do_test ticket-clone-9 "Ticket - Clone (loss-policy=fence, revoked)" do_test ticket-clone-10 "Ticket - Clone (loss-policy=freeze, initial)" do_test ticket-clone-11 "Ticket - Clone (loss-policy=freeze, granted)" do_test ticket-clone-12 "Ticket - Clone (loss-policy=freeze, revoked)" - + +do_test ticket-clone-13 "Ticket - Clone (loss-policy=stop, standby, granted)" +do_test ticket-clone-14 "Ticket - Clone (loss-policy=stop, granted, standby)" +do_test ticket-clone-15 "Ticket - Clone (loss-policy=stop, standby, revoked)" +do_test ticket-clone-16 "Ticket - Clone (loss-policy=demote, standby, granted)" +do_test ticket-clone-17 "Ticket - Clone (loss-policy=demote, granted, standby)" +do_test ticket-clone-18 "Ticket - Clone (loss-policy=demote, standby, revoked)" +do_test ticket-clone-19 "Ticket - Clone (loss-policy=fence, standby, granted)" +do_test ticket-clone-20 "Ticket - Clone (loss-policy=fence, granted, standby)" +do_test ticket-clone-21 "Ticket - Clone (loss-policy=fence, standby, revoked)" +do_test ticket-clone-22 "Ticket - Clone (loss-policy=freeze, standby, granted)" +do_test ticket-clone-23 "Ticket - Clone (loss-policy=freeze, granted, standby)" +do_test ticket-clone-24 "Ticket - Clone (loss-policy=freeze, standby, revoked)" + echo"" do_test ticket-master-1 "Ticket - Master (loss-policy=stop, initial)" do_test ticket-master-2 "Ticket - Master (loss-policy=stop, granted)" @@ -538,6 +577,19 @@ do_test ticket-master-10 "Ticket - Master (loss-policy=freeze, initial)" do_test ticket-master-11 "Ticket - Master (loss-policy=freeze, granted)" do_test ticket-master-12 "Ticket - Master (loss-policy=freeze, revoked)" +do_test ticket-master-13 "Ticket - Master (loss-policy=stop, standby, granted)" +do_test ticket-master-14 "Ticket - Master (loss-policy=stop, granted, standby)" +do_test ticket-master-15 "Ticket - Master (loss-policy=stop, standby, revoked)" +do_test ticket-master-16 "Ticket - Master (loss-policy=demote, standby, granted)" +do_test ticket-master-17 "Ticket - Master (loss-policy=demote, granted, standby)" +do_test ticket-master-18 "Ticket - Master (loss-policy=demote, standby, revoked)" +do_test ticket-master-19 "Ticket - Master (loss-policy=fence, standby, granted)" +do_test ticket-master-20 "Ticket - Master (loss-policy=fence, granted, standby)" +do_test ticket-master-21 "Ticket - Master (loss-policy=fence, standby, revoked)" +do_test ticket-master-22 "Ticket - Master (loss-policy=freeze, standby, granted)" +do_test ticket-master-23 "Ticket - Master (loss-policy=freeze, granted, standby)" +do_test ticket-master-24 "Ticket - Master (loss-policy=freeze, standby, revoked)" + echo "" do_test ticket-rsc-sets-1 "Ticket - Resource sets (1 ticket, initial)" do_test ticket-rsc-sets-2 "Ticket - Resource sets (1 ticket, granted)" @@ -547,6 +599,14 @@ do_test ticket-rsc-sets-5 "Ticket - Resource sets (2 tickets, granted)" do_test ticket-rsc-sets-6 "Ticket - Resource sets (2 tickets, granted)" do_test ticket-rsc-sets-7 "Ticket - Resource sets (2 tickets, revoked)" +do_test ticket-rsc-sets-8 "Ticket - Resource sets (1 ticket, standby, granted)" +do_test ticket-rsc-sets-9 "Ticket - Resource sets (1 ticket, granted, standby)" +do_test ticket-rsc-sets-10 "Ticket - Resource sets (1 ticket, standby, revoked)" +do_test ticket-rsc-sets-11 "Ticket - Resource sets (2 tickets, standby, granted)" +do_test ticket-rsc-sets-12 "Ticket - Resource sets (2 tickets, standby, granted)" +do_test ticket-rsc-sets-13 "Ticket - Resource sets (2 tickets, granted, standby)" +do_test ticket-rsc-sets-14 "Ticket - Resource sets (2 tickets, standby, revoked)" + echo "" do_test template-1 "Template - 1" do_test template-2 "Template - 2" diff --git a/pengine/test10/ticket-clone-13.dot b/pengine/test10/ticket-clone-13.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-clone-13.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-13.exp b/pengine/test10/ticket-clone-13.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-clone-13.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-13.scores b/pengine/test10/ticket-clone-13.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-13.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-13.xml b/pengine/test10/ticket-clone-13.xml new file mode 100644 index 0000000..3494923 --- /dev/null +++ b/pengine/test10/ticket-clone-13.xml @@ -0,0 +1,57 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:14:55 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-14.dot b/pengine/test10/ticket-clone-14.dot new file mode 100644 index 0000000..1c04e6e --- /dev/null +++ b/pengine/test10/ticket-clone-14.dot @@ -0,0 +1,16 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone1_stop_0" -> "clone1_stopped_0" [ style = bold] +"clone1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"clone1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"clone1_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "clone1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "clone1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-14.exp b/pengine/test10/ticket-clone-14.exp new file mode 100644 index 0000000..a758892 --- /dev/null +++ b/pengine/test10/ticket-clone-14.exp @@ -0,0 +1,86 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="clone1:rsc1:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="clone1:rsc1:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="clone1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-14.scores b/pengine/test10/ticket-clone-14.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-14.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-14.xml b/pengine/test10/ticket-clone-14.xml new file mode 100644 index 0000000..eba5c42 --- /dev/null +++ b/pengine/test10/ticket-clone-14.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:20:52 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-15.dot b/pengine/test10/ticket-clone-15.dot new file mode 100644 index 0000000..1c04e6e --- /dev/null +++ b/pengine/test10/ticket-clone-15.dot @@ -0,0 +1,16 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone1_stop_0" -> "clone1_stopped_0" [ style = bold] +"clone1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"clone1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"clone1_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "clone1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "clone1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-15.exp b/pengine/test10/ticket-clone-15.exp new file mode 100644 index 0000000..a758892 --- /dev/null +++ b/pengine/test10/ticket-clone-15.exp @@ -0,0 +1,86 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="clone1:rsc1:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="clone1:rsc1:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="clone1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-15.scores b/pengine/test10/ticket-clone-15.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-15.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-15.xml b/pengine/test10/ticket-clone-15.xml new file mode 100644 index 0000000..c9c7fa6 --- /dev/null +++ b/pengine/test10/ticket-clone-15.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:20:52 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-16.dot b/pengine/test10/ticket-clone-16.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-clone-16.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-16.exp b/pengine/test10/ticket-clone-16.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-clone-16.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-16.scores b/pengine/test10/ticket-clone-16.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-16.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-16.xml b/pengine/test10/ticket-clone-16.xml new file mode 100644 index 0000000..e8d9a66 --- /dev/null +++ b/pengine/test10/ticket-clone-16.xml @@ -0,0 +1,57 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:14:55 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-17.dot b/pengine/test10/ticket-clone-17.dot new file mode 100644 index 0000000..1c04e6e --- /dev/null +++ b/pengine/test10/ticket-clone-17.dot @@ -0,0 +1,16 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone1_stop_0" -> "clone1_stopped_0" [ style = bold] +"clone1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"clone1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"clone1_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "clone1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "clone1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-17.exp b/pengine/test10/ticket-clone-17.exp new file mode 100644 index 0000000..a758892 --- /dev/null +++ b/pengine/test10/ticket-clone-17.exp @@ -0,0 +1,86 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="clone1:rsc1:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="clone1:rsc1:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="clone1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-17.scores b/pengine/test10/ticket-clone-17.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-17.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-17.xml b/pengine/test10/ticket-clone-17.xml new file mode 100644 index 0000000..599cec2 --- /dev/null +++ b/pengine/test10/ticket-clone-17.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:20:48 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-18.dot b/pengine/test10/ticket-clone-18.dot new file mode 100644 index 0000000..1c04e6e --- /dev/null +++ b/pengine/test10/ticket-clone-18.dot @@ -0,0 +1,16 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone1_stop_0" -> "clone1_stopped_0" [ style = bold] +"clone1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"clone1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"clone1_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "clone1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "clone1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-18.exp b/pengine/test10/ticket-clone-18.exp new file mode 100644 index 0000000..a758892 --- /dev/null +++ b/pengine/test10/ticket-clone-18.exp @@ -0,0 +1,86 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="clone1:rsc1:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="clone1:rsc1:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="clone1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-18.scores b/pengine/test10/ticket-clone-18.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-18.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-18.xml b/pengine/test10/ticket-clone-18.xml new file mode 100644 index 0000000..5afd2da --- /dev/null +++ b/pengine/test10/ticket-clone-18.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:20:48 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-19.dot b/pengine/test10/ticket-clone-19.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-clone-19.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-19.exp b/pengine/test10/ticket-clone-19.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-clone-19.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-19.scores b/pengine/test10/ticket-clone-19.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-19.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-19.xml b/pengine/test10/ticket-clone-19.xml new file mode 100644 index 0000000..1576f06 --- /dev/null +++ b/pengine/test10/ticket-clone-19.xml @@ -0,0 +1,57 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:14:55 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-20.dot b/pengine/test10/ticket-clone-20.dot new file mode 100644 index 0000000..1c04e6e --- /dev/null +++ b/pengine/test10/ticket-clone-20.dot @@ -0,0 +1,16 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone1_stop_0" -> "clone1_stopped_0" [ style = bold] +"clone1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"clone1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"clone1_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "clone1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "clone1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-20.exp b/pengine/test10/ticket-clone-20.exp new file mode 100644 index 0000000..a758892 --- /dev/null +++ b/pengine/test10/ticket-clone-20.exp @@ -0,0 +1,86 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="clone1:rsc1:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="clone1:rsc1:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="clone1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-20.scores b/pengine/test10/ticket-clone-20.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-20.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-20.xml b/pengine/test10/ticket-clone-20.xml new file mode 100644 index 0000000..0ca6500 --- /dev/null +++ b/pengine/test10/ticket-clone-20.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:20:59 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-21.dot b/pengine/test10/ticket-clone-21.dot new file mode 100644 index 0000000..d47eaeb --- /dev/null +++ b/pengine/test10/ticket-clone-21.dot @@ -0,0 +1,31 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone1_stop_0" -> "clone1_stopped_0" [ style = bold] +"clone1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"clone1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"clone1_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "clone1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="orange"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "clone1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="orange"] +"stonith node1" -> "all_stopped" [ style = bold] +"stonith node1" -> "clone1_stop_0" [ style = bold] +"stonith node1" -> "rsc1:1_stop_0 node1" [ style = bold] +"stonith node1" -> "stonith node2" [ style = bold] +"stonith node1" [ style=bold color="green" fontcolor="black"] +"stonith node2" -> "all_stopped" [ style = bold] +"stonith node2" -> "clone1_stop_0" [ style = bold] +"stonith node2" -> "rsc1:0_stop_0 node2" [ style = bold] +"stonith node2" -> "stonith_complete" [ style = bold] +"stonith node2" [ style=bold color="green" fontcolor="black"] +"stonith_complete" -> "rsc1:0_stop_0 node2" [ style = bold] +"stonith_complete" -> "rsc1:1_stop_0 node1" [ style = bold] +"stonith_complete" [ style=bold color="green" fontcolor="orange"] +"stonith_up" -> "stonith node1" [ style = bold] +"stonith_up" -> "stonith node2" [ style = bold] +"stonith_up" -> "stonith_complete" [ style = bold] +"stonith_up" [ style=bold color="green" fontcolor="orange"] +} diff --git a/pengine/test10/ticket-clone-21.exp b/pengine/test10/ticket-clone-21.exp new file mode 100644 index 0000000..ce2d0d6 --- /dev/null +++ b/pengine/test10/ticket-clone-21.exp @@ -0,0 +1,143 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="6" operation="stop" operation_key="rsc1:0_stop_0"> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="10" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stonith_complete" operation_key="stonith_complete"/> + </trigger> + <trigger> + <crm_event id="15" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="7" operation="stop" operation_key="rsc1:1_stop_0"> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="10" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stonith_complete" operation_key="stonith_complete"/> + </trigger> + <trigger> + <crm_event id="14" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="11" operation="stopped" operation_key="clone1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="6" operation="stop" operation_key="rsc1:0_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="7" operation="stop" operation_key="rsc1:1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="10" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="10" operation="stop" operation_key="clone1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <crm_event id="14" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <crm_event id="15" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <crm_event id="15" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_stonith_action="reboot" crm_feature_set="3.0.6"/> + </crm_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + <trigger> + <crm_event id="14" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> + <synapse id="5"> + <action_set> + <crm_event id="14" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_on_node="node1" CRM_meta_on_node_uuid="node1" CRM_meta_stonith_action="reboot" crm_feature_set="3.0.6"/> + </crm_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="13" operation="stonith_complete" operation_key="stonith_complete"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + <trigger> + <crm_event id="15" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="7"> + <action_set> + <pseudo_event id="12" operation="stonith_up" operation_key="stonith_up"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="8"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="6" operation="stop" operation_key="rsc1:0_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="7" operation="stop" operation_key="rsc1:1_stop_0"/> + </trigger> + <trigger> + <crm_event id="14" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <crm_event id="15" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-21.scores b/pengine/test10/ticket-clone-21.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-21.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-21.xml b/pengine/test10/ticket-clone-21.xml new file mode 100644 index 0000000..a249250 --- /dev/null +++ b/pengine/test10/ticket-clone-21.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:20:59 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-22.dot b/pengine/test10/ticket-clone-22.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-clone-22.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-22.exp b/pengine/test10/ticket-clone-22.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-clone-22.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-22.scores b/pengine/test10/ticket-clone-22.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-22.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-22.xml b/pengine/test10/ticket-clone-22.xml new file mode 100644 index 0000000..cd32da4 --- /dev/null +++ b/pengine/test10/ticket-clone-22.xml @@ -0,0 +1,57 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:14:55 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-23.dot b/pengine/test10/ticket-clone-23.dot new file mode 100644 index 0000000..1c04e6e --- /dev/null +++ b/pengine/test10/ticket-clone-23.dot @@ -0,0 +1,16 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone1_stop_0" -> "clone1_stopped_0" [ style = bold] +"clone1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"clone1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"clone1_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "clone1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "clone1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-23.exp b/pengine/test10/ticket-clone-23.exp new file mode 100644 index 0000000..a758892 --- /dev/null +++ b/pengine/test10/ticket-clone-23.exp @@ -0,0 +1,86 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="clone1:rsc1:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="clone1:rsc1:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="clone1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="clone1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-23.scores b/pengine/test10/ticket-clone-23.scores new file mode 100644 index 0000000..89e2d0f --- /dev/null +++ b/pengine/test10/ticket-clone-23.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-23.xml b/pengine/test10/ticket-clone-23.xml new file mode 100644 index 0000000..f13ccf5 --- /dev/null +++ b/pengine/test10/ticket-clone-23.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:21:04 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-clone-24.dot b/pengine/test10/ticket-clone-24.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-clone-24.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-clone-24.exp b/pengine/test10/ticket-clone-24.exp new file mode 100644 index 0000000..446bd6f --- /dev/null +++ b/pengine/test10/ticket-clone-24.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-clone-24.scores b/pengine/test10/ticket-clone-24.scores new file mode 100644 index 0000000..d311a38 --- /dev/null +++ b/pengine/test10/ticket-clone-24.scores @@ -0,0 +1,13 @@ +Allocation scores: +clone_color: clone1 allocation score on node1: 0 +clone_color: clone1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-clone-24.xml b/pengine/test10/ticket-clone-24.xml new file mode 100644 index 0000000..96c1f63 --- /dev/null +++ b/pengine/test10/ticket-clone-24.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 16:21:04 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <clone id="clone1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + </resources> + <constraints> + <rsc_ticket id="clone1-dep-ticketA" rsc="clone1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-13.dot b/pengine/test10/ticket-group-13.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-group-13.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-13.exp b/pengine/test10/ticket-group-13.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-group-13.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-13.scores b/pengine/test10/ticket-group-13.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-13.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-13.xml b/pengine/test10/ticket-group-13.xml new file mode 100644 index 0000000..37c9fc3 --- /dev/null +++ b/pengine/test10/ticket-group-13.xml @@ -0,0 +1,73 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:43:19 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-14.dot b/pengine/test10/ticket-group-14.dot new file mode 100644 index 0000000..f6e63d3 --- /dev/null +++ b/pengine/test10/ticket-group-14.dot @@ -0,0 +1,17 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group1_stop_0" -> "group1_stopped_0" [ style = bold] +"group1_stop_0" -> "rsc1_stop_0 node2" [ style = bold] +"group1_stop_0" -> "rsc2_stop_0 node2" [ style = bold] +"group1_stop_0" [ style=bold color="green" fontcolor="orange"] +"group1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc2_stop_0 node2" -> "rsc1_stop_0 node2" [ style = bold] +"rsc2_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-14.exp b/pengine/test10/ticket-group-14.exp new file mode 100644 index 0000000..94806e6 --- /dev/null +++ b/pengine/test10/ticket-group-14.exp @@ -0,0 +1,89 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="group1_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="group1:rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc2" long-id="group1:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-14.scores b/pengine/test10/ticket-group-14.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-14.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-14.xml b/pengine/test10/ticket-group-14.xml new file mode 100644 index 0000000..db5db0f --- /dev/null +++ b/pengine/test10/ticket-group-14.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:49:00 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-15.dot b/pengine/test10/ticket-group-15.dot new file mode 100644 index 0000000..f6e63d3 --- /dev/null +++ b/pengine/test10/ticket-group-15.dot @@ -0,0 +1,17 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group1_stop_0" -> "group1_stopped_0" [ style = bold] +"group1_stop_0" -> "rsc1_stop_0 node2" [ style = bold] +"group1_stop_0" -> "rsc2_stop_0 node2" [ style = bold] +"group1_stop_0" [ style=bold color="green" fontcolor="orange"] +"group1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc2_stop_0 node2" -> "rsc1_stop_0 node2" [ style = bold] +"rsc2_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-15.exp b/pengine/test10/ticket-group-15.exp new file mode 100644 index 0000000..94806e6 --- /dev/null +++ b/pengine/test10/ticket-group-15.exp @@ -0,0 +1,89 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="group1_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="group1:rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc2" long-id="group1:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-15.scores b/pengine/test10/ticket-group-15.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-15.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-15.xml b/pengine/test10/ticket-group-15.xml new file mode 100644 index 0000000..93f0c0f --- /dev/null +++ b/pengine/test10/ticket-group-15.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:49:00 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-16.dot b/pengine/test10/ticket-group-16.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-group-16.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-16.exp b/pengine/test10/ticket-group-16.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-group-16.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-16.scores b/pengine/test10/ticket-group-16.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-16.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-16.xml b/pengine/test10/ticket-group-16.xml new file mode 100644 index 0000000..acfb56c --- /dev/null +++ b/pengine/test10/ticket-group-16.xml @@ -0,0 +1,73 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:43:19 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-17.dot b/pengine/test10/ticket-group-17.dot new file mode 100644 index 0000000..f6e63d3 --- /dev/null +++ b/pengine/test10/ticket-group-17.dot @@ -0,0 +1,17 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group1_stop_0" -> "group1_stopped_0" [ style = bold] +"group1_stop_0" -> "rsc1_stop_0 node2" [ style = bold] +"group1_stop_0" -> "rsc2_stop_0 node2" [ style = bold] +"group1_stop_0" [ style=bold color="green" fontcolor="orange"] +"group1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc2_stop_0 node2" -> "rsc1_stop_0 node2" [ style = bold] +"rsc2_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-17.exp b/pengine/test10/ticket-group-17.exp new file mode 100644 index 0000000..94806e6 --- /dev/null +++ b/pengine/test10/ticket-group-17.exp @@ -0,0 +1,89 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="group1_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="group1:rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc2" long-id="group1:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-17.scores b/pengine/test10/ticket-group-17.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-17.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-17.xml b/pengine/test10/ticket-group-17.xml new file mode 100644 index 0000000..228cabd --- /dev/null +++ b/pengine/test10/ticket-group-17.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:48:34 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-18.dot b/pengine/test10/ticket-group-18.dot new file mode 100644 index 0000000..f6e63d3 --- /dev/null +++ b/pengine/test10/ticket-group-18.dot @@ -0,0 +1,17 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group1_stop_0" -> "group1_stopped_0" [ style = bold] +"group1_stop_0" -> "rsc1_stop_0 node2" [ style = bold] +"group1_stop_0" -> "rsc2_stop_0 node2" [ style = bold] +"group1_stop_0" [ style=bold color="green" fontcolor="orange"] +"group1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc2_stop_0 node2" -> "rsc1_stop_0 node2" [ style = bold] +"rsc2_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-18.exp b/pengine/test10/ticket-group-18.exp new file mode 100644 index 0000000..94806e6 --- /dev/null +++ b/pengine/test10/ticket-group-18.exp @@ -0,0 +1,89 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="group1_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="group1:rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc2" long-id="group1:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-18.scores b/pengine/test10/ticket-group-18.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-18.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-18.xml b/pengine/test10/ticket-group-18.xml new file mode 100644 index 0000000..d02e5ef --- /dev/null +++ b/pengine/test10/ticket-group-18.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:48:34 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-19.dot b/pengine/test10/ticket-group-19.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-group-19.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-19.exp b/pengine/test10/ticket-group-19.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-group-19.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-19.scores b/pengine/test10/ticket-group-19.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-19.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-19.xml b/pengine/test10/ticket-group-19.xml new file mode 100644 index 0000000..557625c --- /dev/null +++ b/pengine/test10/ticket-group-19.xml @@ -0,0 +1,73 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:43:19 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-20.dot b/pengine/test10/ticket-group-20.dot new file mode 100644 index 0000000..f6e63d3 --- /dev/null +++ b/pengine/test10/ticket-group-20.dot @@ -0,0 +1,17 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group1_stop_0" -> "group1_stopped_0" [ style = bold] +"group1_stop_0" -> "rsc1_stop_0 node2" [ style = bold] +"group1_stop_0" -> "rsc2_stop_0 node2" [ style = bold] +"group1_stop_0" [ style=bold color="green" fontcolor="orange"] +"group1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc2_stop_0 node2" -> "rsc1_stop_0 node2" [ style = bold] +"rsc2_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-20.exp b/pengine/test10/ticket-group-20.exp new file mode 100644 index 0000000..94806e6 --- /dev/null +++ b/pengine/test10/ticket-group-20.exp @@ -0,0 +1,89 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="group1_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="group1:rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc2" long-id="group1:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-20.scores b/pengine/test10/ticket-group-20.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-20.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-20.xml b/pengine/test10/ticket-group-20.xml new file mode 100644 index 0000000..51624f2 --- /dev/null +++ b/pengine/test10/ticket-group-20.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:48:48 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-21.dot b/pengine/test10/ticket-group-21.dot new file mode 100644 index 0000000..9ebd732 --- /dev/null +++ b/pengine/test10/ticket-group-21.dot @@ -0,0 +1,28 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group1_stop_0" -> "group1_stopped_0" [ style = bold] +"group1_stop_0" -> "rsc1_stop_0 node2" [ style = bold] +"group1_stop_0" -> "rsc2_stop_0 node2" [ style = bold] +"group1_stop_0" [ style=bold color="green" fontcolor="orange"] +"group1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="orange"] +"rsc2_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc2_stop_0 node2" -> "rsc1_stop_0 node2" [ style = bold] +"rsc2_stop_0 node2" [ style=bold color="green" fontcolor="orange"] +"stonith node2" -> "all_stopped" [ style = bold] +"stonith node2" -> "group1_stop_0" [ style = bold] +"stonith node2" -> "rsc1_stop_0 node2" [ style = bold] +"stonith node2" -> "rsc2_stop_0 node2" [ style = bold] +"stonith node2" -> "stonith_complete" [ style = bold] +"stonith node2" [ style=bold color="green" fontcolor="black"] +"stonith_complete" -> "rsc1_stop_0 node2" [ style = bold] +"stonith_complete" -> "rsc2_stop_0 node2" [ style = bold] +"stonith_complete" [ style=bold color="green" fontcolor="orange"] +"stonith_up" -> "stonith node2" [ style = bold] +"stonith_up" -> "stonith_complete" [ style = bold] +"stonith_up" [ style=bold color="green" fontcolor="orange"] +} diff --git a/pengine/test10/ticket-group-21.exp b/pengine/test10/ticket-group-21.exp new file mode 100644 index 0000000..ffec329 --- /dev/null +++ b/pengine/test10/ticket-group-21.exp @@ -0,0 +1,133 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="13" operation="stopped" operation_key="group1_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="8" operation="stop" operation_key="rsc1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="9" operation="stop" operation_key="rsc2_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="12" operation="stop" operation_key="group1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <crm_event id="16" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="8" operation="stop" operation_key="rsc1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="9" operation="stop" operation_key="rsc2_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="group1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="15" operation="stonith_complete" operation_key="stonith_complete"/> + </trigger> + <trigger> + <crm_event id="16" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="9" operation="stop" operation_key="rsc2_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="group1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="15" operation="stonith_complete" operation_key="stonith_complete"/> + </trigger> + <trigger> + <crm_event id="16" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <crm_event id="16" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_stonith_action="reboot" crm_feature_set="3.0.6"/> + </crm_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="14" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + </inputs> + </synapse> + <synapse id="5"> + <action_set> + <pseudo_event id="15" operation="stonith_complete" operation_key="stonith_complete"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="14" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + <trigger> + <crm_event id="16" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="14" operation="stonith_up" operation_key="stonith_up"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="7" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="8"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="8" operation="stop" operation_key="rsc1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="9" operation="stop" operation_key="rsc2_stop_0"/> + </trigger> + <trigger> + <crm_event id="16" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-21.scores b/pengine/test10/ticket-group-21.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-21.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-21.xml b/pengine/test10/ticket-group-21.xml new file mode 100644 index 0000000..a5627df --- /dev/null +++ b/pengine/test10/ticket-group-21.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:48:48 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-22.dot b/pengine/test10/ticket-group-22.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-group-22.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-22.exp b/pengine/test10/ticket-group-22.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-group-22.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-22.scores b/pengine/test10/ticket-group-22.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-22.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-22.xml b/pengine/test10/ticket-group-22.xml new file mode 100644 index 0000000..9910339 --- /dev/null +++ b/pengine/test10/ticket-group-22.xml @@ -0,0 +1,73 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:43:19 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-23.dot b/pengine/test10/ticket-group-23.dot new file mode 100644 index 0000000..f6e63d3 --- /dev/null +++ b/pengine/test10/ticket-group-23.dot @@ -0,0 +1,17 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group1_stop_0" -> "group1_stopped_0" [ style = bold] +"group1_stop_0" -> "rsc1_stop_0 node2" [ style = bold] +"group1_stop_0" -> "rsc2_stop_0 node2" [ style = bold] +"group1_stop_0" [ style=bold color="green" fontcolor="orange"] +"group1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node2" -> "group1_stopped_0" [ style = bold] +"rsc2_stop_0 node2" -> "rsc1_stop_0 node2" [ style = bold] +"rsc2_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-23.exp b/pengine/test10/ticket-group-23.exp new file mode 100644 index 0000000..94806e6 --- /dev/null +++ b/pengine/test10/ticket-group-23.exp @@ -0,0 +1,89 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="14" operation="stopped" operation_key="group1_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="group1:rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc2" long-id="group1:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="13" operation="stop" operation_key="group1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc2_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-23.scores b/pengine/test10/ticket-group-23.scores new file mode 100644 index 0000000..e5b8167 --- /dev/null +++ b/pengine/test10/ticket-group-23.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: -INFINITY +group_color: rsc1 allocation score on node2: -INFINITY +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-23.xml b/pengine/test10/ticket-group-23.xml new file mode 100644 index 0000000..fd5fa24 --- /dev/null +++ b/pengine/test10/ticket-group-23.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:49:03 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-group-24.dot b/pengine/test10/ticket-group-24.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-group-24.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-group-24.exp b/pengine/test10/ticket-group-24.exp new file mode 100644 index 0000000..446bd6f --- /dev/null +++ b/pengine/test10/ticket-group-24.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-group-24.scores b/pengine/test10/ticket-group-24.scores new file mode 100644 index 0000000..8078251 --- /dev/null +++ b/pengine/test10/ticket-group-24.scores @@ -0,0 +1,13 @@ +Allocation scores: +group_color: group1 allocation score on node1: 0 +group_color: group1 allocation score on node2: 0 +group_color: rsc1 allocation score on node1: 0 +group_color: rsc1 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: 0 +group_color: rsc2 allocation score on node2: 0 +native_color: rsc1 allocation score on node1: 0 +native_color: rsc1 allocation score on node2: 0 +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: 0 +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-group-24.xml b/pengine/test10/ticket-group-24.xml new file mode 100644 index 0000000..b21c49f --- /dev/null +++ b/pengine/test10/ticket-group-24.xml @@ -0,0 +1,77 @@ +<cib epoch="1" num_updates="28" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:49:03 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <group id="group1"> + <meta_attributes id="group1-meta_attributes"> + <nvpair id="group1-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group1-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group1-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc1-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + </resources> + <constraints> + <rsc_ticket id="group1-dep-ticketA" rsc="group1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-13.dot b/pengine/test10/ticket-master-13.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-master-13.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-13.exp b/pengine/test10/ticket-master-13.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-master-13.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-13.scores b/pengine/test10/ticket-master-13.scores new file mode 100644 index 0000000..23d58d8 --- /dev/null +++ b/pengine/test10/ticket-master-13.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on none: 0 +rsc1:1 promotion score on none: 0 diff --git a/pengine/test10/ticket-master-13.xml b/pengine/test10/ticket-master-13.xml new file mode 100644 index 0000000..6972260 --- /dev/null +++ b/pengine/test10/ticket-master-13.xml @@ -0,0 +1,63 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 18:07:46 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-14.dot b/pengine/test10/ticket-master-14.dot new file mode 100644 index 0000000..7d91426 --- /dev/null +++ b/pengine/test10/ticket-master-14.dot @@ -0,0 +1,24 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"ms1_demote_0" -> "ms1_demoted_0" [ style = bold] +"ms1_demote_0" -> "rsc1:1_demote_0 node1" [ style = bold] +"ms1_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms1_demoted_0" -> "ms1_stop_0" [ style = bold] +"ms1_demoted_0" [ style=bold color="green" fontcolor="orange"] +"ms1_stop_0" -> "ms1_stopped_0" [ style = bold] +"ms1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"ms1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"ms1_stop_0" [ style=bold color="green" fontcolor="orange"] +"ms1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "ms1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_demote_0 node1" -> "ms1_demoted_0" [ style = bold] +"rsc1:1_demote_0 node1" -> "rsc1:1_stop_0 node1" [ style = bold] +"rsc1:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "ms1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-14.exp b/pengine/test10/ticket-master-14.exp new file mode 100644 index 0000000..a478fb8 --- /dev/null +++ b/pengine/test10/ticket-master-14.exp @@ -0,0 +1,129 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="7" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="ms1:rsc1:0" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="8" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="16" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3" priority="1000000"> + <action_set> + <pseudo_event id="17" operation="demoted" operation_key="ms1_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="16" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <pseudo_event id="16" operation="demote" operation_key="ms1_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <pseudo_event id="13" operation="stopped" operation_key="ms1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="7" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="17" operation="demoted" operation_key="ms1_demoted_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="7" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="8" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="9"> + <action_set> + <pseudo_event id="1" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="7" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-14.scores b/pengine/test10/ticket-master-14.scores new file mode 100644 index 0000000..23d58d8 --- /dev/null +++ b/pengine/test10/ticket-master-14.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on none: 0 +rsc1:1 promotion score on none: 0 diff --git a/pengine/test10/ticket-master-14.xml b/pengine/test10/ticket-master-14.xml new file mode 100644 index 0000000..77800fa --- /dev/null +++ b/pengine/test10/ticket-master-14.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="25" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 1 22:53:33 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-15.dot b/pengine/test10/ticket-master-15.dot new file mode 100644 index 0000000..7d91426 --- /dev/null +++ b/pengine/test10/ticket-master-15.dot @@ -0,0 +1,24 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"ms1_demote_0" -> "ms1_demoted_0" [ style = bold] +"ms1_demote_0" -> "rsc1:1_demote_0 node1" [ style = bold] +"ms1_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms1_demoted_0" -> "ms1_stop_0" [ style = bold] +"ms1_demoted_0" [ style=bold color="green" fontcolor="orange"] +"ms1_stop_0" -> "ms1_stopped_0" [ style = bold] +"ms1_stop_0" -> "rsc1:0_stop_0 node2" [ style = bold] +"ms1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"ms1_stop_0" [ style=bold color="green" fontcolor="orange"] +"ms1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1:0_stop_0 node2" -> "ms1_stopped_0" [ style = bold] +"rsc1:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_demote_0 node1" -> "ms1_demoted_0" [ style = bold] +"rsc1:1_demote_0 node1" -> "rsc1:1_stop_0 node1" [ style = bold] +"rsc1:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "ms1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-15.exp b/pengine/test10/ticket-master-15.exp new file mode 100644 index 0000000..a478fb8 --- /dev/null +++ b/pengine/test10/ticket-master-15.exp @@ -0,0 +1,129 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="7" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1:0" long-id="ms1:rsc1:0" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <rsc_op id="9" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <rsc_op id="8" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="16" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3" priority="1000000"> + <action_set> + <pseudo_event id="17" operation="demoted" operation_key="ms1_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="16" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <pseudo_event id="16" operation="demote" operation_key="ms1_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <pseudo_event id="13" operation="stopped" operation_key="ms1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="7" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <pseudo_event id="12" operation="stop" operation_key="ms1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="17" operation="demoted" operation_key="ms1_demoted_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="7" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="8" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="9"> + <action_set> + <pseudo_event id="1" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="7" operation="stop" operation_key="rsc1:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="9" operation="stop" operation_key="rsc1:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-15.scores b/pengine/test10/ticket-master-15.scores new file mode 100644 index 0000000..23d58d8 --- /dev/null +++ b/pengine/test10/ticket-master-15.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: -INFINITY +clone_color: rsc1:0 allocation score on node2: -INFINITY +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: -INFINITY +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on none: 0 +rsc1:1 promotion score on none: 0 diff --git a/pengine/test10/ticket-master-15.xml b/pengine/test10/ticket-master-15.xml new file mode 100644 index 0000000..7c47782 --- /dev/null +++ b/pengine/test10/ticket-master-15.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="25" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 1 22:53:33 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-16.dot b/pengine/test10/ticket-master-16.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-master-16.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-16.exp b/pengine/test10/ticket-master-16.exp new file mode 100644 index 0000000..446bd6f --- /dev/null +++ b/pengine/test10/ticket-master-16.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-16.scores b/pengine/test10/ticket-master-16.scores new file mode 100644 index 0000000..3e4f30f --- /dev/null +++ b/pengine/test10/ticket-master-16.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-master-16.xml b/pengine/test10/ticket-master-16.xml new file mode 100644 index 0000000..2e7452f --- /dev/null +++ b/pengine/test10/ticket-master-16.xml @@ -0,0 +1,67 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 17:10:59 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-17.dot b/pengine/test10/ticket-master-17.dot new file mode 100644 index 0000000..4755871 --- /dev/null +++ b/pengine/test10/ticket-master-17.dot @@ -0,0 +1,10 @@ +digraph "g" { +"ms1_demote_0" -> "ms1_demoted_0" [ style = bold] +"ms1_demote_0" -> "rsc1:1_demote_0 node1" [ style = bold] +"ms1_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms1_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_demote_0 node1" -> "ms1_demoted_0" [ style = bold] +"rsc1:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-17.exp b/pengine/test10/ticket-master-17.exp new file mode 100644 index 0000000..c36f0f1 --- /dev/null +++ b/pengine/test10/ticket-master-17.exp @@ -0,0 +1,55 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <pseudo_event id="22" operation="demoted" operation_key="ms1_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-17.scores b/pengine/test10/ticket-master-17.scores new file mode 100644 index 0000000..3e4f30f --- /dev/null +++ b/pengine/test10/ticket-master-17.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-master-17.xml b/pengine/test10/ticket-master-17.xml new file mode 100644 index 0000000..d28bb83 --- /dev/null +++ b/pengine/test10/ticket-master-17.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="27" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 18:23:39 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="4" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-18.dot b/pengine/test10/ticket-master-18.dot new file mode 100644 index 0000000..4755871 --- /dev/null +++ b/pengine/test10/ticket-master-18.dot @@ -0,0 +1,10 @@ +digraph "g" { +"ms1_demote_0" -> "ms1_demoted_0" [ style = bold] +"ms1_demote_0" -> "rsc1:1_demote_0 node1" [ style = bold] +"ms1_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms1_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_demote_0 node1" -> "ms1_demoted_0" [ style = bold] +"rsc1:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-18.exp b/pengine/test10/ticket-master-18.exp new file mode 100644 index 0000000..c36f0f1 --- /dev/null +++ b/pengine/test10/ticket-master-18.exp @@ -0,0 +1,55 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <pseudo_event id="22" operation="demoted" operation_key="ms1_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-18.scores b/pengine/test10/ticket-master-18.scores new file mode 100644 index 0000000..3e4f30f --- /dev/null +++ b/pengine/test10/ticket-master-18.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-master-18.xml b/pengine/test10/ticket-master-18.xml new file mode 100644 index 0000000..e13eab2 --- /dev/null +++ b/pengine/test10/ticket-master-18.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="27" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 18:23:39 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="4" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-19.dot b/pengine/test10/ticket-master-19.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-master-19.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-19.exp b/pengine/test10/ticket-master-19.exp new file mode 100644 index 0000000..446bd6f --- /dev/null +++ b/pengine/test10/ticket-master-19.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-19.scores b/pengine/test10/ticket-master-19.scores new file mode 100644 index 0000000..3e4f30f --- /dev/null +++ b/pengine/test10/ticket-master-19.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-master-19.xml b/pengine/test10/ticket-master-19.xml new file mode 100644 index 0000000..67e41a0 --- /dev/null +++ b/pengine/test10/ticket-master-19.xml @@ -0,0 +1,67 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 17:10:59 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-20.dot b/pengine/test10/ticket-master-20.dot new file mode 100644 index 0000000..4755871 --- /dev/null +++ b/pengine/test10/ticket-master-20.dot @@ -0,0 +1,10 @@ +digraph "g" { +"ms1_demote_0" -> "ms1_demoted_0" [ style = bold] +"ms1_demote_0" -> "rsc1:1_demote_0 node1" [ style = bold] +"ms1_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms1_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_demote_0 node1" -> "ms1_demoted_0" [ style = bold] +"rsc1:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-20.exp b/pengine/test10/ticket-master-20.exp new file mode 100644 index 0000000..c36f0f1 --- /dev/null +++ b/pengine/test10/ticket-master-20.exp @@ -0,0 +1,55 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <pseudo_event id="22" operation="demoted" operation_key="ms1_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-20.scores b/pengine/test10/ticket-master-20.scores new file mode 100644 index 0000000..3e4f30f --- /dev/null +++ b/pengine/test10/ticket-master-20.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-master-20.xml b/pengine/test10/ticket-master-20.xml new file mode 100644 index 0000000..876c15d --- /dev/null +++ b/pengine/test10/ticket-master-20.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="27" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 18:23:39 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="4" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-21.dot b/pengine/test10/ticket-master-21.dot new file mode 100644 index 0000000..587b220 --- /dev/null +++ b/pengine/test10/ticket-master-21.dot @@ -0,0 +1,31 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"ms1_demote_0" -> "ms1_demoted_0" [ style = bold] +"ms1_demote_0" -> "rsc1:1_demote_0 node1" [ style = bold] +"ms1_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms1_demoted_0" -> "ms1_stop_0" [ style = bold] +"ms1_demoted_0" [ style=bold color="green" fontcolor="orange"] +"ms1_stop_0" -> "ms1_stopped_0" [ style = bold] +"ms1_stop_0" -> "rsc1:1_stop_0 node1" [ style = bold] +"ms1_stop_0" [ style=bold color="green" fontcolor="orange"] +"ms1_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_demote_0 node1" -> "ms1_demoted_0" [ style = bold] +"rsc1:1_demote_0 node1" -> "rsc1:1_stop_0 node1" [ style = bold] +"rsc1:1_demote_0 node1" [ style=bold color="green" fontcolor="orange"] +"rsc1:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc1:1_stop_0 node1" -> "ms1_stopped_0" [ style = bold] +"rsc1:1_stop_0 node1" [ style=bold color="green" fontcolor="orange"] +"stonith node1" -> "all_stopped" [ style = bold] +"stonith node1" -> "ms1_stop_0" [ style = bold] +"stonith node1" -> "rsc1:1_demote_0 node1" [ style = bold] +"stonith node1" -> "rsc1:1_stop_0 node1" [ style = bold] +"stonith node1" -> "stonith_complete" [ style = bold] +"stonith node1" [ style=bold color="green" fontcolor="black"] +"stonith_complete" -> "rsc1:1_demote_0 node1" [ style = bold] +"stonith_complete" -> "rsc1:1_stop_0 node1" [ style = bold] +"stonith_complete" [ style=bold color="green" fontcolor="orange"] +"stonith_up" -> "stonith node1" [ style = bold] +"stonith_up" -> "stonith_complete" [ style = bold] +"stonith_up" [ style=bold color="green" fontcolor="orange"] +} diff --git a/pengine/test10/ticket-master-21.exp b/pengine/test10/ticket-master-21.exp new file mode 100644 index 0000000..3e82468 --- /dev/null +++ b/pengine/test10/ticket-master-21.exp @@ -0,0 +1,153 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="12" operation="stop" operation_key="rsc1:1_stop_0"> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="11" operation="demote" operation_key="rsc1:1_demote_0"/> + </trigger> + <trigger> + <pseudo_event id="15" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="22" operation="stonith_complete" operation_key="stonith_complete"/> + </trigger> + <trigger> + <crm_event id="23" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="11" operation="demote" operation_key="rsc1:1_demote_0"> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="19" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + <trigger> + <pseudo_event id="22" operation="stonith_complete" operation_key="stonith_complete"/> + </trigger> + <trigger> + <crm_event id="23" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <pseudo_event id="20" operation="demoted" operation_key="ms1_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="11" operation="demote" operation_key="rsc1:1_demote_0"/> + </trigger> + <trigger> + <pseudo_event id="19" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="19" operation="demote" operation_key="ms1_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <pseudo_event id="16" operation="stopped" operation_key="ms1_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="rsc1:1_stop_0"/> + </trigger> + <trigger> + <pseudo_event id="15" operation="stop" operation_key="ms1_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="5"> + <action_set> + <pseudo_event id="15" operation="stop" operation_key="ms1_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="20" operation="demoted" operation_key="ms1_demoted_0"/> + </trigger> + <trigger> + <crm_event id="23" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <crm_event id="23" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_on_node="node1" CRM_meta_on_node_uuid="node1" CRM_meta_stonith_action="reboot" crm_feature_set="3.0.6"/> + </crm_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="21" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + </inputs> + </synapse> + <synapse id="7"> + <action_set> + <pseudo_event id="22" operation="stonith_complete" operation_key="stonith_complete"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="21" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + <trigger> + <crm_event id="23" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> + <synapse id="8"> + <action_set> + <pseudo_event id="21" operation="stonith_up" operation_key="stonith_up"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="9" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="10"> + <action_set> + <pseudo_event id="3" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="12" operation="stop" operation_key="rsc1:1_stop_0"/> + </trigger> + <trigger> + <crm_event id="23" operation="stonith" operation_key="stonith" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-21.scores b/pengine/test10/ticket-master-21.scores new file mode 100644 index 0000000..fcd7fd9 --- /dev/null +++ b/pengine/test10/ticket-master-21.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: -INFINITY +clone_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc1:0 allocation score on node1: -INFINITY +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: -INFINITY +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on none: 0 diff --git a/pengine/test10/ticket-master-21.xml b/pengine/test10/ticket-master-21.xml new file mode 100644 index 0000000..012c850 --- /dev/null +++ b/pengine/test10/ticket-master-21.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="27" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 18:23:39 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="4" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-22.dot b/pengine/test10/ticket-master-22.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-master-22.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-22.exp b/pengine/test10/ticket-master-22.exp new file mode 100644 index 0000000..446bd6f --- /dev/null +++ b/pengine/test10/ticket-master-22.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-22.scores b/pengine/test10/ticket-master-22.scores new file mode 100644 index 0000000..3e4f30f --- /dev/null +++ b/pengine/test10/ticket-master-22.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-master-22.xml b/pengine/test10/ticket-master-22.xml new file mode 100644 index 0000000..781edf7 --- /dev/null +++ b/pengine/test10/ticket-master-22.xml @@ -0,0 +1,67 @@ +<cib epoch="1" num_updates="26" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 17:10:59 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-23.dot b/pengine/test10/ticket-master-23.dot new file mode 100644 index 0000000..4755871 --- /dev/null +++ b/pengine/test10/ticket-master-23.dot @@ -0,0 +1,10 @@ +digraph "g" { +"ms1_demote_0" -> "ms1_demoted_0" [ style = bold] +"ms1_demote_0" -> "rsc1:1_demote_0 node1" [ style = bold] +"ms1_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms1_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1:1_demote_0 node1" -> "ms1_demoted_0" [ style = bold] +"rsc1:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-23.exp b/pengine/test10/ticket-master-23.exp new file mode 100644 index 0000000..c36f0f1 --- /dev/null +++ b/pengine/test10/ticket-master-23.exp @@ -0,0 +1,55 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc1:1" long-id="ms1:rsc1:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <pseudo_event id="22" operation="demoted" operation_key="ms1_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="demote" operation_key="rsc1:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="21" operation="demote" operation_key="ms1_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-23.scores b/pengine/test10/ticket-master-23.scores new file mode 100644 index 0000000..3e4f30f --- /dev/null +++ b/pengine/test10/ticket-master-23.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-master-23.xml b/pengine/test10/ticket-master-23.xml new file mode 100644 index 0000000..dce636b --- /dev/null +++ b/pengine/test10/ticket-master-23.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="27" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 18:23:39 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="4" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-master-24.dot b/pengine/test10/ticket-master-24.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-master-24.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-master-24.exp b/pengine/test10/ticket-master-24.exp new file mode 100644 index 0000000..446bd6f --- /dev/null +++ b/pengine/test10/ticket-master-24.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-master-24.scores b/pengine/test10/ticket-master-24.scores new file mode 100644 index 0000000..32ce4de --- /dev/null +++ b/pengine/test10/ticket-master-24.scores @@ -0,0 +1,15 @@ +Allocation scores: +clone_color: ms1 allocation score on node1: 0 +clone_color: ms1 allocation score on node2: 0 +clone_color: rsc1:0 allocation score on node1: 0 +clone_color: rsc1:0 allocation score on node2: 1 +clone_color: rsc1:1 allocation score on node1: 1 +clone_color: rsc1:1 allocation score on node2: 0 +native_color: rsc1:0 allocation score on node1: 0 +native_color: rsc1:0 allocation score on node2: 1 +native_color: rsc1:1 allocation score on node1: 1 +native_color: rsc1:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc1:0 promotion score on node2: -1 +rsc1:1 promotion score on node1: INFINITY diff --git a/pengine/test10/ticket-master-24.xml b/pengine/test10/ticket-master-24.xml new file mode 100644 index 0000000..bc469b7 --- /dev/null +++ b/pengine/test10/ticket-master-24.xml @@ -0,0 +1,68 @@ +<cib epoch="1" num_updates="27" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 18:23:39 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <master id="ms1"> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Stateful"> + <operations id="rsc1-operations"> + <op id="rsc1-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc1-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms1" rsc="ms1"> + <rule id="loc-ms1-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms1-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="ms1-dep-ticketA" rsc="ms1" rsc-role="Master" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + <lrm_rsc_op id="rsc1:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;4:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="4" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc1:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-13.dot b/pengine/test10/ticket-primitive-13.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-primitive-13.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-13.exp b/pengine/test10/ticket-primitive-13.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-primitive-13.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-13.scores b/pengine/test10/ticket-primitive-13.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-13.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-13.xml b/pengine/test10/ticket-primitive-13.xml new file mode 100644 index 0000000..3116a31 --- /dev/null +++ b/pengine/test10/ticket-primitive-13.xml @@ -0,0 +1,58 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 14:49:09 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-14.dot b/pengine/test10/ticket-primitive-14.dot new file mode 100644 index 0000000..b574b73 --- /dev/null +++ b/pengine/test10/ticket-primitive-14.dot @@ -0,0 +1,7 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-14.exp b/pengine/test10/ticket-primitive-14.exp new file mode 100644 index 0000000..209e4fd --- /dev/null +++ b/pengine/test10/ticket-primitive-14.exp @@ -0,0 +1,40 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-14.scores b/pengine/test10/ticket-primitive-14.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-14.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-14.xml b/pengine/test10/ticket-primitive-14.xml new file mode 100644 index 0000000..045a84d --- /dev/null +++ b/pengine/test10/ticket-primitive-14.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:14:58 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-15.dot b/pengine/test10/ticket-primitive-15.dot new file mode 100644 index 0000000..b574b73 --- /dev/null +++ b/pengine/test10/ticket-primitive-15.dot @@ -0,0 +1,7 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-15.exp b/pengine/test10/ticket-primitive-15.exp new file mode 100644 index 0000000..209e4fd --- /dev/null +++ b/pengine/test10/ticket-primitive-15.exp @@ -0,0 +1,40 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-15.scores b/pengine/test10/ticket-primitive-15.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-15.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-15.xml b/pengine/test10/ticket-primitive-15.xml new file mode 100644 index 0000000..f289844 --- /dev/null +++ b/pengine/test10/ticket-primitive-15.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:14:58 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="stop"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-16.dot b/pengine/test10/ticket-primitive-16.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-primitive-16.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-16.exp b/pengine/test10/ticket-primitive-16.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-primitive-16.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-16.scores b/pengine/test10/ticket-primitive-16.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-16.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-16.xml b/pengine/test10/ticket-primitive-16.xml new file mode 100644 index 0000000..593c0cb --- /dev/null +++ b/pengine/test10/ticket-primitive-16.xml @@ -0,0 +1,58 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 14:49:09 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-17.dot b/pengine/test10/ticket-primitive-17.dot new file mode 100644 index 0000000..b574b73 --- /dev/null +++ b/pengine/test10/ticket-primitive-17.dot @@ -0,0 +1,7 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-17.exp b/pengine/test10/ticket-primitive-17.exp new file mode 100644 index 0000000..209e4fd --- /dev/null +++ b/pengine/test10/ticket-primitive-17.exp @@ -0,0 +1,40 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-17.scores b/pengine/test10/ticket-primitive-17.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-17.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-17.xml b/pengine/test10/ticket-primitive-17.xml new file mode 100644 index 0000000..7d89152 --- /dev/null +++ b/pengine/test10/ticket-primitive-17.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:14:41 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-18.dot b/pengine/test10/ticket-primitive-18.dot new file mode 100644 index 0000000..b574b73 --- /dev/null +++ b/pengine/test10/ticket-primitive-18.dot @@ -0,0 +1,7 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-18.exp b/pengine/test10/ticket-primitive-18.exp new file mode 100644 index 0000000..209e4fd --- /dev/null +++ b/pengine/test10/ticket-primitive-18.exp @@ -0,0 +1,40 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-18.scores b/pengine/test10/ticket-primitive-18.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-18.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-18.xml b/pengine/test10/ticket-primitive-18.xml new file mode 100644 index 0000000..dba34a2 --- /dev/null +++ b/pengine/test10/ticket-primitive-18.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:14:41 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="demote"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-19.dot b/pengine/test10/ticket-primitive-19.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-primitive-19.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-19.exp b/pengine/test10/ticket-primitive-19.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-primitive-19.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-19.scores b/pengine/test10/ticket-primitive-19.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-19.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-19.xml b/pengine/test10/ticket-primitive-19.xml new file mode 100644 index 0000000..339d76a --- /dev/null +++ b/pengine/test10/ticket-primitive-19.xml @@ -0,0 +1,58 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 14:49:09 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-20.dot b/pengine/test10/ticket-primitive-20.dot new file mode 100644 index 0000000..b574b73 --- /dev/null +++ b/pengine/test10/ticket-primitive-20.dot @@ -0,0 +1,7 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-20.exp b/pengine/test10/ticket-primitive-20.exp new file mode 100644 index 0000000..209e4fd --- /dev/null +++ b/pengine/test10/ticket-primitive-20.exp @@ -0,0 +1,40 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-20.scores b/pengine/test10/ticket-primitive-20.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-20.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-20.xml b/pengine/test10/ticket-primitive-20.xml new file mode 100644 index 0000000..c21a4ab --- /dev/null +++ b/pengine/test10/ticket-primitive-20.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:15:09 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-21.dot b/pengine/test10/ticket-primitive-21.dot new file mode 100644 index 0000000..430f75f --- /dev/null +++ b/pengine/test10/ticket-primitive-21.dot @@ -0,0 +1,15 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="orange"] +"stonith node2" -> "all_stopped" [ style = bold] +"stonith node2" -> "rsc1_stop_0 node2" [ style = bold] +"stonith node2" -> "stonith_complete" [ style = bold] +"stonith node2" [ style=bold color="green" fontcolor="black"] +"stonith_complete" -> "rsc1_stop_0 node2" [ style = bold] +"stonith_complete" [ style=bold color="green" fontcolor="orange"] +"stonith_up" -> "stonith node2" [ style = bold] +"stonith_up" -> "stonith_complete" [ style = bold] +"stonith_up" [ style=bold color="green" fontcolor="orange"] +} diff --git a/pengine/test10/ticket-primitive-21.exp b/pengine/test10/ticket-primitive-21.exp new file mode 100644 index 0000000..424bd27 --- /dev/null +++ b/pengine/test10/ticket-primitive-21.exp @@ -0,0 +1,76 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <pseudo_event id="7" operation="stop" operation_key="rsc1_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="9" operation="stonith_complete" operation_key="stonith_complete"/> + </trigger> + <trigger> + <crm_event id="10" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="1"> + <action_set> + <crm_event id="10" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_on_node="node2" CRM_meta_on_node_uuid="node2" CRM_meta_stonith_action="reboot" crm_feature_set="3.0.6"/> + </crm_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="8" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="9" operation="stonith_complete" operation_key="stonith_complete"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="8" operation="stonith_up" operation_key="stonith_up"/> + </trigger> + <trigger> + <crm_event id="10" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="8" operation="stonith_up" operation_key="stonith_up"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="4" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="5"> + <action_set> + <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <pseudo_event id="7" operation="stop" operation_key="rsc1_stop_0"/> + </trigger> + <trigger> + <crm_event id="10" operation="stonith" operation_key="stonith" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-21.scores b/pengine/test10/ticket-primitive-21.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-21.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-21.xml b/pengine/test10/ticket-primitive-21.xml new file mode 100644 index 0000000..3a9540e --- /dev/null +++ b/pengine/test10/ticket-primitive-21.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:15:09 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="fence"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-22.dot b/pengine/test10/ticket-primitive-22.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-primitive-22.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-22.exp b/pengine/test10/ticket-primitive-22.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-primitive-22.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-22.scores b/pengine/test10/ticket-primitive-22.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-22.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-22.xml b/pengine/test10/ticket-primitive-22.xml new file mode 100644 index 0000000..10d0e39 --- /dev/null +++ b/pengine/test10/ticket-primitive-22.xml @@ -0,0 +1,58 @@ +<cib epoch="1" num_updates="22" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 14:49:09 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-23.dot b/pengine/test10/ticket-primitive-23.dot new file mode 100644 index 0000000..b574b73 --- /dev/null +++ b/pengine/test10/ticket-primitive-23.dot @@ -0,0 +1,7 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-23.exp b/pengine/test10/ticket-primitive-23.exp new file mode 100644 index 0000000..209e4fd --- /dev/null +++ b/pengine/test10/ticket-primitive-23.exp @@ -0,0 +1,40 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="2" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <pseudo_event id="2" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="8" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-23.scores b/pengine/test10/ticket-primitive-23.scores new file mode 100644 index 0000000..ed3f3cd --- /dev/null +++ b/pengine/test10/ticket-primitive-23.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-23.xml b/pengine/test10/ticket-primitive-23.xml new file mode 100644 index 0000000..2b52181 --- /dev/null +++ b/pengine/test10/ticket-primitive-23.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:15:17 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-primitive-24.dot b/pengine/test10/ticket-primitive-24.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-primitive-24.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-primitive-24.exp b/pengine/test10/ticket-primitive-24.exp new file mode 100644 index 0000000..4065c3f --- /dev/null +++ b/pengine/test10/ticket-primitive-24.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="5" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-primitive-24.scores b/pengine/test10/ticket-primitive-24.scores new file mode 100644 index 0000000..5c5889b --- /dev/null +++ b/pengine/test10/ticket-primitive-24.scores @@ -0,0 +1,5 @@ +Allocation scores: +native_color: rsc1 allocation score on node1: 0 +native_color: rsc1 allocation score on node2: 0 +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 diff --git a/pengine/test10/ticket-primitive-24.xml b/pengine/test10/ticket-primitive-24.xml new file mode 100644 index 0000000..1d33903 --- /dev/null +++ b/pengine/test10/ticket-primitive-24.xml @@ -0,0 +1,60 @@ +<cib epoch="1" num_updates="24" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Tue Jun 14 15:15:17 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + </resources> + <constraints> + <rsc_ticket id="rsc1-dep-ticketA" rsc="rsc1" rsc-role="Started" ticket="ticketA" loss-policy="freeze"/> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-rsc-sets-10.dot b/pengine/test10/ticket-rsc-sets-10.dot new file mode 100644 index 0000000..369aacd --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-10.dot @@ -0,0 +1,36 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone4_stop_0" -> "clone4_stopped_0" [ style = bold] +"clone4_stop_0" -> "rsc4:0_stop_0 node2" [ style = bold] +"clone4_stop_0" -> "rsc4:1_stop_0 node1" [ style = bold] +"clone4_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone4_stopped_0" [ style=bold color="green" fontcolor="orange"] +"group2_stop_0" -> "group2_stopped_0" [ style = bold] +"group2_stop_0" -> "rsc2_stop_0 node1" [ style = bold] +"group2_stop_0" -> "rsc3_stop_0 node1" [ style = bold] +"group2_stop_0" [ style=bold color="green" fontcolor="orange"] +"group2_stopped_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demote_0" -> "ms5_demoted_0" [ style = bold] +"ms5_demote_0" -> "rsc5:1_demote_0 node1" [ style = bold] +"ms5_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc2_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc3_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc3_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc3_stop_0 node1" -> "rsc2_stop_0 node1" [ style = bold] +"rsc3_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc4:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc4:0_stop_0 node2" -> "clone4_stopped_0" [ style = bold] +"rsc4:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc4:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc4:1_stop_0 node1" -> "clone4_stopped_0" [ style = bold] +"rsc4:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc5:1_demote_0 node1" -> "ms5_demoted_0" [ style = bold] +"rsc5:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-rsc-sets-10.exp b/pengine/test10/ticket-rsc-sets-10.exp new file mode 100644 index 0000000..b8278ba --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-10.exp @@ -0,0 +1,195 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="18" operation="stopped" operation_key="group2_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc2" long-id="group2:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc3" long-id="group2:rsc3" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="5"> + <action_set> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc4:0" long-id="clone4:rsc4:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc4:1" long-id="clone4:rsc4:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="7" priority="1000000"> + <action_set> + <pseudo_event id="24" operation="stopped" operation_key="clone4_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="8"> + <action_set> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="9"> + <action_set> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc5:1" long-id="ms5:rsc5:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="10" priority="1000000"> + <action_set> + <pseudo_event id="38" operation="demoted" operation_key="ms5_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="11"> + <action_set> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="12" priority="1000000"> + <action_set> + <rsc_op id="9" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="13" priority="1000000"> + <action_set> + <rsc_op id="8" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="14"> + <action_set> + <pseudo_event id="6" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-rsc-sets-10.scores b/pengine/test10/ticket-rsc-sets-10.scores new file mode 100644 index 0000000..4fd8101 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-10.scores @@ -0,0 +1,37 @@ +Allocation scores: +clone_color: clone4 allocation score on node1: 0 +clone_color: clone4 allocation score on node2: 0 +clone_color: ms5 allocation score on node1: 0 +clone_color: ms5 allocation score on node2: 0 +clone_color: rsc4:0 allocation score on node1: -INFINITY +clone_color: rsc4:0 allocation score on node2: -INFINITY +clone_color: rsc4:1 allocation score on node1: -INFINITY +clone_color: rsc4:1 allocation score on node2: -INFINITY +clone_color: rsc5:0 allocation score on node1: 0 +clone_color: rsc5:0 allocation score on node2: 1 +clone_color: rsc5:1 allocation score on node1: 1 +clone_color: rsc5:1 allocation score on node2: 0 +group_color: group2 allocation score on node1: 0 +group_color: group2 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +group_color: rsc3 allocation score on node1: -INFINITY +group_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc3 allocation score on node1: -INFINITY +native_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc4:0 allocation score on node1: -INFINITY +native_color: rsc4:0 allocation score on node2: -INFINITY +native_color: rsc4:1 allocation score on node1: -INFINITY +native_color: rsc4:1 allocation score on node2: -INFINITY +native_color: rsc5:0 allocation score on node1: 0 +native_color: rsc5:0 allocation score on node2: 1 +native_color: rsc5:1 allocation score on node1: 1 +native_color: rsc5:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc5:0 promotion score on node2: -1 +rsc5:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-rsc-sets-10.xml b/pengine/test10/ticket-rsc-sets-10.xml new file mode 100644 index 0000000..606526f --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-10.xml @@ -0,0 +1,143 @@ +<cib epoch="1" num_updates="43" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 8 18:29:49 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + <group id="group2"> + <meta_attributes id="group2-meta_attributes"> + <nvpair id="group2-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group2-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group2-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc3" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc3-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + <clone id="clone4"> + <primitive class="ocf" id="rsc4" provider="pacemaker" type="Dummy"> + <operations id="rsc4-operations"> + <op id="rsc4-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + <master id="ms5"> + <primitive class="ocf" id="rsc5" provider="pacemaker" type="Stateful"> + <operations id="rsc5-operations"> + <op id="rsc5-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc5-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms5" rsc="ms5"> + <rule id="loc-ms5-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms5-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="resources-dep-ticketA" ticket="ticketA" loss-policy="demote"> + <resource_set id="resources-dep-ticketA-0" role="Started"> + <resource_ref id="rsc1"/> + <resource_ref id="group2"/> + <resource_ref id="clone4"/> + </resource_set> + <resource_set id="resources-dep-ticketA-1" role="Master"> + <resource_ref id="ms5"/> + </resource_set> + </rsc_ticket> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc5:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-rsc-sets-11.dot b/pengine/test10/ticket-rsc-sets-11.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-11.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-rsc-sets-11.exp b/pengine/test10/ticket-rsc-sets-11.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-11.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-rsc-sets-11.scores b/pengine/test10/ticket-rsc-sets-11.scores new file mode 100644 index 0000000..4fd8101 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-11.scores @@ -0,0 +1,37 @@ +Allocation scores: +clone_color: clone4 allocation score on node1: 0 +clone_color: clone4 allocation score on node2: 0 +clone_color: ms5 allocation score on node1: 0 +clone_color: ms5 allocation score on node2: 0 +clone_color: rsc4:0 allocation score on node1: -INFINITY +clone_color: rsc4:0 allocation score on node2: -INFINITY +clone_color: rsc4:1 allocation score on node1: -INFINITY +clone_color: rsc4:1 allocation score on node2: -INFINITY +clone_color: rsc5:0 allocation score on node1: 0 +clone_color: rsc5:0 allocation score on node2: 1 +clone_color: rsc5:1 allocation score on node1: 1 +clone_color: rsc5:1 allocation score on node2: 0 +group_color: group2 allocation score on node1: 0 +group_color: group2 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +group_color: rsc3 allocation score on node1: -INFINITY +group_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc3 allocation score on node1: -INFINITY +native_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc4:0 allocation score on node1: -INFINITY +native_color: rsc4:0 allocation score on node2: -INFINITY +native_color: rsc4:1 allocation score on node1: -INFINITY +native_color: rsc4:1 allocation score on node2: -INFINITY +native_color: rsc5:0 allocation score on node1: 0 +native_color: rsc5:0 allocation score on node2: 1 +native_color: rsc5:1 allocation score on node1: 1 +native_color: rsc5:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc5:0 promotion score on node2: -1 +rsc5:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-rsc-sets-11.xml b/pengine/test10/ticket-rsc-sets-11.xml new file mode 100644 index 0000000..96f4ad3 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-11.xml @@ -0,0 +1,134 @@ +<cib epoch="1" num_updates="32" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 8 18:38:20 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + <group id="group2"> + <meta_attributes id="group2-meta_attributes"> + <nvpair id="group2-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group2-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group2-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc3" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc3-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + <clone id="clone4"> + <primitive class="ocf" id="rsc4" provider="pacemaker" type="Dummy"> + <operations id="rsc4-operations"> + <op id="rsc4-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + <master id="ms5"> + <primitive class="ocf" id="rsc5" provider="pacemaker" type="Stateful"> + <operations id="rsc5-operations"> + <op id="rsc5-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc5-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms5" rsc="ms5"> + <rule id="loc-ms5-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms5-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="resources-dep-ticketA" ticket="ticketA" loss-policy="stop"> + <resource_set id="resources-dep-ticketA-0" role="Started"> + <resource_ref id="rsc1"/> + <resource_ref id="group2"/> + </resource_set> + </rsc_ticket> + <rsc_ticket id="resources-dep-ticketB" ticket="ticketB" loss-policy="demote"> + <resource_set id="resources-dep-ticketB-0" role="Started"> + <resource_ref id="clone4"/> + </resource_set> + <resource_set id="resources-dep-ticketB-1" role="Master"> + <resource_ref id="ms5"/> + </resource_set> + </rsc_ticket> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-rsc-sets-12.dot b/pengine/test10/ticket-rsc-sets-12.dot new file mode 100644 index 0000000..b5a50db --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-12.dot @@ -0,0 +1,19 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"group2_stop_0" -> "group2_stopped_0" [ style = bold] +"group2_stop_0" -> "rsc2_stop_0 node1" [ style = bold] +"group2_stop_0" -> "rsc3_stop_0 node1" [ style = bold] +"group2_stop_0" [ style=bold color="green" fontcolor="orange"] +"group2_stopped_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc2_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc3_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc3_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc3_stop_0 node1" -> "rsc2_stop_0 node1" [ style = bold] +"rsc3_stop_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-rsc-sets-12.exp b/pengine/test10/ticket-rsc-sets-12.exp new file mode 100644 index 0000000..68049cf --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-12.exp @@ -0,0 +1,101 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="10" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="16" operation="stopped" operation_key="group2_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="11" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="12" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="15" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="15" operation="stop" operation_key="group2_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="11" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc2" long-id="group2:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="12" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="15" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <rsc_op id="12" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc3" long-id="group2:rsc3" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="15" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="5" priority="1000000"> + <action_set> + <rsc_op id="7" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="6" priority="1000000"> + <action_set> + <rsc_op id="6" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="7"> + <action_set> + <pseudo_event id="4" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="10" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="11" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="12" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-rsc-sets-12.scores b/pengine/test10/ticket-rsc-sets-12.scores new file mode 100644 index 0000000..4fd8101 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-12.scores @@ -0,0 +1,37 @@ +Allocation scores: +clone_color: clone4 allocation score on node1: 0 +clone_color: clone4 allocation score on node2: 0 +clone_color: ms5 allocation score on node1: 0 +clone_color: ms5 allocation score on node2: 0 +clone_color: rsc4:0 allocation score on node1: -INFINITY +clone_color: rsc4:0 allocation score on node2: -INFINITY +clone_color: rsc4:1 allocation score on node1: -INFINITY +clone_color: rsc4:1 allocation score on node2: -INFINITY +clone_color: rsc5:0 allocation score on node1: 0 +clone_color: rsc5:0 allocation score on node2: 1 +clone_color: rsc5:1 allocation score on node1: 1 +clone_color: rsc5:1 allocation score on node2: 0 +group_color: group2 allocation score on node1: 0 +group_color: group2 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +group_color: rsc3 allocation score on node1: -INFINITY +group_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc3 allocation score on node1: -INFINITY +native_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc4:0 allocation score on node1: -INFINITY +native_color: rsc4:0 allocation score on node2: -INFINITY +native_color: rsc4:1 allocation score on node1: -INFINITY +native_color: rsc4:1 allocation score on node2: -INFINITY +native_color: rsc5:0 allocation score on node1: 0 +native_color: rsc5:0 allocation score on node2: 1 +native_color: rsc5:1 allocation score on node1: 1 +native_color: rsc5:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc5:0 promotion score on node2: -1 +rsc5:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-rsc-sets-12.xml b/pengine/test10/ticket-rsc-sets-12.xml new file mode 100644 index 0000000..4aea483 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-12.xml @@ -0,0 +1,141 @@ +<cib epoch="1" num_updates="38" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 8 18:41:23 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + <group id="group2"> + <meta_attributes id="group2-meta_attributes"> + <nvpair id="group2-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group2-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group2-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc3" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc3-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + <clone id="clone4"> + <primitive class="ocf" id="rsc4" provider="pacemaker" type="Dummy"> + <operations id="rsc4-operations"> + <op id="rsc4-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + <master id="ms5"> + <primitive class="ocf" id="rsc5" provider="pacemaker" type="Stateful"> + <operations id="rsc5-operations"> + <op id="rsc5-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc5-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms5" rsc="ms5"> + <rule id="loc-ms5-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms5-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="resources-dep-ticketA" ticket="ticketA" loss-policy="stop"> + <resource_set id="resources-dep-ticketA-0" role="Started"> + <resource_ref id="rsc1"/> + <resource_ref id="group2"/> + </resource_set> + </rsc_ticket> + <rsc_ticket id="resources-dep-ticketB" ticket="ticketB" loss-policy="demote"> + <resource_set id="resources-dep-ticketB-0" role="Started"> + <resource_ref id="clone4"/> + </resource_set> + <resource_set id="resources-dep-ticketB-1" role="Master"> + <resource_ref id="ms5"/> + </resource_set> + </rsc_ticket> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + <ticket_state id="ticketB" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-rsc-sets-13.dot b/pengine/test10/ticket-rsc-sets-13.dot new file mode 100644 index 0000000..369aacd --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-13.dot @@ -0,0 +1,36 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone4_stop_0" -> "clone4_stopped_0" [ style = bold] +"clone4_stop_0" -> "rsc4:0_stop_0 node2" [ style = bold] +"clone4_stop_0" -> "rsc4:1_stop_0 node1" [ style = bold] +"clone4_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone4_stopped_0" [ style=bold color="green" fontcolor="orange"] +"group2_stop_0" -> "group2_stopped_0" [ style = bold] +"group2_stop_0" -> "rsc2_stop_0 node1" [ style = bold] +"group2_stop_0" -> "rsc3_stop_0 node1" [ style = bold] +"group2_stop_0" [ style=bold color="green" fontcolor="orange"] +"group2_stopped_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demote_0" -> "ms5_demoted_0" [ style = bold] +"ms5_demote_0" -> "rsc5:1_demote_0 node1" [ style = bold] +"ms5_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc2_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc3_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc3_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc3_stop_0 node1" -> "rsc2_stop_0 node1" [ style = bold] +"rsc3_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc4:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc4:0_stop_0 node2" -> "clone4_stopped_0" [ style = bold] +"rsc4:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc4:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc4:1_stop_0 node1" -> "clone4_stopped_0" [ style = bold] +"rsc4:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc5:1_demote_0 node1" -> "ms5_demoted_0" [ style = bold] +"rsc5:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-rsc-sets-13.exp b/pengine/test10/ticket-rsc-sets-13.exp new file mode 100644 index 0000000..b8278ba --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-13.exp @@ -0,0 +1,195 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="18" operation="stopped" operation_key="group2_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc2" long-id="group2:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc3" long-id="group2:rsc3" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="5"> + <action_set> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc4:0" long-id="clone4:rsc4:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc4:1" long-id="clone4:rsc4:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="7" priority="1000000"> + <action_set> + <pseudo_event id="24" operation="stopped" operation_key="clone4_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="8"> + <action_set> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="9"> + <action_set> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc5:1" long-id="ms5:rsc5:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="10" priority="1000000"> + <action_set> + <pseudo_event id="38" operation="demoted" operation_key="ms5_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="11"> + <action_set> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="12" priority="1000000"> + <action_set> + <rsc_op id="9" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="13" priority="1000000"> + <action_set> + <rsc_op id="8" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="14"> + <action_set> + <pseudo_event id="6" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-rsc-sets-13.scores b/pengine/test10/ticket-rsc-sets-13.scores new file mode 100644 index 0000000..4fd8101 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-13.scores @@ -0,0 +1,37 @@ +Allocation scores: +clone_color: clone4 allocation score on node1: 0 +clone_color: clone4 allocation score on node2: 0 +clone_color: ms5 allocation score on node1: 0 +clone_color: ms5 allocation score on node2: 0 +clone_color: rsc4:0 allocation score on node1: -INFINITY +clone_color: rsc4:0 allocation score on node2: -INFINITY +clone_color: rsc4:1 allocation score on node1: -INFINITY +clone_color: rsc4:1 allocation score on node2: -INFINITY +clone_color: rsc5:0 allocation score on node1: 0 +clone_color: rsc5:0 allocation score on node2: 1 +clone_color: rsc5:1 allocation score on node1: 1 +clone_color: rsc5:1 allocation score on node2: 0 +group_color: group2 allocation score on node1: 0 +group_color: group2 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +group_color: rsc3 allocation score on node1: -INFINITY +group_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc3 allocation score on node1: -INFINITY +native_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc4:0 allocation score on node1: -INFINITY +native_color: rsc4:0 allocation score on node2: -INFINITY +native_color: rsc4:1 allocation score on node1: -INFINITY +native_color: rsc4:1 allocation score on node2: -INFINITY +native_color: rsc5:0 allocation score on node1: 0 +native_color: rsc5:0 allocation score on node2: 1 +native_color: rsc5:1 allocation score on node1: 1 +native_color: rsc5:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc5:0 promotion score on node2: -1 +rsc5:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-rsc-sets-13.xml b/pengine/test10/ticket-rsc-sets-13.xml new file mode 100644 index 0000000..c8aecd1 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-13.xml @@ -0,0 +1,148 @@ +<cib epoch="1" num_updates="43" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 8 18:42:48 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + <group id="group2"> + <meta_attributes id="group2-meta_attributes"> + <nvpair id="group2-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group2-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group2-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc3" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc3-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + <clone id="clone4"> + <primitive class="ocf" id="rsc4" provider="pacemaker" type="Dummy"> + <operations id="rsc4-operations"> + <op id="rsc4-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + <master id="ms5"> + <primitive class="ocf" id="rsc5" provider="pacemaker" type="Stateful"> + <operations id="rsc5-operations"> + <op id="rsc5-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc5-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms5" rsc="ms5"> + <rule id="loc-ms5-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms5-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="resources-dep-ticketA" ticket="ticketA" loss-policy="stop"> + <resource_set id="resources-dep-ticketA-0" role="Started"> + <resource_ref id="rsc1"/> + <resource_ref id="group2"/> + </resource_set> + </rsc_ticket> + <rsc_ticket id="resources-dep-ticketB" ticket="ticketB" loss-policy="demote"> + <resource_set id="resources-dep-ticketB-0" role="Started"> + <resource_ref id="clone4"/> + </resource_set> + <resource_set id="resources-dep-ticketB-1" role="Master"> + <resource_ref id="ms5"/> + </resource_set> + </rsc_ticket> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + <ticket_state id="ticketB" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc5:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-rsc-sets-14.dot b/pengine/test10/ticket-rsc-sets-14.dot new file mode 100644 index 0000000..369aacd --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-14.dot @@ -0,0 +1,36 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone4_stop_0" -> "clone4_stopped_0" [ style = bold] +"clone4_stop_0" -> "rsc4:0_stop_0 node2" [ style = bold] +"clone4_stop_0" -> "rsc4:1_stop_0 node1" [ style = bold] +"clone4_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone4_stopped_0" [ style=bold color="green" fontcolor="orange"] +"group2_stop_0" -> "group2_stopped_0" [ style = bold] +"group2_stop_0" -> "rsc2_stop_0 node1" [ style = bold] +"group2_stop_0" -> "rsc3_stop_0 node1" [ style = bold] +"group2_stop_0" [ style=bold color="green" fontcolor="orange"] +"group2_stopped_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demote_0" -> "ms5_demoted_0" [ style = bold] +"ms5_demote_0" -> "rsc5:1_demote_0 node1" [ style = bold] +"ms5_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc2_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc3_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc3_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc3_stop_0 node1" -> "rsc2_stop_0 node1" [ style = bold] +"rsc3_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc4:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc4:0_stop_0 node2" -> "clone4_stopped_0" [ style = bold] +"rsc4:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc4:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc4:1_stop_0 node1" -> "clone4_stopped_0" [ style = bold] +"rsc4:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc5:1_demote_0 node1" -> "ms5_demoted_0" [ style = bold] +"rsc5:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-rsc-sets-14.exp b/pengine/test10/ticket-rsc-sets-14.exp new file mode 100644 index 0000000..b8278ba --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-14.exp @@ -0,0 +1,195 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="18" operation="stopped" operation_key="group2_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc2" long-id="group2:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc3" long-id="group2:rsc3" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="5"> + <action_set> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc4:0" long-id="clone4:rsc4:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc4:1" long-id="clone4:rsc4:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="7" priority="1000000"> + <action_set> + <pseudo_event id="24" operation="stopped" operation_key="clone4_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="8"> + <action_set> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="9"> + <action_set> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc5:1" long-id="ms5:rsc5:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="10" priority="1000000"> + <action_set> + <pseudo_event id="38" operation="demoted" operation_key="ms5_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="11"> + <action_set> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="12" priority="1000000"> + <action_set> + <rsc_op id="9" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="13" priority="1000000"> + <action_set> + <rsc_op id="8" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="14"> + <action_set> + <pseudo_event id="6" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-rsc-sets-14.scores b/pengine/test10/ticket-rsc-sets-14.scores new file mode 100644 index 0000000..4fd8101 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-14.scores @@ -0,0 +1,37 @@ +Allocation scores: +clone_color: clone4 allocation score on node1: 0 +clone_color: clone4 allocation score on node2: 0 +clone_color: ms5 allocation score on node1: 0 +clone_color: ms5 allocation score on node2: 0 +clone_color: rsc4:0 allocation score on node1: -INFINITY +clone_color: rsc4:0 allocation score on node2: -INFINITY +clone_color: rsc4:1 allocation score on node1: -INFINITY +clone_color: rsc4:1 allocation score on node2: -INFINITY +clone_color: rsc5:0 allocation score on node1: 0 +clone_color: rsc5:0 allocation score on node2: 1 +clone_color: rsc5:1 allocation score on node1: 1 +clone_color: rsc5:1 allocation score on node2: 0 +group_color: group2 allocation score on node1: 0 +group_color: group2 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +group_color: rsc3 allocation score on node1: -INFINITY +group_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc3 allocation score on node1: -INFINITY +native_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc4:0 allocation score on node1: -INFINITY +native_color: rsc4:0 allocation score on node2: -INFINITY +native_color: rsc4:1 allocation score on node1: -INFINITY +native_color: rsc4:1 allocation score on node2: -INFINITY +native_color: rsc5:0 allocation score on node1: 0 +native_color: rsc5:0 allocation score on node2: 1 +native_color: rsc5:1 allocation score on node1: 1 +native_color: rsc5:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc5:0 promotion score on node2: -1 +rsc5:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-rsc-sets-14.xml b/pengine/test10/ticket-rsc-sets-14.xml new file mode 100644 index 0000000..0ce0959 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-14.xml @@ -0,0 +1,148 @@ +<cib epoch="1" num_updates="43" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 8 18:42:48 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + <group id="group2"> + <meta_attributes id="group2-meta_attributes"> + <nvpair id="group2-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group2-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group2-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc3" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc3-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + <clone id="clone4"> + <primitive class="ocf" id="rsc4" provider="pacemaker" type="Dummy"> + <operations id="rsc4-operations"> + <op id="rsc4-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + <master id="ms5"> + <primitive class="ocf" id="rsc5" provider="pacemaker" type="Stateful"> + <operations id="rsc5-operations"> + <op id="rsc5-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc5-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms5" rsc="ms5"> + <rule id="loc-ms5-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms5-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="resources-dep-ticketA" ticket="ticketA" loss-policy="stop"> + <resource_set id="resources-dep-ticketA-0" role="Started"> + <resource_ref id="rsc1"/> + <resource_ref id="group2"/> + </resource_set> + </rsc_ticket> + <rsc_ticket id="resources-dep-ticketB" ticket="ticketB" loss-policy="demote"> + <resource_set id="resources-dep-ticketB-0" role="Started"> + <resource_ref id="clone4"/> + </resource_set> + <resource_set id="resources-dep-ticketB-1" role="Master"> + <resource_ref id="ms5"/> + </resource_set> + </rsc_ticket> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="false" standby="true"/> + <ticket_state id="ticketB" granted="false" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc5:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-rsc-sets-8.dot b/pengine/test10/ticket-rsc-sets-8.dot new file mode 100644 index 0000000..7b4328b --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-8.dot @@ -0,0 +1,4 @@ +digraph "g" { +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-rsc-sets-8.exp b/pengine/test10/ticket-rsc-sets-8.exp new file mode 100644 index 0000000..8bc8c88 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-8.exp @@ -0,0 +1,19 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0" priority="1000000"> + <action_set> + <rsc_op id="4" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1" priority="1000000"> + <action_set> + <rsc_op id="3" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-rsc-sets-8.scores b/pengine/test10/ticket-rsc-sets-8.scores new file mode 100644 index 0000000..4fd8101 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-8.scores @@ -0,0 +1,37 @@ +Allocation scores: +clone_color: clone4 allocation score on node1: 0 +clone_color: clone4 allocation score on node2: 0 +clone_color: ms5 allocation score on node1: 0 +clone_color: ms5 allocation score on node2: 0 +clone_color: rsc4:0 allocation score on node1: -INFINITY +clone_color: rsc4:0 allocation score on node2: -INFINITY +clone_color: rsc4:1 allocation score on node1: -INFINITY +clone_color: rsc4:1 allocation score on node2: -INFINITY +clone_color: rsc5:0 allocation score on node1: 0 +clone_color: rsc5:0 allocation score on node2: 1 +clone_color: rsc5:1 allocation score on node1: 1 +clone_color: rsc5:1 allocation score on node2: 0 +group_color: group2 allocation score on node1: 0 +group_color: group2 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +group_color: rsc3 allocation score on node1: -INFINITY +group_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc3 allocation score on node1: -INFINITY +native_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc4:0 allocation score on node1: -INFINITY +native_color: rsc4:0 allocation score on node2: -INFINITY +native_color: rsc4:1 allocation score on node1: -INFINITY +native_color: rsc4:1 allocation score on node2: -INFINITY +native_color: rsc5:0 allocation score on node1: 0 +native_color: rsc5:0 allocation score on node2: 1 +native_color: rsc5:1 allocation score on node1: 1 +native_color: rsc5:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc5:0 promotion score on node2: -1 +rsc5:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-rsc-sets-8.xml b/pengine/test10/ticket-rsc-sets-8.xml new file mode 100644 index 0000000..e358427 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-8.xml @@ -0,0 +1,130 @@ +<cib epoch="1" num_updates="32" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 8 18:26:21 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + <group id="group2"> + <meta_attributes id="group2-meta_attributes"> + <nvpair id="group2-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group2-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group2-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc3" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc3-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + <clone id="clone4"> + <primitive class="ocf" id="rsc4" provider="pacemaker" type="Dummy"> + <operations id="rsc4-operations"> + <op id="rsc4-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + <master id="ms5"> + <primitive class="ocf" id="rsc5" provider="pacemaker" type="Stateful"> + <operations id="rsc5-operations"> + <op id="rsc5-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc5-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms5" rsc="ms5"> + <rule id="loc-ms5-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms5-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="resources-dep-ticketA" ticket="ticketA" loss-policy="demote"> + <resource_set id="resources-dep-ticketA-0" role="Started"> + <resource_ref id="rsc1"/> + <resource_ref id="group2"/> + <resource_ref id="clone4"/> + </resource_set> + <resource_set id="resources-dep-ticketA-1" role="Master"> + <resource_ref id="ms5"/> + </resource_set> + </rsc_ticket> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib> diff --git a/pengine/test10/ticket-rsc-sets-9.dot b/pengine/test10/ticket-rsc-sets-9.dot new file mode 100644 index 0000000..369aacd --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-9.dot @@ -0,0 +1,36 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"clone4_stop_0" -> "clone4_stopped_0" [ style = bold] +"clone4_stop_0" -> "rsc4:0_stop_0 node2" [ style = bold] +"clone4_stop_0" -> "rsc4:1_stop_0 node1" [ style = bold] +"clone4_stop_0" [ style=bold color="green" fontcolor="orange"] +"clone4_stopped_0" [ style=bold color="green" fontcolor="orange"] +"group2_stop_0" -> "group2_stopped_0" [ style = bold] +"group2_stop_0" -> "rsc2_stop_0 node1" [ style = bold] +"group2_stop_0" -> "rsc3_stop_0 node1" [ style = bold] +"group2_stop_0" [ style=bold color="green" fontcolor="orange"] +"group2_stopped_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demote_0" -> "ms5_demoted_0" [ style = bold] +"ms5_demote_0" -> "rsc5:1_demote_0 node1" [ style = bold] +"ms5_demote_0" [ style=bold color="green" fontcolor="orange"] +"ms5_demoted_0" [ style=bold color="green" fontcolor="orange"] +"probe_complete node1" [ style=bold color="green" fontcolor="black"] +"probe_complete node2" [ style=bold color="green" fontcolor="black"] +"rsc1_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc1_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc2_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc2_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc2_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc3_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc3_stop_0 node1" -> "group2_stopped_0" [ style = bold] +"rsc3_stop_0 node1" -> "rsc2_stop_0 node1" [ style = bold] +"rsc3_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc4:0_stop_0 node2" -> "all_stopped" [ style = bold] +"rsc4:0_stop_0 node2" -> "clone4_stopped_0" [ style = bold] +"rsc4:0_stop_0 node2" [ style=bold color="green" fontcolor="black"] +"rsc4:1_stop_0 node1" -> "all_stopped" [ style = bold] +"rsc4:1_stop_0 node1" -> "clone4_stopped_0" [ style = bold] +"rsc4:1_stop_0 node1" [ style=bold color="green" fontcolor="black"] +"rsc5:1_demote_0 node1" -> "ms5_demoted_0" [ style = bold] +"rsc5:1_demote_0 node1" [ style=bold color="green" fontcolor="black"] +} diff --git a/pengine/test10/ticket-rsc-sets-9.exp b/pengine/test10/ticket-rsc-sets-9.exp new file mode 100644 index 0000000..b8278ba --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-9.exp @@ -0,0 +1,195 @@ +<transition_graph cluster-delay="60s" stonith-timeout="60s" failed-stop-offset="INFINITY" failed-start-offset="INFINITY" batch-limit="30" transition_id="0"> + <synapse id="0"> + <action_set> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc1" long-id="rsc1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="1"> + <action_set> + <pseudo_event id="18" operation="stopped" operation_key="group2_stopped_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="2"> + <action_set> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="3"> + <action_set> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc2" long-id="group2:rsc2" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="4"> + <action_set> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc3" long-id="group2:rsc3" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="17" operation="stop" operation_key="group2_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="5"> + <action_set> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"> + <primitive id="rsc4:0" long-id="clone4:rsc4:0" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="0" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="6"> + <action_set> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc4:1" long-id="clone4:rsc4:1" class="ocf" provider="pacemaker" type="Dummy"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="7" priority="1000000"> + <action_set> + <pseudo_event id="24" operation="stopped" operation_key="clone4_stopped_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="8"> + <action_set> + <pseudo_event id="23" operation="stop" operation_key="clone4_stop_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="9"> + <action_set> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"> + <primitive id="rsc5:1" long-id="ms5:rsc5:1" class="ocf" provider="pacemaker" type="Stateful"/> + <attributes CRM_meta_clone="1" CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="10" priority="1000000"> + <action_set> + <pseudo_event id="38" operation="demoted" operation_key="ms5_demoted_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="30" operation="demote" operation_key="rsc5:1_demote_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"/> + </trigger> + </inputs> + </synapse> + <synapse id="11"> + <action_set> + <pseudo_event id="37" operation="demote" operation_key="ms5_demote_0"> + <attributes CRM_meta_clone_max="2" CRM_meta_clone_node_max="1" CRM_meta_globally_unique="false" CRM_meta_master_max="1" CRM_meta_master_node_max="1" CRM_meta_notify="false" CRM_meta_timeout="20000" crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs/> + </synapse> + <synapse id="12" priority="1000000"> + <action_set> + <rsc_op id="9" operation="probe_complete" operation_key="probe_complete" on_node="node2" on_node_uuid="node2"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="13" priority="1000000"> + <action_set> + <rsc_op id="8" operation="probe_complete" operation_key="probe_complete" on_node="node1" on_node_uuid="node1"> + <attributes CRM_meta_op_no_wait="true" crm_feature_set="3.0.6"/> + </rsc_op> + </action_set> + <inputs/> + </synapse> + <synapse id="14"> + <action_set> + <pseudo_event id="6" operation="all_stopped" operation_key="all_stopped"> + <attributes crm_feature_set="3.0.6"/> + </pseudo_event> + </action_set> + <inputs> + <trigger> + <rsc_op id="12" operation="stop" operation_key="rsc1_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="13" operation="stop" operation_key="rsc2_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="14" operation="stop" operation_key="rsc3_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + <trigger> + <rsc_op id="19" operation="stop" operation_key="rsc4:0_stop_0" on_node="node2" on_node_uuid="node2"/> + </trigger> + <trigger> + <rsc_op id="20" operation="stop" operation_key="rsc4:1_stop_0" on_node="node1" on_node_uuid="node1"/> + </trigger> + </inputs> + </synapse> +</transition_graph> + diff --git a/pengine/test10/ticket-rsc-sets-9.scores b/pengine/test10/ticket-rsc-sets-9.scores new file mode 100644 index 0000000..4fd8101 --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-9.scores @@ -0,0 +1,37 @@ +Allocation scores: +clone_color: clone4 allocation score on node1: 0 +clone_color: clone4 allocation score on node2: 0 +clone_color: ms5 allocation score on node1: 0 +clone_color: ms5 allocation score on node2: 0 +clone_color: rsc4:0 allocation score on node1: -INFINITY +clone_color: rsc4:0 allocation score on node2: -INFINITY +clone_color: rsc4:1 allocation score on node1: -INFINITY +clone_color: rsc4:1 allocation score on node2: -INFINITY +clone_color: rsc5:0 allocation score on node1: 0 +clone_color: rsc5:0 allocation score on node2: 1 +clone_color: rsc5:1 allocation score on node1: 1 +clone_color: rsc5:1 allocation score on node2: 0 +group_color: group2 allocation score on node1: 0 +group_color: group2 allocation score on node2: 0 +group_color: rsc2 allocation score on node1: -INFINITY +group_color: rsc2 allocation score on node2: -INFINITY +group_color: rsc3 allocation score on node1: -INFINITY +group_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc1 allocation score on node1: -INFINITY +native_color: rsc1 allocation score on node2: -INFINITY +native_color: rsc2 allocation score on node1: -INFINITY +native_color: rsc2 allocation score on node2: -INFINITY +native_color: rsc3 allocation score on node1: -INFINITY +native_color: rsc3 allocation score on node2: -INFINITY +native_color: rsc4:0 allocation score on node1: -INFINITY +native_color: rsc4:0 allocation score on node2: -INFINITY +native_color: rsc4:1 allocation score on node1: -INFINITY +native_color: rsc4:1 allocation score on node2: -INFINITY +native_color: rsc5:0 allocation score on node1: 0 +native_color: rsc5:0 allocation score on node2: 1 +native_color: rsc5:1 allocation score on node1: 1 +native_color: rsc5:1 allocation score on node2: -INFINITY +native_color: rsc_stonith allocation score on node1: 0 +native_color: rsc_stonith allocation score on node2: 0 +rsc5:0 promotion score on node2: -1 +rsc5:1 promotion score on node1: -INFINITY diff --git a/pengine/test10/ticket-rsc-sets-9.xml b/pengine/test10/ticket-rsc-sets-9.xml new file mode 100644 index 0000000..f3a350d --- /dev/null +++ b/pengine/test10/ticket-rsc-sets-9.xml @@ -0,0 +1,143 @@ +<cib epoch="1" num_updates="43" admin_epoch="0" validate-with="pacemaker-1.1" cib-last-written="Fri Jul 8 18:29:49 2011" have-quorum="1"> + <configuration> + <crm_config> + <cluster_property_set id="cib-bootstrap-options"> + <nvpair id="cib-bootstrap-options-stonith-enabled" name="stonith-enabled" value="true"/> + <nvpair id="cib-bootstrap-options-no-quorum-policy" name="no-quorum-policy" value="ignore"/> + </cluster_property_set> + </crm_config> + <nodes> + <node id="node1" type="normal" uname="node1"/> + <node id="node2" type="normal" uname="node2"/> + </nodes> + <resources> + <primitive class="stonith" id="rsc_stonith" type="null"/> + <primitive class="ocf" id="rsc1" provider="pacemaker" type="Dummy"> + <meta_attributes id="rsc1-meta_attributes"> + <nvpair id="rsc1-meta_attributes-target-role" name="target-role" value="Started"/> + </meta_attributes> + <operations> + <op id="rsc1-monitor-10" interval="10" name="monitor"/> + </operations> + </primitive> + <group id="group2"> + <meta_attributes id="group2-meta_attributes"> + <nvpair id="group2-meta_attributes-target-role" name="target-role" value="Started"/> + <nvpair id="group2-meta_attributes-collocated" name="collocated" value="true"/> + <nvpair id="group2-meta_attributes-ordered" name="ordered" value="true"/> + </meta_attributes> + <primitive class="ocf" id="rsc2" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc2-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + <primitive class="ocf" id="rsc3" provider="pacemaker" type="Dummy"> + <operations> + <op id="rsc3-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </group> + <clone id="clone4"> + <primitive class="ocf" id="rsc4" provider="pacemaker" type="Dummy"> + <operations id="rsc4-operations"> + <op id="rsc4-monitor-5" interval="5" name="monitor"/> + </operations> + </primitive> + </clone> + <master id="ms5"> + <primitive class="ocf" id="rsc5" provider="pacemaker" type="Stateful"> + <operations id="rsc5-operations"> + <op id="rsc5-monitor-master-5" interval="5" name="monitor" role="Master"/> + <op id="rsc5-monitor-slave-5" interval="5" name="monitor" role="Slave"/> + </operations> + </primitive> + </master> + </resources> + <constraints> + <rsc_location id="loc-ms5" rsc="ms5"> + <rule id="loc-ms5-rule" role="Master" score="10"> + <expression attribute="#uname" id="loc-ms5-expression" operation="eq" value="node1"/> + </rule> + </rsc_location> + <rsc_ticket id="resources-dep-ticketA" ticket="ticketA" loss-policy="demote"> + <resource_set id="resources-dep-ticketA-0" role="Started"> + <resource_ref id="rsc1"/> + <resource_ref id="group2"/> + <resource_ref id="clone4"/> + </resource_set> + <resource_set id="resources-dep-ticketA-1" role="Master"> + <resource_ref id="ms5"/> + </resource_set> + </rsc_ticket> + </constraints> + </configuration> + <status> + <tickets> + <ticket_state id="ticketA" granted="true" standby="true"/> + </tickets> + <node_state id="node1" uname="node1" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node1"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc_stonith_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc2_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc3_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc5:1" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:1_promote_0" operation="promote" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;1:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:1_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + <node_state id="node2" uname="node2" ha="active" in_ccm="true" crmd="online" join="member" expected="member" crm-debug-origin="crm_simulate"> + <lrm id="node2"> + <lrm_resources> + <lrm_resource id="rsc_stonith" class="stonith" type="null"> + <lrm_rsc_op id="rsc_stonith_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc1" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc1_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc1_monitor_10000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="10000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc2" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc2_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc3" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc3_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + <lrm_resource id="rsc4:0" class="ocf" provider="pacemaker" type="Dummy"> + <lrm_rsc_op id="rsc4:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc4:0_monitor_5000" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;3:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="3" rc-code="0" op-status="0" interval="5000" op-digest="4811cef7f7f94e3a35a70be7916cb2fd"/> + </lrm_resource> + <lrm_resource id="rsc5:0" class="ocf" provider="pacemaker" type="Stateful"> + <lrm_rsc_op id="rsc5:0_monitor_0" operation="monitor" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:7;1:-1:7:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="1" rc-code="7" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + <lrm_rsc_op id="rsc5:0_start_0" operation="start" crm-debug-origin="crm_simulate" crm_feature_set="3.0.5" transition-key="2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" transition-magic="0:0;2:-1:0:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" call-id="2" rc-code="0" op-status="0" interval="0" op-digest="f2317cad3d54cec5d7d7aa7d0bf35cf8"/> + </lrm_resource> + </lrm_resources> + </lrm> + </node_state> + </status> +</cib>
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor