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