Mailing List Archive

How does ptest work?
Hi,

I just started to play around with ptest. Really nice, esp. the graphs.
But one thing I do not understand ...
1) I copy the active CIB to a file: cibadmin -Q > tmp.xml
2) I do changes in that file: vi tmp.xml
In particular I change the IP address of a IPaddr2 resource.
3) I run ptest and it tells me (correctly) that it would shut down the
resource and start ist again.

How does ptest know what I changed in my CIB? I checked that it does NOT
compare it to the running CIB, and the IP address is not noted in the
status section of the CIB. So how does ptest the job?

Thanks for any enlighting answer.

Michael Schwartzkopff.

_______________________________________________
Pacemaker mailing list
Pacemaker@clusterlabs.org
http://list.clusterlabs.org/mailman/listinfo/pacemaker
Re: How does ptest work? [ In reply to ]
On Jan 2, 2008, at 9:13 PM, Michael Schwartzkopff wrote:

> Hi,
>
> I just started to play around with ptest. Really nice, esp. the
> graphs.
> But one thing I do not understand ...
> 1) I copy the active CIB to a file: cibadmin -Q > tmp.xml
> 2) I do changes in that file: vi tmp.xml
> In particular I change the IP address of a IPaddr2 resource.
> 3) I run ptest and it tells me (correctly) that it would shut down the
> resource and start ist again.
>
> How does ptest know what I changed in my CIB? I checked that it does
> NOT
> compare it to the running CIB, and the IP address is not noted in the
> status section of the CIB. So how does ptest the job?

in the status section you'll find a whole lot of lrm_rsc_op "objects" ^
these represent a cluster operation and includes a number of fields
that help us determine which order they were performed in and what
parameters where used.

in particular, there is a field called "op_digest" which we use to
detect changes to the resource's parameters

this is why I'm constantly asking people for their complete
configuration... i need the status section :-)


^ as an example:

<lrm_rsc_op id="child_DoFencing:5_monitor_120000"
operation="monitor" crm-debug-origin="do_update_resource"
transition_key="73:14:03cf0502-d7a2-4481-884b-6a6edf5813f0"
transition_magic="0:0;73:14:03cf0502-d7a2-4481-884b-6a6edf5813f0"
call_id="35" crm_feature_set="2.0" rc_code="0" op_status="0"
interval="120000" op_digest="20a63c39752cf941c02f4cba2a8a7b60"/>



>
>
> Thanks for any enlighting answer.
>
> Michael Schwartzkopff.
>
> _______________________________________________
> Pacemaker mailing list
> Pacemaker@clusterlabs.org
> http://list.clusterlabs.org/mailman/listinfo/pacemaker


_______________________________________________
Pacemaker mailing list
Pacemaker@clusterlabs.org
http://list.clusterlabs.org/mailman/listinfo/pacemaker
Re: How does ptest work? [ In reply to ]
On Jan 2, 2008, at 10:36 PM, Michael Schwartzkopff wrote:

> (...)
>>> How does ptest know what I changed in my CIB? I checked that it does
>>> NOT
>>> compare it to the running CIB, and the IP address is not noted in
>>> the
>>> status section of the CIB. So how does ptest the job?
>>
>> in the status section you'll find a whole lot of lrm_rsc_op
>> "objects" ^
>> these represent a cluster operation and includes a number of fields
>> that help us determine which order they were performed in and what
>> parameters where used.
>>
>> in particular, there is a field called "op_digest" which we use to
>> detect changes to the resource's parameters
>
> So this fields contain some hash of the configuration at the last
> change. If
> the hash changes ptest can find out what changed and do the nescessary
> transitions. Am I right here?

mostly - it knows something changed, but not which specific field


_______________________________________________
Pacemaker mailing list
Pacemaker@clusterlabs.org
http://list.clusterlabs.org/mailman/listinfo/pacemaker