There is no value corresponding to it in sgtype.

> -----Original Message-----
> From: Hans Feldt [mailto:hans.fe...@ericsson.com]
> Sent: 15 May 2014 17:22
> To: Nagendra Kumar; Alex Jones; Praveen Malviya
> Cc: opensaf-devel@lists.sourceforge.net
> Subject: RE: [PATCH 1 of 1] amfd: allow change to saAmfSGNumPrefActiveSUs
> for N+M SG while UNLOCKED [#871]
> 
> 
> if (value_is_deleted)
>       sg->saAmfSGNumPrefActiveSUs = sg-saAmfSGNumPrefActiveSUs;
> 
> shouldn't it reset the value from the SgType?
> 
> Thanks,
> Hans
> 
> > -----Original Message-----
> > From: Nagendra Kumar [mailto:nagendr...@oracle.com]
> > Sent: den 15 maj 2014 13:56
> > To: Alex Jones; Hans Feldt; Praveen Malviya
> > Cc: opensaf-devel@lists.sourceforge.net
> > Subject: RE: [PATCH 1 of 1] amfd: allow change to
> > saAmfSGNumPrefActiveSUs for N+M SG while UNLOCKED [#871]
> >
> > Ok, keep a notice log. Ack.
> >
> > Thanks
> > -Nagu
> > > -----Original Message-----
> > > From: Alex Jones [mailto:ajo...@genband.com]
> > > Sent: 13 May 2014 20:29
> > > To: Nagendra Kumar; hans.fe...@ericsson.com; Praveen Malviya
> > > Cc: opensaf-devel@lists.sourceforge.net
> > > Subject: Re: [PATCH 1 of 1] amfd: allow change to
> > > saAmfSGNumPrefActiveSUs for N+M SG while UNLOCKED [#871]
> > >
> > > Oh.  That is really to disallow deleting the attribute.  Do I even need 
> > > it?
> > >
> > > Alex
> > >
> > > On 05/13/2014 02:15 AM, Nagendra Kumar wrote:
> > > > Hi Alex,
> > > > I couldn't get the below change:
> > > >
> > > > +                               if (value_is_deleted)
> > > > +                                       sg->saAmfSGNumPrefActiveSUs = 
> > > > sg-
> > > >saAmfSGNumPrefActiveSUs;
> > > > +                               else
> > > >
> > > > Thanks
> > > > -Nagu
> > > >
> > > >> -----Original Message-----
> > > >> From: Alex Jones [mailto:ajo...@genband.com]
> > > >> Sent: 13 May 2014 00:36
> > > >> To: hans.fe...@ericsson.com; Nagendra Kumar; Praveen Malviya
> > > >> Cc: opensaf-devel@lists.sourceforge.net
> > > >> Subject: [PATCH 1 of 1] amfd: allow change to
> > > >> saAmfSGNumPrefActiveSUs for
> > > >> N+M SG while UNLOCKED [#871]
> > > >>
> > > >>   osaf/services/saf/amf/amfd/sg.cc |  39
> > > >> +++++++++++++++++++++++++++++++++++++++
> > > >>   1 files changed, 39 insertions(+), 0 deletions(-)
> > > >>
> > > >>
> > > >> ccb_completed_modify_hdlr: Attribute 'saAmfSGNumPrefActiveSUs'
> > > >> cannot be modified when SG is unlocked
> > > >>
> > > >> OpenSAF disallows changing saAmfSGNumPrefActiveSUs while the SG
> > > >> is UNLOCKED.
> > > >> This prevents in-service capacity upgrade for N+M models, which
> > > >> is not desirable.
> > > >>
> > > >> This change allows saAmfSGNumPrefActiveSUs to be increased for
> > > >> N+M models, as long as there are instantiated spare SUs equal to
> > > >> the amount of the increase.
> > > >> These instantiated spare SUs will then be assigned ACTIVE, and
> > > >> their corresponding CSIs will be assigned to the STANDBY.
> > > >>
> > > >> 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
> > > >> @@ -675,6 +675,33 @@ static SaAisErrorT ccb_completed_modify_
> > > >>                                        rc = SA_AIS_ERR_BAD_OPERATION;
> > > >>                                        goto done;
> > > >>                                }
> > > >> +                      } else if (!strcmp(attribute->attrName,
> > > >> "saAmfSGNumPrefActiveSUs")) {
> > > >> +                              uint32_t pref_active_su =
> > > >> *static_cast<SaUint32T *>(value);
> > > >> +
> > > >> +                              if (sg->sg_redundancy_model !=
> > > >> SA_AMF_NPM_REDUNDANCY_MODEL) {
> > > >> +
>       report_ccb_validation_error(opdata,
> > > >> +                                              "%s:
> > > >> saAmfSGNumPrefActiveSUs for non-N+M model cannot"
> > > >> +                                              " be modified when
> SG is
> > > >> unlocked", __FUNCTION__);
> > > >> +                                      rc =
> SA_AIS_ERR_BAD_OPERATION;
> > > >> +                                      goto done;
> > > >> +                              } else if (pref_active_su < sg-
> > > >>> saAmfSGNumPrefActiveSUs) {
> > > >> +
>       report_ccb_validation_error(opdata,
> > > >> +                                              "%s: Cannot decrease
> > > >> saAmfSGNumPrefActiveSUs while SG"
> > > >> +                                              " is unlocked ",
> > > >> __FUNCTION__);
> > > >> +                                      rc =
> SA_AIS_ERR_BAD_OPERATION;
> > > >> +                                      goto done;
> > > >> +                              } else {
> > > >> +                                      uint32_t increase_amount =
> > > >> pref_active_su - sg->saAmfSGNumPrefActiveSUs;
> > > >> +
> > > >> +                                      if (sg-
> > > >>> saAmfSGNumCurrInstantiatedSpareSUs < increase_amount) {
> > > >> +
> > > >>        report_ccb_validation_error(opdata,
> > > >> +                                                      "%s: Not
> enough
> > > >> instantiated spare SUs to do"
> > > >> +                                                      " in-service
> increase
> > > >> of saAmfSGNumPrefActiveSUs",
> > > >> +
>       __FUNCTION__);
> > > >> +                                              rc =
> > > >> SA_AIS_ERR_BAD_OPERATION;
> > > >> +                                              goto done;
> > > >> +                                      }
> > > >> +                              }
> > > >>                        } else {
> > > >>                                report_ccb_validation_error(opdata,
> > > >>                                        "%s: Attribute '%s' cannot be 
> > > >> modified
> > > when SG is unlocked",
> > > >> @@ -1010,6 +1037,18 @@ static void ccb_apply_modify_hdlr(CcbUti
> > > >>                                        sg->name.value, sg-
> > > >>> saAmfSGAutoRepair);
> > > >>                        } else if (!strcmp(attribute->attrName,
> > > >> "saAmfSGSuHostNodeGroup")) {
> > > >>                                sg->saAmfSGSuHostNodeGroup = *((SaNameT
> > > *)value);
> > > >> +                      } else if (!strcmp(attribute->attrName,
> > > >> "saAmfSGNumPrefActiveSUs")) {
> > > >> +                              if (value_is_deleted)
> > > >> +                                      sg-
> >saAmfSGNumPrefActiveSUs = sg-
> > > >>> saAmfSGNumPrefActiveSUs;
> > > >> +                              else
> > > >> +                                      sg-
> >saAmfSGNumPrefActiveSUs =
> > > >> *static_cast<SaUint32T *>(value);
> > > >> +
> > > >> +                              if (avd_cb->avail_state_avd ==
> > > >> SA_AMF_HA_ACTIVE)  {
> > > >> +                                      /* find an instantiated spare
> SU */
> > > >> +                                      if (sg->realign(avd_cb, sg) !=
> > > >> NCSCC_RC_SUCCESS) {
> > > >> +                                              osafassert(0);
> > > >> +                                      }
> > > >> +                              }
> > > >>                        } else {
> > > >>                                osafassert(0);
> > > >>                        }
> > > >>
> > >

------------------------------------------------------------------------------
"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

Reply via email to