[ 
https://issues.apache.org/jira/browse/KAFKA-19975?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Deepak Goyal reassigned KAFKA-19975:
------------------------------------

    Assignee: Deepak Goyal

> Reassignment completion blocked by non-ISR replicas
> ---------------------------------------------------
>
>                 Key: KAFKA-19975
>                 URL: https://issues.apache.org/jira/browse/KAFKA-19975
>             Project: Kafka
>          Issue Type: Improvement
>            Reporter: Alyssa Huang
>            Assignee: Deepak Goyal
>            Priority: Major
>
> The reassignment completion logic currently enforces that all target replicas 
> are present in the in-sync replica set (ISR). When an unhealthy broker 
> (unable to keep up with replication and remain in ISR) is in both the current 
> and target replica sets, and is not added/removed in the reassignment, it 
> still prevents the reassignment from completing. 
>  
> e.g. the following reassignments are examples of what would fail to complete 
> if replica 2 were unhealthy and unable to join ISR (even though completing 
> the reassignment would not change the number of replicas in ISR)
> [0, 1, 2] ->  [0, 1, 2, 3] 
> [0, 1, 2] ->  [1, 2, 3] 
> [0, 1, 2] ->  [2, 3, 4] 
>  
> We should allow reassignments to complete if there are replicas in the target 
> replica set that are not in ISR and not part of the adding set. This should 
> be safe because the reassignment completing would not cause the ISR size to 
> shrink. (If the target replica set size is smaller than the current replica 
> set size, then we will continue to enforce all replicas in the target replica 
> set are in ISR to avoid accidentally shrinking the ISR due to reassignment 
> completing)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to