Raft commit needs a majority entry from the current leader term.

highlighted = computed this step

Commit needs the current term

Raft does not commit an older-term entry by counting replicas alone. A current-term entry must reach majority before the leader can advance through it. Note: this is the safety rule Book Eight deferred.

term restricted commit\text{term restricted commit}

Prior term alone

With only the older-term entry counted, commitIndex stays 0. Note: the leader log is visible, but the commit marker does not move.

commitIndex=0\text{commitIndex}=0

a simplified Raft over a tiny cluster: terms, votes, leader election, and the term-restricted commit rule are exact on these traces; the full safety proof, membership changes, snapshotting, log compaction, and real RPC/timing are beyond these traces - no product claims.

Prior term count commitIndex 0 0 1 2 3 A t1/F t2/C t2/L t2/L B t1/F t2/F t2/F t2/F C t1/F t2/F t2/F t2/F vote tally t2 A:3 leader log A t1:old

Current term entry

After a current-term entry is appended and replicated, commitIndex becomes 2. Note: the marker advances through the earlier entry only after the current-term rule is met.

commitIndex=2\text{commitIndex}=2

a simplified Raft over a tiny cluster: terms, votes, leader election, and the term-restricted commit rule are exact on these traces; the full safety proof, membership changes, snapshotting, log compaction, and real RPC/timing are beyond these traces - no product claims.

Current term covers prior commitIndex 2 0 1 2 3 4 A t1/F t2/C t2/L t2/L t2/L B t1/F t2/F t2/F t2/F t2/F C t1/F t2/F t2/F t2/F t2/F vote tally t2 A:3 leader log A t1:old t2:new

Summary

The term-restricted commit rule is the safety piece added on top of quorum replication. Note: this is simplified Raft; the full safety proof, membership changes, snapshots, and real timing are beyond these traces.

current term commits\text{current term commits}