在 tinykv 的实现中,如果某个时刻发现 applied index - storage first index > gcLimit
就会 propose 一个 Log Compact Request 给 Raft 层,待其 commit 后,才通知 gc worker 执行 log compaction.
为什么需要先达成共识才做 log compaction,而不是每个 peer 单独做?
在 tinykv 的实现中,如果某个时刻发现 applied index - storage first index > gcLimit
就会 propose 一个 Log Compact Request 给 Raft 层,待其 commit 后,才通知 gc worker 执行 log compaction.
为什么需要先达成共识才做 log compaction,而不是每个 peer 单独做?