Просмотр исходного кода

votequorum: fix votes/quorum recalculation in auto_tie_breaker

this is necessary when switching from 2 nodes to 1 one in auto_tie_breaker

Reviewed-by: Steven Dake <sdake@redhat.com>
Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
Fabio M. Di Nitto 14 лет назад
Родитель
Сommit
e88015421d
1 измененных файлов с 2 добавлено и 1 удалено
  1. 2 1
      services/votequorum.c

+ 2 - 1
services/votequorum.c

@@ -1015,7 +1015,8 @@ static void quorum_confchg_fn (
 	}
 	}
 
 
 	if (last_man_standing) {
 	if (last_man_standing) {
-		if ((member_list_entries >= quorum) && (left_list_entries)) {
+		if (((member_list_entries >= quorum) && (left_list_entries)) ||
+		    ((member_list_entries <= quorum) && (auto_tie_breaker) && (check_low_node_id_partition() == 1))) {
 			if (last_man_standing_timer_set) {
 			if (last_man_standing_timer_set) {
 				corosync_api->timer_delete(last_man_standing_timer);
 				corosync_api->timer_delete(last_man_standing_timer);
 				last_man_standing_timer_set = 0;
 				last_man_standing_timer_set = 0;