[ 
https://issues.apache.org/jira/browse/KAFKA-19148?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18008934#comment-18008934
 ] 

Tal Asulin edited comment on KAFKA-19148 at 7/22/25 9:11 AM:
-------------------------------------------------------------

Hi [~justin-chen], I tried to simulate the same use case on Kafka 3.9.0 setup. 
I do see the offsets inconsistencies but no data loss. it means that the 
messages was re-ordered but all the messages are there (if you will save the 
consumer output into a file and numerically sort it, you won't find 
inconsistency). I assume that the new leader was immediately reassigned (the 
producer was able to communicate with him) but also started to sync up to the 
existing in-sync replica offset in the ISR


was (Author: JIRAUSER310397):
Hi [~justin-chen], I tried to simulate the same use case on Kafka 3.9.0 setup. 
I do see the offsets inconsistencies but no data loss. it means that the 
messages was re-ordered but all the messages are there (if you will save the 
consumer output into a file and numerically sort it, you won't find 
inconsistency). I assume that the new leader was immediately reassign (the 
producer was able to communicate with him) but also started to sync up to the 
existing in-sync replica offset in the ISR

> 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: 3.9.0, 4.0.0
>            Reporter: Julian Bergner
>            Assignee: Azhar Ahmed
>            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)

Reply via email to