Hi Jiunn-Yang, I believe KIP-894 contains the answer to your question. There it says:
"Apache Kafka 2.1 has been chosen as the baseline because it was released many years ago and it includes support for KIP-320 (required for proper fencing support when consuming) and KIP-110 (zstd is a popular compression mechanism)."
https://cwiki.apache.org/confluence/display/KAFKA/KIP-896%3A+Remove+old+client+protocol+API+versions+in+Kafka+4.0 However, I do not know if 2.0 has the same properties. Best, Bruno On 07.01.25 17:01, 黃竣陽 wrote:
Hello forks, Kafka 4.0 is a major release that introduces significant changes. We have deprecated outdated APIs and established a new baseline version of 2.1 as defined in KIP-896. While there has been extensive discussion in related PRs regarding broker-client compatibility, the client upgrade and migration paths have not been explicitly defined. For the client module, the current tentative baseline is version 2.0, which was already discussed in PR[1]. A new KIP will be introduced to further clarify this. However, what I’m particularly curious about is why KIP-896 set the baseline version to 2.1 instead of 2.0. I would appreciate any insights on this. [1]Discussion PR <https://github.com/apache/kafka/pull/18193#issuecomment-2572283545> Best regards, Jiunn-Yang