osaf/services/saf/amf/amfd/sg.cc | 31 +++++++++++++++++++++++++------
1 files changed, 25 insertions(+), 6 deletions(-)
saAmfSGMaxActiveSIsperSU is valid for NPM, N_WAY and N_WAY_ACTIVE and
invalid for Nored and 2N. So, modification of this attribute for
Nored and 2N redudancy models should be ignored.
saAmfSGMaxStandbySIsperSU is valid for NPM and N_WAY and
invalid for Nored, 2N and NwayAct. So, modification of this attribute for
Nored, 2N and NwayAct redudancy models should be ignored.
diff --git a/osaf/services/saf/amf/amfd/sg.cc b/osaf/services/saf/amf/amfd/sg.cc
--- a/osaf/services/saf/amf/amfd/sg.cc
+++ b/osaf/services/saf/amf/amfd/sg.cc
@@ -919,15 +919,34 @@ static void ccb_apply_modify_hdlr(CcbUti
} else if (!strcmp(attribute->attrName,
"saAmfSGMaxActiveSIsperSU")) {
if (value_is_deleted)
sg->saAmfSGMaxActiveSIsperSU = -1;
- else
- sg->saAmfSGMaxActiveSIsperSU =
*((SaUint32T *)value);
- TRACE("Modified saAmfSGMaxActiveSIsperSU is
'%u'", sg->saAmfSGMaxActiveSIsperSU);
+ else {
+ if ((sg->sg_redundancy_model ==
SA_AMF_NPM_REDUNDANCY_MODEL) ||
+
(sg->sg_redundancy_model == SA_AMF_N_WAY_REDUNDANCY_MODEL) ||
+
(sg->sg_redundancy_model == SA_AMF_N_WAY_ACTIVE_REDUNDANCY_MODEL)) {
+ sg->saAmfSGMaxActiveSIsperSU =
*((SaUint32T *)value);
+ TRACE("Modified
saAmfSGMaxActiveSIsperSU is '%u'",
+
sg->saAmfSGMaxActiveSIsperSU);
+ } else {
+ LOG_NO("'%s' attribute
saAmfSGMaxActiveSIsperSU not modified,"
+ " not valid for
Nored/2N Redundancy models",
+ sg->name.value);
+ }
+ }
} else if (!strcmp(attribute->attrName,
"saAmfSGMaxStandbySIsperSU")) {
if (value_is_deleted)
sg->saAmfSGMaxStandbySIsperSU = -1;
- else
- sg->saAmfSGMaxStandbySIsperSU =
*((SaUint32T *)value);
- TRACE("Modified saAmfSGMaxStandbySIsperSU is
'%u'", sg->saAmfSGMaxStandbySIsperSU);
+ else {
+ if ((sg->sg_redundancy_model ==
SA_AMF_NPM_REDUNDANCY_MODEL) ||
+
(sg->sg_redundancy_model == SA_AMF_N_WAY_REDUNDANCY_MODEL)) {
+ sg->saAmfSGMaxStandbySIsperSU =
*((SaUint32T *)value);
+ TRACE("Modified
saAmfSGMaxStandbySIsperSU is '%u'",
+
sg->saAmfSGMaxStandbySIsperSU);
+ } else {
+ LOG_NO("'%s' attribute
saAmfSGMaxStandbySIsperSU not modified,"
+ " not valid for
Nored/2N/NwayAct Redundancy models",
+ sg->name.value);
+ }
+ }
} else if (!strcmp(attribute->attrName,
"saAmfSGAutoAdjustProb")) {
if (value_is_deleted)
sg->saAmfSGAutoAdjustProb =
sg_type->saAmfSgtDefAutoAdjustProb;
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel