ACK Thanks Lennart
> -----Original Message----- > From: Rafael Odzakow > Sent: den 29 september 2016 10:26 > To: [email protected]; Lennart Lund > <[email protected]> > Cc: [email protected] > Subject: [PATCH 1 of 1] smf: balanced upgrade software bundle missmatch > [#2080] > > osaf/services/saf/smfsv/smfd/SmfExecControl.cc | 9 +++------ > 1 files changed, 3 insertions(+), 6 deletions(-) > > > When merging steps for the BALANCED_MODE execution there is a > missmatch in how > the software bundles are added to the new step. The problem will show > when > nodes have different software installed and not all of those nodes are > included > in the balanced list. > > diff --git a/osaf/services/saf/smfsv/smfd/SmfExecControl.cc > b/osaf/services/saf/smfsv/smfd/SmfExecControl.cc > --- a/osaf/services/saf/smfsv/smfd/SmfExecControl.cc > +++ b/osaf/services/saf/smfsv/smfd/SmfExecControl.cc > @@ -103,13 +103,10 @@ bool createStepForBalancedProc(SmfUpgrad > SmfCampaign* camp = SmfCampaignThread::instance()->campaign(); > SmfUpgradeCampaign* ucamp = camp->getUpgradeCampaign(); > > - std::vector<SmfUpgradeStep*> steps; > - for (auto step : getStepsMatchingBalancedGroup(procedure, ucamp)) { > - // copy steps and callbacks > + auto steps = getStepsMatchingBalancedGroup(procedure, ucamp); > + for (auto step : steps) { > SmfUpgradeProcedure* oproc = step->getProcedure(); > - steps.insert(steps.end(), > - oproc->getProcSteps().begin(), > - oproc->getProcSteps().end()); > + // copy callbacks to the new procedure > procedure->getCallbackList(oproc->getUpgradeMethod()); > } > if (!steps.empty()) { ------------------------------------------------------------------------------ _______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
