raft-java
raft-java copied to clipboard
成员变更的实现是否过于简化了些?
成员变更的实现,到RaftNode后就直接
configuration = newConfiguration;
,没有经过paper上所说的two-phase的C(old,new)阶段,存在某一时刻C(old)和C(new)同时满足majority的情况而导致两个leader选举成功。
这块目前实现是否过于简化了些?
@logicbaby 看了下论文,感觉我的实现里,不会出现论文里的多leader情况。因为在新成员没有被大多数old成员提交确认之前,新成员是没有选举权的。
成员变更使用的是联合共识(Joint Consensus)还是单节点变更(single-server changes)算法?