[
https://issues.apache.org/jira/browse/KAFKA-19601?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jun Rao updated KAFKA-19601:
----------------------------
Description:
In [https://github.com/apache/kafka/pull/17952], if ELR is enabled, we (1)
disallow min.insync.replicas at the broker level; (2) automatically add
min.insync.replicas at the cluster level, if not present; (3) disallow removing
min.insync.replicas at the cluster level. The reason for this is that if
brokers disagree about which partitions are under min ISR, it breaks the
KIP-966 replication invariants.
However, even if ELR is not enabled, it's bad to have different
min.insync.replicas on different brokers since if a leader is moved to a
different broker, it will behave differently on the min.insync.replicas
semantic. So, it's probably better to always enforce the above regardless
whether ELR is enabled or not. Similarly, we probably want to do the same for
at least unclean.leader.election.enable.
Since this is a public facing change, it requires a KIP.
was:
In [https://github.com/apache/kafka/pull/17952,] if ELR is enabled, we (1)
disallow min.insync.replicas at the broker level; (2) automatically add
min.insync.replicas at the cluster level, if not present; (3) disallow removing
min.insync.replicas at the cluster level. The reason for this is that if
brokers disagree about which partitions are under min ISR, it breaks the
KIP-966 replication invariants.
However, even if ELR is not enabled, it's bad to have different
min.insync.replicas on different brokers since if a leader is moved to a
different broker, it will behave differently on the min.insync.replicas
semantic. So, it's probably better to always enforce the above regardless
whether ELR is enabled or not. Similarly, we probably want to do the same for
at least unclean.leader.election.enable.
Since this is a public facing change, it requires a KIP.
> always disallow min.insync.replicas at the broker level
> -------------------------------------------------------
>
> Key: KAFKA-19601
> URL: https://issues.apache.org/jira/browse/KAFKA-19601
> Project: Kafka
> Issue Type: Improvement
> Reporter: Jun Rao
> Assignee: Jhen-Yung Hsu
> Priority: Major
>
> In [https://github.com/apache/kafka/pull/17952], if ELR is enabled, we (1)
> disallow min.insync.replicas at the broker level; (2) automatically add
> min.insync.replicas at the cluster level, if not present; (3) disallow
> removing min.insync.replicas at the cluster level. The reason for this is
> that if brokers disagree about which partitions are under min ISR, it breaks
> the KIP-966 replication invariants.
> However, even if ELR is not enabled, it's bad to have different
> min.insync.replicas on different brokers since if a leader is moved to a
> different broker, it will behave differently on the min.insync.replicas
> semantic. So, it's probably better to always enforce the above regardless
> whether ELR is enabled or not. Similarly, we probably want to do the same for
> at least unclean.leader.election.enable.
> Since this is a public facing change, it requires a KIP.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)