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

Reply via email to