osaf/services/saf/amf/amfnd/susm.cc | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
During shutdown phase, AMFND performs multiple cleanup of components in a SU if one of the components moves in TERM_FAILED state. AMFND launches clean up of all the components during shutdown phase. If cleanup of one of the components fails then AMFND again launched cleans up all the components of the SU as recovery. In this way mutliple clean ups are performed for the same component. Patch checks term_state of avnd control block before launching clean up of components in the SU. diff --git a/osaf/services/saf/amf/amfnd/susm.cc b/osaf/services/saf/amf/amfnd/susm.cc --- a/osaf/services/saf/amf/amfnd/susm.cc +++ b/osaf/services/saf/amf/amfnd/susm.cc @@ -2310,7 +2310,8 @@ uint32_t avnd_su_pres_terming_comptermfa if (m_AVND_COMP_PRES_STATE_IS_INSTANTIATED(curr_comp) && (!m_AVND_COMP_IS_FAILED(curr_comp))) rc = avnd_comp_clc_fsm_trigger(cb, curr_comp, AVND_COMP_CLC_PRES_FSM_EV_TERM); - else + /* During shutdown phase AMFND cleans up all the components */ + else if (cb->term_state != AVND_TERM_STATE_OPENSAF_SHUTDOWN_STARTED) rc = avnd_comp_clc_fsm_trigger(cb, curr_comp, AVND_COMP_CLC_PRES_FSM_EV_CLEANUP); ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel