|
@@ -5094,6 +5094,14 @@ void main_iface_change_fn (
|
|
|
if (instance->iface_changes++ == 0) {
|
|
if (instance->iface_changes++ == 0) {
|
|
|
instance->memb_ring_id_create_or_load (&instance->my_ring_id,
|
|
instance->memb_ring_id_create_or_load (&instance->my_ring_id,
|
|
|
&instance->my_id.addr[0]);
|
|
&instance->my_id.addr[0]);
|
|
|
|
|
+ /*
|
|
|
|
|
+ * Increase the ring_id sequence number. This doesn't follow specification.
|
|
|
|
|
+ * Solves problem with restarted leader node (node with lowest nodeid) before
|
|
|
|
|
+ * rest of the cluster forms new membership and guarantees unique ring_id for
|
|
|
|
|
+ * new singleton configuration.
|
|
|
|
|
+ */
|
|
|
|
|
+ instance->my_ring_id.seq++;
|
|
|
|
|
+
|
|
|
instance->token_ring_id_seq = instance->my_ring_id.seq;
|
|
instance->token_ring_id_seq = instance->my_ring_id.seq;
|
|
|
log_printf (
|
|
log_printf (
|
|
|
instance->totemsrp_log_level_debug,
|
|
instance->totemsrp_log_level_debug,
|