ForgedLeaderForTerm

RaftEngine.adoptLeaderForTerm (#1906): a same-term AppendEntries or InstallSnapshot from a peer that is not the node already established as this term's leader.

§5.2 permits one leader per term, so one of the two frames is forged — which one is not locally decidable, and the pin is first-claim-wins. Dropped rather than clamped (an identity has no conservative in-range reading, and clamping one launders a forgery into the most favourable valid value, #1817) and rather than answered (the recipient cannot tell the two senders apart, so it has nothing to say the honest one could act on).

The value with the largest gap between its safety weight and its observability, which is why #2033 named it first. RaftEngine.demoteToFollowerOnLeaderContact runs immediately before it and emits BecomeFollower only if this node was still Leader or Candidate; reaching it as an ordinary Follower — the overwhelmingly common case — the refusal produced nothing at all, and the dropped frame was indistinguishable from one the §5.3 consistency check drops a screen later.

Properties

Link copied to clipboard
expect val name: String
Link copied to clipboard
expect val ordinal: Int
Link copied to clipboard

The RaftMetric.WedgeSuspected.Gate a refusal at this gate is reported under, or null when this gate feeds no wedge diagnosis at all.