During SU (many COMPs) restart recovery, if any COMP finish instantiated
then crash while other COMPs are still instantiating, AMF recovery it by
restarting but AMF only cleanup without re-instantiation because AMF see
the COMP is not eligible for instantiation. The error COMP is stuck in
RESTARTING without further action from AMF.

AMF should allow COMP re-instantiation if SU state is INSTANTIATING and
error COMP state is RESTARTING.
---
 src/amf/amfnd/clc.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/amf/amfnd/clc.cc b/src/amf/amfnd/clc.cc
index 463c5de..7a62a56 100644
--- a/src/amf/amfnd/clc.cc
+++ b/src/amf/amfnd/clc.cc
@@ -1805,7 +1805,8 @@ static bool 
is_failed_comp_eligible_for_instantiation(AVND_COMP *comp) {
       /*During surestart recovery, after cleanup of all components, amfnd 
starts
         instantiation of components. A component may fault at this stage. Such 
a
         component is eligible for instantiation.*/
-      if ((comp->pres == SA_AMF_PRESENCE_INSTANTIATING) &&
+      if (((comp->pres == SA_AMF_PRESENCE_RESTARTING) ||
+           (comp->pres == SA_AMF_PRESENCE_INSTANTIATING)) &&
           (comp->su->pres == SA_AMF_PRESENCE_INSTANTIATING))
         return true;
 
-- 
2.7.4



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

Reply via email to