osaf/services/saf/amf/amfd/nodegroup.cc | 24 +++++++++++++++---------
1 files changed, 15 insertions(+), 9 deletions(-)
allow node to be deleted from a nodegroup, even if there are SUs hosted on that
nodegroup
as long as these SUs are also removed in the same CCB
diff --git a/osaf/services/saf/amf/amfd/nodegroup.cc
b/osaf/services/saf/amf/amfd/nodegroup.cc
--- a/osaf/services/saf/amf/amfd/nodegroup.cc
+++ b/osaf/services/saf/amf/amfd/nodegroup.cc
@@ -297,6 +297,7 @@
int add_found = 0;
int nodes_deleted = 0;
AVD_AMF_NG *ng;
+ CcbUtilOperationData_t *t_opData;
TRACE_ENTER();
@@ -338,21 +339,26 @@
/* for all OpenSAF SUs hosted by this node */
for (su = node->list_of_ncs_su; su; su =
su->avnd_list_su_next) {
if
(su_is_mapped_to_node_via_nodegroup(su, ng)) {
-
report_ccb_validation_error(opdata, "Cannot delete '%s' from '%s'."
- " An SU is
mapped using node group",
-
node->name.value, ng->name.value);
- goto done;
-
+ t_opData =
ccbutil_getCcbOpDataByDN(opdata->ccbId, &su->name);
+ if (t_opData == NULL ||
t_opData->operationType != CCBUTIL_DELETE) {
+
report_ccb_validation_error(opdata, "Cannot delete '%s' from '%s'."
+ " An SU
is mapped using node group",
+
node->name.value, ng->name.value);
+ goto done;
+ }
}
}
/* for all application SUs hosted by this node
*/
for (su = node->list_of_su; su; su =
su->avnd_list_su_next) {
if
(su_is_mapped_to_node_via_nodegroup(su, ng)) {
-
report_ccb_validation_error(opdata, "Cannot delete '%s' from '%s'."
- " An SU is
mapped using node group",
-
node->name.value, ng->name.value);
- goto done;
+ t_opData =
ccbutil_getCcbOpDataByDN(opdata->ccbId, &su->name);
+ if (t_opData == NULL ||
t_opData->operationType != CCBUTIL_DELETE) {
+
report_ccb_validation_error(opdata, "Cannot delete '%s' from '%s'."
+ " An SU
is mapped using node group",
+
node->name.value, ng->name.value);
+ goto done;
+ }
}
}
------------------------------------------------------------------------------
Monitor Your Dynamic Infrastructure at Any Scale With Datadog!
Get real-time metrics from all of your servers, apps and tools
in one place.
SourceForge users - Click here to start your Free Trial of Datadog now!
http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel