Hi Thang,

ACK from me with no comments.

Best Regards,
Thien

-----Original Message-----
From: Thang Duc Nguyen <thang.d.ngu...@dektech.com.au> 
Sent: Thursday, September 30, 2021 4:44 PM
To: Thanh Nguyen <thanh.ngu...@dektech.com.au>; Thien Minh Huynh 
<thien.m.hu...@dektech.com.au>
Cc: opensaf-devel@lists.sourceforge.net; Thang Duc Nguyen 
<thang.d.ngu...@dektech.com.au>
Subject: [PATCH 1/1] smf: make more robustness in BISU upgrade [#3286]

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 campaign is in completed 
state.
---
 src/smf/smfd/SmfUpgradeProcedure.cc | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/smf/smfd/SmfUpgradeProcedure.cc 
b/src/smf/smfd/SmfUpgradeProcedure.cc
index dfe98536e..56af4a6ae 100644
--- a/src/smf/smfd/SmfUpgradeProcedure.cc
+++ b/src/smf/smfd/SmfUpgradeProcedure.cc
@@ -1993,9 +1993,11 @@ 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) {
+  SmfCampaign* camp = SmfCampaignThread::instance()->campaign();
+  SmfUpgradeCampaign *ucamp = camp->getUpgradeCampaign();
+
+  if ((ucamp->getProcExecutionMode() != SMF_BALANCED_MODE) ||
+      (camp->getState() == SA_SMF_CMPG_EXECUTION_COMPLETED)) {
     // getImmStepsSingleStep handles this case for balanced mode
     if (getState() == SA_SMF_PROC_COMPLETED) {
       TRACE("Procedure is completed, skipping addStepModifications");
--
2.25.1



_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to