瀏覽代碼

totemsrp: Enhance mcast failure detection

memb_state_gather_enter increase stats.continuous_gather only if
previous state was gather also. This should happen only if multicast is
not working properly (local firewall in most cases) and not if many
nodes joins at one time.

Signed-off-by: Jan Friesse <jfriesse@redhat.com>
Reviewed-by: Angus Salkeld <asalkeld@redhat.com>
(cherry picked from commit 61d83cd719bcc93a78eb5c718a138b96c325cc3e)
Jan Friesse 15 年之前
父節點
當前提交
a22de24987
共有 1 個文件被更改,包括 7 次插入1 次删除
  1. 7 1
      exec/totemsrp.c

+ 7 - 1
exec/totemsrp.c

@@ -1881,7 +1881,13 @@ static void memb_state_gather_enter (
 
 	instance->memb_state = MEMB_STATE_GATHER;
 	instance->stats.gather_entered++;
-	instance->stats.continuous_gather++;
+
+	if (gather_from == 3) {
+		/*
+		 * State 3 means gather, so we are continuously gathering.
+		 */
+		instance->stats.continuous_gather++;
+	}
 
 	if (instance->stats.continuous_gather > MAX_NO_CONT_GATHER) {
 		log_printf (instance->totemsrp_log_level_warning,