jpokorny / rpms / sbd

Forked from rpms/sbd 5 years ago
Clone
Blob Blame History Raw
commit bfc01977f7413977c51f15f61fef801d2bf9c5f9
Author: Andrew Beekhof <andrew@beekhof.net>
Date:   Fri Oct 24 12:03:41 2014 +1100

    Repair startup when no disks are present

diff --git a/src/sbd-pacemaker.c b/src/sbd-pacemaker.c
index f62d728..7296ad2 100644
--- a/src/sbd-pacemaker.c
+++ b/src/sbd-pacemaker.c
@@ -104,7 +104,8 @@ static int check_ais = 0;
 		cl_log(lvl, fmt, ##args);	\
 		last_state = state;		\
 	}					\
-	} while(0)
+        healthy = state;                        \
+    } while(0)
 
 static cib_t *cib = NULL;
 static xmlNode *current_cib = NULL;
@@ -300,7 +301,6 @@ compute_status(pe_working_set_t * data_set)
 
     if (data_set->dc_node == NULL) {
         LOGONCE(pcmk_health_transient, LOG_INFO, "We don't have a DC right now.");
-        healthy = 2;
         goto out;
     }
 
@@ -325,13 +325,13 @@ compute_status(pe_working_set_t * data_set)
             LOGONCE(pcmk_health_online, LOG_INFO, "Node state: online");
             ever_had_quorum = TRUE;
 
-        } else if(ever_had_quorum == FALSE) {
-            LOGONCE(pcmk_health_transient, LOG_INFO, "We do not have quorum yet");
-
         } else if(servant_count > 0) {
             LOGONCE(pcmk_health_noquorum, LOG_WARNING, "Quorum lost");
             goto out;
 
+        } else if(ever_had_quorum == FALSE) {
+            LOGONCE(pcmk_health_online, LOG_INFO, "We do not have quorum yet");
+
         } else {
             /* We lost quorum, and there are no disks present
              * Setting healthy > 2 here will result in us self-fencing