[
https://issues.apache.org/jira/browse/KAFKA-19148?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17945718#comment-17945718
]
Justin Chen commented on KAFKA-19148:
-------------------------------------
This is also being observed in our Kafka 3.9 + KRaft deployment. We have
`unclean.leader.election.enable=false` on all levels (topic, broker,
controller) but during partition reassignments (e.g. due to a rebalance by
Cruise Control), we see unclean leader elections present in broker logs.
> Potential Unclean Leader Election in KRaft Despite
> unclean.leader.election.enable=false
> ---------------------------------------------------------------------------------------
>
> Key: KAFKA-19148
> URL: https://issues.apache.org/jira/browse/KAFKA-19148
> Project: Kafka
> Issue Type: Bug
> Components: controller
> Affects Versions: 4.0.0, 3.9.0
> Reporter: Julian Bergner
> Priority: Critical
> Attachments: Readme_Kraft.md, Readme_Zookeeper.md,
> docker-compose_kraft.yml, docker-compose_zookeeper.yml
>
>
> *Issue Summary:*
> We're observing unclean leader election even though
> {{{}unclean.leader.election.enable=false{}}}.
> *Scenario:*
> During a partition reassignment, if we promote a non-ISR broker to leader and
> simultaneously remove the current leader from the ISR, Kafka still elects a
> new leader from outside the ISR. This behavior contradicts the expected
> behavior when unclean leader election is explicitly disabled.
> *Details:*
> * *Original ISR:* [1, 2]
> * *New ISR after reassignment:* [3, 2]
> *Kafka Versions Tested:*
> * Kafka 4.0.0 (KRaft mode)
> * Kafka 3.9.0 (Kraft mode)
> * Kafka 3.9.0 (Zookeeper mode)
> *Observation:*
> * The behaviour differs between the two modes.
> * In Kraft, unclean leader election occurred, which should not happen with
> the config set to {{{}false{}}}.
> * In Zookeeper no unclean leader election occurred.
> *Attachments:*
> Docker Compose files and reproduction steps for both:
> * Kafka 4.0.0 (KRaft)
> * Kafka 3.9.0 (Zookeeper)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)