[
https://issues.apache.org/jira/browse/KAFKA-18762?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17925518#comment-17925518
]
David Jacot commented on KAFKA-18762:
-------------------------------------
[~shubhamraj] Thanks for the bug report. I think that we now take the minimum
of the replication factor and the min.insync.replicas to check wether there are
enough replicas available. This logic was changed in
[https://github.com/apache/kafka/commit/edc7e10a745c350ad1efa9e4866370dc8ea0e034]
as part of KIP-966. The same logic should apply to both ZK and KRaft in 3.9.
In your example, having min.insync.replicas = 2 with a replication factor = 1
does not make sense. Have you tried with the replication factor set to 2 and
taking down the follower?
> 'Acks=all' not working correctly in Kafka Kraft mode.
> -----------------------------------------------------
>
> Key: KAFKA-18762
> URL: https://issues.apache.org/jira/browse/KAFKA-18762
> Project: Kafka
> Issue Type: Bug
> Components: kraft
> Affects Versions: 3.9.0
> Reporter: Shubham Raj
> Priority: Critical
>
> In Kraft mode, producers are able to produce messages to a topic with a
> replication factor of 1, even when the {{min.insync.replicas}} setting is 2
> and {{{}acks=all{}}}. This behavior is inconsistent with Zookeeper mode,
> where the production fails with a timeout exception as expected. This was
> observed in Kafka 3.9.0. We tried both Java and Python API.
>
> *Steps to Reproduce:*
> # Set up a Kafka cluster in Kraft mode.
> # Create a topic with the following properties:
> ** Replication Factor: 1
> ** Partitions: 1 (for simplicity)
> # Set the {{min.insync.replicas}} configuration for the cluster to 2.
> # Configure a Kafka producer with {{{}acks=all{}}}.
> # Attempt to produce messages to the topic.
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)