conduktor.io ↗

KIP-380 — Detect outdated control requests and bounced brokers using broker generation

Accepted Kafka 2.2 Broker

KIP-380 introduces a monotonically increasing `brokerEpoch` field assigned at each broker registration in ZooKeeper so that brokers and the controller can detect and reject control requests (LeaderAndIsr, StopReplica, ControlledShutdown) that belong to a previous incarnation of the same broker. Without a generation counter, a quickly bouncing broker could accidentally process stale control messages sent to its previous incarnation, leaving replicas offline or causing incorrect HWM truncation.

Protocol Impact

Metadata · LeaderAndIsr · StopReplica · UpdateMetadata · ControlledShutdown

Details

AuthorPatrick Huang
StatusAccepted
Kafka Version2.2
JIRAKAFKA-7235
WikiView on Apache Wiki
Created2018-10-09
Last Modified2018-11-13
Explore how this KIP affects the Kafka protocol in the Protocol Explorer, or see the full KIP database.