When all procedures executed, the complete action invokes and clean/remove versioned types. At the time commit campaign, reboot active SC to test robustness of SMF. Standby SC takes active role, SMFD on new active start procedure threads and it failed in addStepModifications due to these versioned types deleted in complete action steps.
In this case, SMFD should ignore these types if the procedure in complete state. --- src/smf/smfd/SmfUpgradeProcedure.cc | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/smf/smfd/SmfUpgradeProcedure.cc b/src/smf/smfd/SmfUpgradeProcedure.cc index dfe98536e..f82d83500 100644 --- a/src/smf/smfd/SmfUpgradeProcedure.cc +++ b/src/smf/smfd/SmfUpgradeProcedure.cc @@ -1993,15 +1993,10 @@ bool SmfUpgradeProcedure::addStepModifications( // fail if the reboot is performed when the versioned types are removed i.e. // during test traffic, if the types was removed in campaign wrapup/complete // section. - SmfUpgradeCampaign *ucamp = - SmfCampaignThread::instance()->campaign()->getUpgradeCampaign(); - if (ucamp->getProcExecutionMode() != SMF_BALANCED_MODE) { - // getImmStepsSingleStep handles this case for balanced mode - if (getState() == SA_SMF_PROC_COMPLETED) { - TRACE("Procedure is completed, skipping addStepModifications"); - TRACE_LEAVE(); - return true; - } + if (getState() == SA_SMF_PROC_COMPLETED) { + TRACE("Procedure is completed, skipping addStepModifications"); + TRACE_LEAVE(); + return true; } std::list<SmfTargetEntityTemplate *>::const_iterator it; -- 2.25.1 _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel