Hi Khanh, It's better if you add comment for code. Example: // This happen when unexpected cluster reboot // when campaign (merged to single step) reach EXECUTION_COMPLETED // Keep state EXCUTION_COMPLETED then user try to commit lead to // SMFD crash and campaign cannot be committed in anyway.
Best Regards, ThuanTr -----Original Message----- From: khanh.h.dang <khanh.h.d...@dektech.com.au> Sent: Monday, August 5, 2019 11:52 AM To: lennart.l...@ericsson.com; thuan.t...@dektech.com.au Cc: opensaf-devel@lists.sourceforge.net; khanh.h.dang <khanh.h.d...@dektech.com.au> Subject: [PATCH 1/1] smfd: set campaign state failed when error msg is introduced [#3063] With single step upgrade method, after a manual cluster reboot, campaign status gets error but state remains EXECUTION_COMPLETED. This change corrects the state of campaign in such case. --- src/smf/smfd/SmfCampaign.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/smf/smfd/SmfCampaign.cc b/src/smf/smfd/SmfCampaign.cc index 6f514831b..d87afbe4d 100644 --- a/src/smf/smfd/SmfCampaign.cc +++ b/src/smf/smfd/SmfCampaign.cc @@ -729,6 +729,13 @@ bool SmfCampaign::startProcedure(SmfUpgradeProcedure *procedure) { "Start of procedure thread failed for " + procedure->getDn(); LOG_ER("%s", error.c_str()); SmfCampaignThread::instance()->campaign()->setError(error); + SmfUpgradeCampaign *p_uc = getUpgradeCampaign(); + if ((p_uc->getProcExecutionMode() == SMF_MERGE_TO_SINGLE_STEP) && + (SmfCampaignThread::instance()->campaign()->getState() == + SA_SMF_CMPG_EXECUTION_COMPLETED)) { + SmfCampaignThread::instance()->campaign()->setState( + SA_SMF_CMPG_EXECUTION_FAILED); + } return false; } return true; -- 2.22.0 _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel