Ack, Please push asap since many tests are failing... But I am not sure I like this userData pointer and its usage. Seems like an optimization that we could live without...
Thanks, Hans > -----Original Message----- > From: [email protected] [mailto:[email protected]] > Sent: den 30 juni 2014 07:11 > To: Hans Nordebäck; Hans Feldt; [email protected] > Cc: [email protected] > Subject: [PATCH 1 of 1] amfd : standby AMFD should process ccb completed cbk > for delete [#947] > > osaf/services/saf/amf/amfd/imm.cc | 8 +++++--- > 1 files changed, 5 insertions(+), 3 deletions(-) > > > Standby AMFD crashes when it executes CCB apply for delete. > > This got missed in #305. In CCB delete AMFD memorises the object to be > deleted. > When applier comes, it uses this stored pointer to delete the object. > In #305, standby AMFD was prevented to execute any completed callback. > > This patch allows CCB completed callback for deletion at standby AMFD. > > diff --git a/osaf/services/saf/amf/amfd/imm.cc > b/osaf/services/saf/amf/amfd/imm.cc > --- a/osaf/services/saf/amf/amfd/imm.cc > +++ b/osaf/services/saf/amf/amfd/imm.cc > @@ -871,9 +871,6 @@ static SaAisErrorT ccb_completed_cb(SaIm > > TRACE_ENTER2("CCB ID %llu", ccb_id); > > - /* Standby AMFD should not process CCB completed callback. */ > - if (avd_cb->avail_state_avd != SA_AMF_HA_ACTIVE) > - goto done; > > > /* "check that the sequence of change requests contained in the CCB is > @@ -882,6 +879,11 @@ static SaAisErrorT ccb_completed_cb(SaIm > > while ((opdata = ccbutil_getNextCcbOp(ccb_id, opdata)) != NULL) { > type = object_name_to_class_type(&opdata->objectName); > + > + /* Standby AMFD should process CCB completed callback only for > CCB_DELETE. */ > + if ((avd_cb->avail_state_avd != SA_AMF_HA_ACTIVE) && > + (opdata->operationType != CCBUTIL_DELETE)) > + continue; > if (ccb_completed_callback[type] == NULL) { > /* this can happen for malformed DNs */ > LOG_ER("Class implementer for '%s' not found", > opdata->objectName.value); ------------------------------------------------------------------------------ Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft _______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
