Hi Minh

ack

—
________________________________
From: Minh Chau <minh.c...@dektech.com.au>
Sent: Friday, January 24, 2020 11:35:29 AM
To: Gary Lee <gary....@dektech.com.au>
Cc: opensaf-devel@lists.sourceforge.net <opensaf-devel@lists.sourceforge.net>; 
Minh Hon Chau <minh.c...@dektech.com.au>
Subject: [PATCH 1/1] fmd: Do not send RDE to set active role if 
opensaf_quick_reboot is executed [#3146]

If a SC is separated from cluster, fmd calls opensaf_quick_reboot().
The reboot script returns yet the node has not been coming down.
In the code after opensaf_quick_reboot(), fmd tells rde to promote
to active. Hence, there is a short period of having two 2 active SC

This patch makes fmd to stop sending to RDE to set active role after
opensaf_quick_reboot().

Note: There are a few places after opensaf_quick_reboot(), the function
does not return. However, this patch only fixes the issue in fm, the
other places will be re-visited.
---
 src/fm/fmd/fm_rda.cc | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/fm/fmd/fm_rda.cc b/src/fm/fmd/fm_rda.cc
index fca417f79..479eb2149 100644
--- a/src/fm/fmd/fm_rda.cc
+++ b/src/fm/fmd/fm_rda.cc
@@ -86,6 +86,7 @@ void promote_node(FM_CB *fm_cb) {
     LOG_ER("Unable to set active controller in consensus service");
     opensaf_quick_reboot("Unable to set active controller "
       "in consensus service");
+    return;
   } else if (rc == SA_AIS_ERR_EXIST) {
     // @todo if we don't reboot, we don't seem to recover from this. Can we
     // improve?
@@ -94,6 +95,7 @@ void promote_node(FM_CB *fm_cb) {
         "cluster?");
     opensaf_quick_reboot("A controller is already active. We were separated "
                          "from the cluster?");
+    return;
   }

   PCS_RDA_REQ rda_req;
--
2.20.1


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

Reply via email to