You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@kafka.apache.org by Kostas Christidis <ko...@gmail.com> on 2017/06/15 21:33:57 UTC

Scenario with ZK ensemble partitioned from Kafka cluster + ISR broker going down

Assume:
1. A Kafka cluster with 3 brokers: B0, B1, B2
2. A single topic with a single partition
3. default.replication.factor = 3
4. min.insync.replicas = 3
5. acks = all for the producers

Let:
1. B0 be the controller of the cluster and the leader of the partition
for simplicity
2. ISR = [B0 B2]

Now two things happen:
1. The cluster loses its connection to the ZK ensemble (network partition)
2. B2 dies

B0 realizes that B2 hasn't fetched the most recent messages in the
past 10 seconds. But B1 (which is part of the replication set) does.

But B0 is unable to write the update ISR set to ZK given the network partition.

Does B0 return an ACK to the producer, or is it blocked until it can
update the ISR set in ZK?

Thank you,
Kostas