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

Jun Rao commented on KAFKA-4433:
--------------------------------

[~mgharat], are you sure this is a real issue? 
reassignedPartitionLeaderSelector is only used in 
moveReassignedPartitionLeaderIfRequired(). At that point, both old and new 
replicas are already in sync. So, we switch to one of the new replicas as the 
new leader with only the new replicas as the assigned replicas. The old 
replicas will be deleted immediately after 
moveReassignedPartitionLeaderIfRequired(). So, there is no need for it to 
follow the new leader.

> Kafka Controller Does not send a LeaderAndIsr to old leader of a 
> topicPartition during reassignment, if the old leader is not a part of the 
> new assigned replicas
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: KAFKA-4433
>                 URL: https://issues.apache.org/jira/browse/KAFKA-4433
>             Project: Kafka
>          Issue Type: Bug
>          Components: controller
>            Reporter: Mayuresh Gharat
>            Assignee: Mayuresh Gharat
>            Priority: Critical
>              Labels: reliability
>
> Consider the following scenario :
> old replicas : {[1,2,3], Leader = 1} is reassigned to new replicas : 
> {[2,3,4], Leader = 2} 
> In this case broker 1 does not receive a LeaderAndIsr request to become a 
> follower.
> This happens because of the following :
> val (leaderAndIsr, replicas) = leaderSelector.selectLeader(topicAndPartition, 
> currentLeaderAndIsr) in PartitionStateMachine.electLeaderForPartition(...) , 
> the replicas returned by ReassignedPartitionLeaderSelector.selectLeader() is 
> only the new Replicas, which are then sent the LeaderAndIsrRequest. So the 
> old replica never receives this LeaderAndIsr.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to