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

Reply via email to