What is EndQuorumEpoch?
A stepping-down KRaft leader sends this to prompt other voters to start a new election immediately. Without it, the quorum would wait for the election timeout, making controller failover during planned maintenance much slower.
| Version | Kafka | Changes |
|---|---|---|
| EndQuorumEpochRequest | ||
| v0 | 2.7 | + ClusterId string+ Topics []TopicData+ TopicName string+ Partitions []PartitionData+ PartitionIndex int32+ LeaderId int32+ LeaderEpoch int32+ PreferredSuccessors []int32 |
| v1 | 3.9 | + PreferredCandidates []ReplicaInfo+ CandidateId int32+ CandidateDirectoryId uuid+ LeaderEndpoints []LeaderEndpoint+ Name string+ Host string+ Port uint16- PreferredSuccessors []int32~ Flexible encoding enabled FLEXIBLE adds flexible versions, replaces preferred successors with preferred candidates and adds leader endpoints (KIP-853) |
| EndQuorumEpochResponse | ||
| v0 | 2.7 | + ErrorCode int16+ Topics []TopicData+ TopicName string+ Partitions []PartitionData+ PartitionIndex int32+ ErrorCode int16+ LeaderId int32+ LeaderEpoch int32 |
| v1 | 3.9 | + NodeEndpoints []NodeEndpoint+ NodeId int32+ Host string+ Port uint16~ Flexible encoding enabled FLEXIBLE adds flexible versions and leader endpoint (KIP-853) |