浏览代码

Fix bug where transition from multiple members to
single members would cause messages not to be sent.
Also fixed an assertion in transition from multiple
processors to one processor.

(Logical change 1.62)


git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@211 fd59a12c-fef9-0310-b244-a6a79926bd2f

Steven Dake 22 年之前
父节点
当前提交
07dd45a275
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      exec/gmi.c

+ 7 - 0
exec/gmi.c

@@ -2072,6 +2072,13 @@ static void memb_timer_function_state_commit_timeout (void *data)
 				memb_list_entries_confchg = 1;
 				memb_list[0].sin_addr.s_addr = memb_local_sockaddr_in.sin_addr.s_addr; 
 			}
+
+			queues_queue_frag_memb_new ();
+
+			poll_timer_delete (*gmi_poll_handle, timer_single_member);
+			timer_single_member = 0;
+			poll_timer_add (*gmi_poll_handle, 0, 0,
+				timer_function_single_member, &timer_single_member);
 		} else {
 			gmi_log_printf (gmi_log_level_notice, "No members sent join, keeping old ring and transitioning to operational.\n");
 		}