osaf/services/saf/immsv/immnd/immnd_evt.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-)
If an IMMND receives a discard-node message and the node to be discarded is the node the IMMND is executing on, then this is a clear indication of cluster network partitioning, or "split brain". The action taken by the IMMND was to osafassert if this happened. But such an assert generates a coredump resulting in unnecesary tickets on and troubleshooting off the IMM. With this patch, the error is instead log'ed to the syslog and then IMMND exits. It should then be clear why the IMMND restarts and that it was not due to an error in the IMMND. diff --git a/osaf/services/saf/immsv/immnd/immnd_evt.c b/osaf/services/saf/immsv/immnd/immnd_evt.c --- a/osaf/services/saf/immsv/immnd/immnd_evt.c +++ b/osaf/services/saf/immsv/immnd/immnd_evt.c @@ -8407,7 +8407,12 @@ static void immnd_evt_proc_discard_node( SaUint32T arrSize = 0; TRACE_ENTER(); osafassert(evt); - osafassert(evt->info.ctrl.nodeId != cb->node_id); + if(evt->info.ctrl.nodeId == cb->node_id) { + LOG_ER("immnd_evt_proc_discard_node for *this* node %u => " + "Cluster partitioned (\"split brain\") - exiting", + cb->node_id); + exit(1); + } LOG_NO("Global discard node received for nodeId:%x pid:%u", evt->info.ctrl.nodeId, evt->info.ctrl.ndExecPid); /* We should remember the nodeId/pid pair to avoid a redundant message causing a newly reattached node being discarded. ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349351&iu=/4140/ostg.clktrk _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel