Hi Vu,

Reviewed the patch.
Ack from me.

Thanks,
Zoran

-----Original Message-----
From: Vu Minh Nguyen [mailto:vu.m.ngu...@dektech.com.au] 
Sent: den 31 januari 2018 12:20
To: Zoran Milinkovic <zoran.milinko...@ericsson.com>
Cc: opensaf-devel@lists.sourceforge.net; Vu Minh Nguyen 
<vu.m.ngu...@dektech.com.au>
Subject: [PATCH 1/1] imm: immnd coredump during SYNC finalize [#2775]

The call to saImmOiImplementerSet and saImmOiImplementerClear are allowed 
during sync.  Therefore, there is possibility the messages of these calls 
arrived at veteran nodes after finalizeSync was sent from IMMND coord but 
before finalizeSync arrived at the veterans (over fevs).

In that case, the implementer record stored in sImplementerVector database will 
then be different with the implementer record in finalizeSync and this mismatch 
caused the IMMND veterans aborted with current implementation.

This ticket adds a check to ignore that implementer record in finalizeSync as 
it is obsolete instead of terminating the veterans.
---
 src/imm/immnd/ImmModel.cc | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/imm/immnd/ImmModel.cc b/src/imm/immnd/ImmModel.cc index 
7e27a83..8a9110b 100644
--- a/src/imm/immnd/ImmModel.cc
+++ b/src/imm/immnd/ImmModel.cc
@@ -19963,6 +19963,13 @@ SaAisErrorT 
ImmModel::finalizeSync(ImmsvOmFinalizeSync* req, bool isCoord,
                 "according to finalizeSync. Assunimg implSet bypased finSync",
                 info->mId, implName.c_str());
             explained = true;
+          } else if (info->mId == 0) {
+            LOG_NO(
+                "Sync-verify: Veteran node has different "
+                "Implementer-id %u for implementer: %s, it is 0 "
+                "according to finalizeSync. Assuming implClear bypased 
finSync",
+                ii->id, implName.c_str());
+            explained = true;
           } else {
             /* Here veteran claims either dead implementer, i.e. (info->mId ==
                0), or different implementer, i.e. new and different info->mId,
--
1.9.1


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to