Achilles

Results 3 issues of Achilles

1. add subgroup member 2. add group member 3. remove group member expect group member has been removed and keep subgroup member actual subgroup also has been removed

question

A minimize cases as belong, which expect return some value but get null。 ``` @GetMapping("/get") @Transactional public String get(@RequestParam String key) { String value = stringRedisTemplate.opsForValue().get(key); System.out.println(value); return value; }...

type: bug

先叠个甲,是个go的初学者,如果有错误请轻喷 代码主要参考了作者的实现。 下图是在执行TestReElection2A时产生的日志,可见在disconnect第一个term的leader后,S1当选了Term2的leader,并发送了心跳。此时讲道理S2应该重置electionTime,但是S2在接受到心跳后仍然触发了ElectionTimeout事件。怀疑是在Reset前,就已经产生了electiontimeout,但就日志结果而言,接受心跳发生在electiontimeout前,理应被reset掉。