osaf/services/saf/clmsv/clms/clms_evt.c |  4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)


Node downs are checkpointing to the standbys.
Standby CLMD is also a subscriber of MDS NODE_DOWN events.
The Standby CLMD should ensure integrity when processing duplicate or 
out-of-order arrival
of CHECKPOINT message for NODE_DOWN and MDS NODE_DOWN events.
This ticket fixes a scenario where a node-down is not processed because the 
node is already marked as a
non-member via an admin op that preceded the node's restart.

diff --git a/osaf/services/saf/clmsv/clms/clms_evt.c 
b/osaf/services/saf/clmsv/clms/clms_evt.c
--- a/osaf/services/saf/clmsv/clms/clms_evt.c
+++ b/osaf/services/saf/clmsv/clms/clms_evt.c
@@ -884,6 +884,10 @@ static uint32_t proc_mds_node_evt(CLMSV_
                if (delete_existing_nodedown_records(node_id) == true) {
                        TRACE_LEAVE();
                        return rc;
+               } else if (node->member == SA_FALSE) {
+                       /* One possibility is that an admin operation has made 
this a non-member */
+                       TRACE_LEAVE();
+                       return rc;
                } else {
                TRACE("Adding the node_down record for node: %u to the list", 
node_id);
                NODE_DOWN_LIST *node_down_rec = NULL;

------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to