[Pacemaker] 'stop' operation passes outdated set of instance attributes to RA

David Vossel dvossel at redhat.com
Mon Feb 23 13:50:08 EST 2015



----- Original Message -----
> 
> > On 14 Feb 2015, at 1:10 am, Vladislav Bogdanov <bubble at hoster-ok.com>
> > wrote:
> > 
> > Hi,
> > 
> > I believe that is a bug that 'stop' operation uses set of instance
> > attributes from the original 'start' op, not what successful 'reload' had.
> > Corresponding pe-input has correct set of attributes, and pre-stop 'notify'
> > op uses updated set of attributes too.
> > This is easily reproducible with 3.9.6 resource agents and trace_ra.
> > 
> > pacemaker is c529898.
> > 
> > Should I provide more information?
> 
> Yes please.
> I suspect the lrmd needs to update it's parameter cache for the reload
> operation.
> 
> David?

This falls on the crmd I believe. I haven't tested it, but something like
this should fix it I bet.

diff --git a/crmd/lrm.c b/crmd/lrm.c
index ead2e05..45641d2 100644
--- a/crmd/lrm.c
+++ b/crmd/lrm.c
@@ -186,6 +186,7 @@ update_history_cache(lrm_state_t * lrm_state, lrmd_rsc_info_t * rsc, lrmd_event_
 
         if (op->params &&
             (safe_str_eq(CRMD_ACTION_START, op->op_type) ||
+             safe_str_eq("reload", op->op_type) ||
              safe_str_eq(CRMD_ACTION_STATUS, op->op_type))) {
 
             if (entry->stop_params) {






More information about the Pacemaker mailing list