Well, I thought changeset 5394 has created the problem.

Why don't you test on default itself, ahead of changeset 5327 and see which 
changeset makes it fail?

Thanks
-Nagu

> -----Original Message-----
> From: Hans Feldt [mailto:[email protected]]
> Sent: 10 September 2014 16:50
> To: Nagendra Kumar; Praveen Malviya
> Cc: [email protected]
> Subject: RE: [devel] [PATCH 1 of 1] amfd: fix SI assign algorithm in Nway 
> [#949]
> 
> 
> 
> > -----Original Message-----
> > From: Nagendra Kumar [mailto:[email protected]]
> > Sent: den 10 september 2014 12:24
> > To: Hans Feldt; Praveen Malviya
> > Cc: [email protected]
> > Subject: RE: [devel] [PATCH 1 of 1] amfd: fix SI assign algorithm in
> > Nway [#949]
> >
> > Hi Hans,
> > Can you please apply the below patch and run on latest and confirm if it
> works.
> > 1. If it doesn't,  I will investigate further.
> [Hans] no it does not, what about my patch?
> 
> > 2. If it works, can you please rerun your test on 5392 and confirm it works.
> [Hans] no it did not. Testing 4.4.0 now
> 
> >
> > Thanks
> > -Nagu
> >
> > diff --git a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > --- a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > +++ b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > @@ -1308,10 +1308,6 @@ uint32_t avd_sg_nway_si_assign(AVD_CL_CB
> >                                 it = sirankedsu_db->begin(); it != 
> > sirankedsu_db->end(); it++)
> {
> >                         AVD_SUS_PER_SI_RANK *su_rank_rec = it->second;
> >                         {
> > -                               if 
> > (m_CMP_HORDER_SANAMET(su_rank_rec->indx.si_name,
> curr_si->name) != 0) {
> > -                                       continue;
> > -                               }
> > -
> >                                 /* get the su & si */
> >                                 curr_su = 
> > su_db->find(Amf::to_string(&su_rank_rec-
> >su_name));
> >                                 AVD_SI *si =
> > avd_si_get(&su_rank_rec->indx.si_name);
> > @@ -1321,6 +1317,11 @@ uint32_t avd_sg_nway_si_assign(AVD_CL_CB
> >                                         continue;
> >                         }
> >
> > +                       if (m_CMP_HORDER_SANAMET(su_rank_rec->indx.si_name,
> curr_si->name) != 0) {
> > +                               curr_su = 0;
> > +                               continue;
> > +                       }
> > +
> >                         if (!curr_su)
> >                                 continue;
> >
> > Thanks
> > -Nagu
> >
> > > -----Original Message-----
> > > From: Hans Feldt [mailto:[email protected]]
> > > Sent: 03 July 2014 13:26
> > > To: Praveen Malviya
> > > Cc: [email protected]
> > > Subject: [devel] [PATCH 1 of 1] amfd: fix SI assign algorithm in
> > > Nway [#949]
> > >
> > >  osaf/services/saf/amf/amfd/sg_nway_fsm.cc |  2 ++
> > >  osaf/services/saf/amf/amfd/su.cc          |  2 ++
> > >  2 files changed, 4 insertions(+), 0 deletions(-)
> > >
> > >
> > > More SIs then configured with saAmfSGMaxActiveSIsperSU can be
> > > assigned to an SU.
> > >
> > > The algorithm in avd_sg_nway_si_assign() does not continue with the
> > > next SU after it has assigned the first SI. It keeps assigning the
> > > first SU with more SIs.
> > >
> > > The patch resets the curr_su pointer to start over again for each SI.
> > >
> > > diff --git a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > > b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > > --- a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > > +++ b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc
> > > @@ -1394,6 +1394,8 @@ uint32_t avd_sg_nway_si_assign(AVD_CL_CB
> > >                   } else {
> > >                           LOG_ER("%s:%u: %s (%u)", __FILE__,
> __LINE__,
> > > curr_si->name.value, curr_si->name.length);
> > >                   }
> > > +
> > > +                 curr_su = NULL; // start over
> > >           } else
> > >                   break;
> > >   }                       /* for */
> > > diff --git a/osaf/services/saf/amf/amfd/su.cc
> > > b/osaf/services/saf/amf/amfd/su.cc
> > > --- a/osaf/services/saf/amf/amfd/su.cc
> > > +++ b/osaf/services/saf/amf/amfd/su.cc
> > > @@ -1610,6 +1610,7 @@ static void su_ccb_apply_cb(CcbUtilOpera
> > >
> > >  void AVD_SU::inc_curr_act_si() {
> > >   saAmfSUNumCurrActiveSIs++;
> > > + osafassert(saAmfSUNumCurrActiveSIs <= sg_of_su-
> > > >saAmfSGMaxActiveSIsperSU);
> > >   TRACE("%s saAmfSUNumCurrActiveSIs=%u", name.value,
> > >           saAmfSUNumCurrActiveSIs);
> > >   m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, this,
> > > AVSV_CKPT_SU_SI_CURR_ACTIVE); @@ -1625,6 +1626,7 @@ void
> > > AVD_SU::dec_curr_act_si() {
> > >
> > >  void AVD_SU::inc_curr_stdby_si() {
> > >   saAmfSUNumCurrStandbySIs++;
> > > + osafassert(saAmfSUNumCurrStandbySIs <= sg_of_su-
> > > >saAmfSGMaxStandbySIsperSU);
> > >   TRACE("%s saAmfSUNumCurrStandbySIs=%u", name.value,
> > >           saAmfSUNumCurrStandbySIs);
> > >   m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, this,
> > > AVSV_CKPT_SU_SI_CURR_STBY);
> > >
> > > --------------------------------------------------------------------
> > > ---------- Open source business process management suite built on
> > > Java and Eclipse Turn processes into business applications with
> > > Bonita BPM Community Edition Quickly connect people, data, and
> > > systems into organized workflows Winner of BOSSIE, CODIE, OW2 and
> > > Gartner awards http://p.sf.net/sfu/Bonitasoft
> > > _______________________________________________
> > > Opensaf-devel mailing list
> > > [email protected]
> > > https://lists.sourceforge.net/lists/listinfo/opensaf-devel

------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to