Re: [devel] [PATCH 1 of 1] smf: balanced upgrade software bundle missmatch [#2080]

2016-09-29 Thread Lennart Lund
ACK

Thanks
Lennart

> -Original Message-
> From: Rafael Odzakow
> Sent: den 29 september 2016 10:26
> To: reddy.neelaka...@oracle.com; Lennart Lund
> 
> Cc: opensaf-devel@lists.sourceforge.net
> 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 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
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel


[devel] [PATCH 1 of 1] smf: balanced upgrade software bundle missmatch [#2080]

2016-09-29 Thread Rafael Odzakow
 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 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
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel