When amfd read headless cached RT attr, it should delete SU in
osafAmfSGSuOperationList attr of SG if there is no any assignment
in progress can be found.
---
 src/amf/amfd/sg.cc | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/amf/amfd/sg.cc b/src/amf/amfd/sg.cc
index 47ffb9866..e2c2528c8 100644
--- a/src/amf/amfd/sg.cc
+++ b/src/amf/amfd/sg.cc
@@ -2243,6 +2243,16 @@ void avd_sg_read_headless_cached_rta(AVD_CL_CB *cb) {
           if (op_su) {
             if (op_su->sg_of_su->any_assignment_in_progress()) {
               avd_sg_su_oper_list_add(avd_cb, op_su, false, false);
+            } else {
+              TRACE("No any assignment in progress, clean %s",
+                    op_su->name.c_str());
+              const SaNameTWrapper su_name(op_su->name);
+              avd_saImmOiRtObjectUpdate_sync(
+                  sg->name,
+                  const_cast<SaImmAttrNameT>("osafAmfSGSuOperationList"),
+                  SA_IMM_ATTR_SANAMET,
+                  (void *)static_cast<const SaNameT *>(su_name),
+                  SA_IMM_ATTR_VALUES_DELETE);
             }
           }
         }
-- 
2.17.1



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

Reply via email to