Browse Source

added better checks for HA servers

0xdcarns 3 years ago
parent
commit
60a1c00c99
2 changed files with 5 additions and 2 deletions
  1. 1 0
      logic/server.go
  2. 4 2
      mq/publishers.go

+ 1 - 0
logic/server.go

@@ -165,6 +165,7 @@ func ServerJoin(networkSettings *models.Network) (models.Node, error) {
 // replaces legacy Checkin code
 func ServerUpdate(serverNode *models.Node, ifaceDelta bool) error {
 	if !IsLocalServer(serverNode) {
+		logger.Log(1, "skipping server update as not the leader")
 		return nil
 	}
 

+ 4 - 2
mq/publishers.go

@@ -119,7 +119,7 @@ func sendPeers() {
 
 	for _, network := range networks {
 		serverNode, errN := logic.GetNetworkServerLeader(network.NetID)
-		if errN == nil {
+		if errN == nil && logic.IsLocalServer(&serverNode) {
 			serverNode.SetLastCheckIn()
 			logic.UpdateNode(&serverNode, &serverNode)
 			if network.DefaultUDPHolePunch == "yes" {
@@ -137,7 +137,9 @@ func sendPeers() {
 		} else {
 			logger.Log(1, "unable to retrieve leader for network ", network.NetID)
 			serverctl.SyncServerNetwork(network.NetID)
-			logger.Log(1, errN.Error())
+			if errN != nil {
+				logger.Log(1, errN.Error())
+			}
 			continue
 		}
 	}