osaf/services/saf/amf/amfd/clm.cc | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
When active controller is hard reset, standby reboots, too, because the OpenSAF
services all fail in active assignment because saImmOiClassImplementerSet fails.
When amfd on the active controller receives "node left" for itself from CLM and
the root cause entity is "safEE", it calls clm_node_exit_complete, which allows
amfd to do an immediate switchover. This is not right, though, because this node
has left the cluster.
Add a check to amfd such that if the "node left" node is an EE and is itself,
break out. We don't want to do a switch over, but let the "node down" logic
handle the failover.
diff --git a/osaf/services/saf/amf/amfd/clm.cc
b/osaf/services/saf/amf/amfd/clm.cc
--- a/osaf/services/saf/amf/amfd/clm.cc
+++ b/osaf/services/saf/amf/amfd/clm.cc
@@ -288,6 +288,12 @@ static void clm_track_cb(const SaClmClus
if(strncmp((char *)rootCauseEntity->value,
"safEE=", 6) == 0) {
/* This callback is because of
operation on PLM, so we need to mark the node
absent, because PLCD will anyway
call opensafd stop.*/
+ AVD_AVND *node =
avd_node_find_nodeid(notifItem->clusterNode.nodeId);
+ if (node->node_info.nodeId ==
avd_cb->node_id_avd) {
+ /* Self Termination, wait for
getting terminated by opensafd stop script.*/
+ LOG_NO("Node Left is self:
ignoring");
+ break;
+ }
clm_node_exit_complete(notifItem->clusterNode.nodeId);
} else if (strncmp((char
*)rootCauseEntity->value, "safNode=", 8) == 0) {
/* This callback is because of
operation on CLM.*/
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel