Hi, I have tried to simplify the test case cib.xml as much as possible (see attached test.xml) to reproduce the problem. Pacemaker version is v1.0.5, 64 bit version.
Crm_verify fails to validate the attached test.xml. I see lots of "Bad Input" error messages in the output log. On the other hand, 'xmllint' validates the test.xml file with no errors. # crm_verify -x test.xml; echo $? Warnings found during check: config may not be valid Use -V for more details 1 # xmllint -relaxng /usr/share/pacemaker/pacemaker.rng /var/lib/heartbeat/crm/test.xml /var/lib/heartbeat/crm/test.xml validates I have narrowed down the problem section to the "rsc_order" section under constraints. Having one "resource_set" under the "rsc_order" passes crm_verify validation. Adding an additional "resource_set" fails crm_verify validation. Note that I have included only one resource in each resource set for this simple test case. My actual cib.xml has multiple resources in the two resource_sets and some of the resources are clone resources. Comparing this with the "pacemaker configuration explained" document (page 27) on pacemaker site, I do not see any obvious syntax problems. Has anyone encountered a similar problem? Is this a bug in crm_verify? If not, what is the problem with the test.xml that is blocking crm_verify? If yes, is there a workaround for the issue? Thanks, Mahesh
crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: main: Option x => test.xml crm_verify[16872]: 2009/10/19_06:31:54 info: main: =#=#=#=#= Getting XML =#=#=#=#= crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/status crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: validate_with: Validating with: /usr/share/pacemaker/pacemaker-1.0.rng (type=2) crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/configuration/constraints crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/configuration/crm_config crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/configuration/nodes crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/configuration/resources crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/status crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: cluster_status: Beginning unpack crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/configuration/op_defaults crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_xpath_object: No match for //cib/configuration/op_defaults in /cib crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <cib admin_epoch="1" epoch="0" num_updates="0" dc-uuid="0" have-quorum="true" remote-tls-port="0" validate-with="pacemaker-1.0" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <configuration > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <crm_config > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <cluster_property_set id="cib-bootstrap-options" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <nvpair id="cib-bootstrap-options-symmetric-cluster" name="symmetric-cluster" value="true" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <nvpair id="cib-bootstrap-options-stonith-enable" name="stonith-enabled" value="false" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </cluster_property_set> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </crm_config> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <rsc_defaults /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <nodes /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <resources > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <primitive id="rscA" class="ocf" provider="heartbeat" type="rscA_Agent" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <operations > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <op name="monitor" interval="60s" id="rscA_monitor" timeout="30s" start-delay="30s" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </operations> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </primitive> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <primitive id="rscB" class="ocf" provider="heartbeat" type="rscB_Agent" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <operations > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <op name="monitor" interval="60s" id="rscB_monitor" timeout="30s" start-delay="30s" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </operations> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </primitive> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </resources> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <constraints > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <rsc_order id="services-order" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <resource_set id="one" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <resource_ref id="rscA" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </resource_set> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <resource_set id="two" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <resource_ref id="rscB" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </resource_set> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </rsc_order> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </constraints> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </configuration> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input <status /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: log_data_element: get_xpath_object: Bad Input </cib> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: xpath_search: Evaluating: //cib/configuration/rsc_defaults crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: unpack_attr_set: Adding attributes from cib-bootstrap-options crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'stop' for cluster option 'no-quorum-policy' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '0' for cluster option 'default-resource-stickiness' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'true' for cluster option 'is-managed-default' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'false' for cluster option 'maintenance-mode' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'true' for cluster option 'start-failure-is-fatal' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'reboot' for cluster option 'stonith-action' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '60s' for cluster option 'stonith-timeout' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'true' for cluster option 'startup-fencing' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '60s' for cluster option 'cluster-delay' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '30' for cluster option 'batch-limit' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '20s' for cluster option 'default-action-timeout' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'false' for cluster option 'stop-all-resources' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'true' for cluster option 'stop-orphan-resources' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'true' for cluster option 'stop-orphan-actions' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'false' for cluster option 'remove-after-stop' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '-1' for cluster option 'pe-error-series-max' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '-1' for cluster option 'pe-warn-series-max' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '-1' for cluster option 'pe-input-series-max' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value 'none' for cluster option 'node-health-strategy' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '0' for cluster option 'node-health-green' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '0' for cluster option 'node-health-yellow' crm_verify[16872]: 2009/10/19_06:31:54 debug: cluster_option: Using default value '-INFINITY' for cluster option 'node-health-red' crm_verify[16872]: 2009/10/19_06:31:54 debug: unpack_config: STONITH timeout: 60000 crm_verify[16872]: 2009/10/19_06:31:54 debug: unpack_config: STONITH of failed nodes is disabled crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: unpack_config: STONITH will reboot nodes crm_verify[16872]: 2009/10/19_06:31:54 debug: unpack_config: Stop all active resources: false crm_verify[16872]: 2009/10/19_06:31:54 debug: unpack_config: Cluster is symmetric - resources can run anywhere by default crm_verify[16872]: 2009/10/19_06:31:54 debug: unpack_config: Default stickiness: 0 crm_verify[16872]: 2009/10/19_06:31:54 debug: unpack_config: On loss of CCM Quorum: Stop ALL resources crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: unpack_config: Orphan resources are stopped crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: unpack_config: Orphan resource actions are stopped crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: unpack_config: Stopped resources are removed from the status section: false crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: unpack_config: Maintenance mode: false crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: unpack_config: By default resources are managed crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: unpack_config: Start failures are always fatal crm_verify[16872]: 2009/10/19_06:31:54 info: unpack_config: Node scores: 'red' = -INFINITY, 'yellow' = 0, 'green' = 0 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: unpack_resources: Begining unpack... <primitive id=rscA... > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... <primitive id="rscA" class="ocf" provider="heartbeat" type="rscA_Agent" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... <operations > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... <op name="monitor" interval="60s" id="rscA_monitor" timeout="30s" start-delay="30s" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... </operations> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... </primitive> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: common_unpack: Unpacking resource... crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=id value=rscA crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=class value=ocf crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=provider value=heartbeat crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=type value=rscA_Agent crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Options for rscA crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Dependancy restart handling: ignore crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Multiple running resource recovery: stop/start crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Desired next state: default crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: native_unpack: Processing resource rscA... crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Action notification: not required crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: native_print: AddedrscA (ocf::heartbeat:rscA_Agent): Stopped crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: unpack_resources: Begining unpack... <primitive id=rscB... > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... <primitive id="rscB" class="ocf" provider="heartbeat" type="rscB_Agent" > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... <operations > crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... <op name="monitor" interval="60s" id="rscB_monitor" timeout="30s" start-delay="30s" /> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... </operations> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: log_data_element: common_unpack: Processing resource input... </primitive> crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: common_unpack: Unpacking resource... crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=id value=rscB crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=class value=ocf crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=provider value=heartbeat crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: add_hash_param: adding: name=type value=rscB_Agent crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Options for rscB crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Dependancy restart handling: ignore crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Multiple running resource recovery: stop/start crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Desired next state: default crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: native_unpack: Processing resource rscB... crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: common_unpack: Action notification: not required crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: native_print: AddedrscB (ocf::heartbeat:rscB_Agent): Stopped crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: unpack_status: Begining unpack crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: unpack_constraints: Processing constraint rsc_order services-order crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade one: implies right crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade one: runnable crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 1 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 2 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade one: implies left crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 3 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 4 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade two: implies right crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade two: runnable crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 5 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 6 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade two: implies left crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 7 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: custom_action_order: Creating ordering constraint 8 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade services-order: implies right crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: order_actions: Ordering Action one-start-end before two-start-begin crm_verify[16872]: 2009/10/19_06:31:54 debug: text2task: Unsupported action: one-start-end crm_verify[16872]: 2009/10/19_06:31:54 debug: text2task: Unsupported action: two-start-begin crm_verify[16872]: 2009/10/19_06:31:54 WARN: invert_action: Unknown action: (null) crm_verify[16872]: 2009/10/19_06:31:54 WARN: invert_action: Unknown action: (null) crm_verify[16872]: 2009/10/19_06:31:54 debug: debug2: get_flags: Upgrade services-order: implies left crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: order_actions: Ordering Action one-stop-begin before two-stop-end crm_verify[16872]: 2009/10/19_06:31:54 debug: text2task: Unsupported action: one-stop-begin crm_verify[16872]: 2009/10/19_06:31:54 debug: text2task: Unsupported action: two-stop-end crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: cleanup_alloc_calculations: deleting order cons: 0x18d8bb20 crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: cleanup_alloc_calculations: deleting node cons: (nil) crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: cleanup_alloc_calculations: deleting inter-resource cons: (nil) crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: cleanup_calculations: deleting resources crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: cleanup_calculations: deleting actions crm_verify[16872]: 2009/10/19_06:31:54 debug: debug3: cleanup_calculations: deleting nodes Warnings found during check: config may not be valid
<cib admin_epoch="1" epoch="0" num_updates="0" dc-uuid="0" have-quorum="true" remote-tls-port="0" validate-with="pacemaker-1.0"> <configuration> <crm_config> <cluster_property_set id="cib-bootstrap-options"> <nvpair id="cib-bootstrap-options-symmetric-cluster" name="symmetric-cluster" value="true"/> <nvpair id="cib-bootstrap-options-stonith-enable" name="stonith-enabled" value="false"/> </cluster_property_set> </crm_config> <rsc_defaults/> <nodes/> <resources> <primitive id="rscA" class="ocf" provider="heartbeat" type="rscA_Agent"> <operations> <op name="monitor" interval="60s" id="rscA_monitor" timeout="30s" start-delay="30s"/> </operations> </primitive> <primitive id="rscB" class="ocf" provider="heartbeat" type="rscB_Agent"> <operations> <op name="monitor" interval="60s" id="rscB_monitor" timeout="30s" start-delay="30s"/> </operations> </primitive> </resources> <constraints> <rsc_order id="services-order"> <resource_set id="one"> <resource_ref id="rscA"/> </resource_set> <resource_set id="two"> <resource_ref id="rscB"/> </resource_set> </rsc_order> </constraints> </configuration> <status/> </cib>
_______________________________________________ Linux-HA mailing list [email protected] http://lists.linux-ha.org/mailman/listinfo/linux-ha See also: http://linux-ha.org/ReportingProblems
