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

Reply via email to