Hi Zoran,

On 6/5/2017 2:01 PM, Zoran Milinkovic wrote:
The earlier code clears that vector on each sync object, and reexecuting 
discard node is not possible when sync is done.

The same is for dead implementers and admin owners.
ACK from me with following :

I understand clearing that vector on each sync object expensive and performance issue also, but it will keep update sync data, if having partial stale data in syncing node is harmless ( I hope IMM DB locked while syncing node)
       ACK from me ,please check the above before committing.

-AVM

On 6/5/2017 2:01 PM, Zoran Milinkovic wrote:
Hi Mahesh,

You have understood correct.

During the sync, it's not possible to discard node on a node that is going to 
be synced.
The data of discarded node is saved in a vector, and discard node should be 
executed again when the sync is done.

The earlier code clears that vector on each sync object, and reexecuting 
discard node is not possible when sync is done.

The same is for dead implementers and admin owners.

Thanks,
Zoran

-----Original Message-----
From: A V Mahesh [mailto:[email protected]]
Sent: den 5 juni 2017 07:13
To: Zoran Milinkovic <[email protected]>
Cc: [email protected]
Subject: Re: [PATCH 1/1] imm: remove vector clearing for dead implementers, 
nodes and admin owners in objectSync [#2481]

Hi Zoran,

On 6/2/2017 8:45 PM, Zoran Milinkovic wrote:
After removing the clearing of dead implementer, node and admin owner vectors, 
re-executing on vectors will be done after the node is fully synced.
Just Trying to understand the problem more , I understand problem as follows 
please confirm :

In a cluster,  some payloads  are already  exist/synced and their NODE STATE is 
 FULLY_AVAILABLE , at that moment  few more  payloads are trying join cluster 
and while those new  payloads  sync is in progress ,  one of the existing 
payload left the cluster and Global discard node received for that node.

Because of  the new  payloads is busy in sync itself , the discard node cleanup 
was not done at that moment by the newly joining node and is got pending , this 
patch is making sure the pending cleanup of discarded node  by newly joined 
node , it my under standing ring ?

-AVM

On 6/2/2017 8:45 PM, Zoran Milinkovic wrote:
After removing the clearing of dead implementer, node and admin owner vectors, 
re-executing on vectors will be done after the node is fully synced.
---
   src/imm/immnd/ImmModel.cc | 12 ------------
   1 file changed, 12 deletions(-)

diff --git a/src/imm/immnd/ImmModel.cc b/src/imm/immnd/ImmModel.cc
index 25f8621..64a24e9 100644
--- a/src/imm/immnd/ImmModel.cc
+++ b/src/imm/immnd/ImmModel.cc
@@ -18853,18 +18853,6 @@ SaAisErrorT ImmModel::objectSync(const 
ImmsvOmObjectSync* req) {
     }
objectSyncExit:
-  sImplsDeadDuringSync.clear();
-  sNodesDeadDuringSync.clear();
-  sAdmosDeadDuringSync.clear();
-  /* Clear the "tombstones" for Implementers and Nodes for each sync message
-     received. The tiny hole that we need to plug only exists after the
-     last sync message, when coord sends the finalizeSync message until
-     everyone receives it. Nodes may receive discardImplementer or
-     discardNode messages over fevs before receiving finalizeSync.
-     These nodes/implementers will still be part of the finalizeSync
-     message, causing apparent verification failure in veterans and
-     incorrectly installed implementers in sync clients.
-   */
     TRACE_LEAVE();
     return err;
   }


------------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to