kafka报UnsupportedVersionException: Attempting to use idempotence with a broker which does not support the required message format (v2). The broker must be version 0.11 or later.

what 发表于: 2023-05-23   最后更新时间: 2023-05-23 16:45:21   3,534 游览

我用SpringBoot提供的kafka-clients链接kafka,报错,引入如下:

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>3.4.0</version>
</dependency>

报以下异常:

org.apache.kafka.common.errors.UnsupportedVersionException: Attempting to use idempotence with a broker which does not support the required message format (v2). The broker must be version 0.11 or later.

错误明细如下:

Exception thrown when sending a message with key='test' and payload='{"test":"test12345","mintTime":1684466315,"amount":"1"...' to topic item_metadata_topic:
org.apache.kafka.common.errors.UnsupportedVersionException: Attempting to use idempotence with a broker which does not support the required message format (v2). The broker must be version 0.11 or later.

请问我该如何解决?

发表于 2023-05-23
添加评论

报错信息显示你正在尝试使用Kafka的幂等性(idempotence)功能,但是连接的Kafka Broker不支持所需的消息格式(v2)。要解决这个问题,可以采取以下几个步骤:

  1. 更新Kafka版本:kafka Broker版本较低,需要考虑升级Kafka以支持所需的消息格式。

  2. 检查kafka-clients版本:确认您的项目中使用的kafka-clients版本是否与连接的Kafka Broker版本兼容。根据报错信息,你使用的kafka-clients版本是3.4.0,可以尝试使用与您连接的Kafka Broker版本兼容的较早版本的kafka-clients。

  3. 调整配置:如果确认Kafka Broker版本和kafka-clients版本兼容,但仍然遇到问题,可以尝试在连接Kafka时调整相关配置。具体来说,您可以尝试禁用幂等性功能。

总之,解决该问题的关键是确保Kafka Broker版本和kafka-clients版本兼容,并且根据需要进行升级或调整相关的配置。

你的答案

查看kafka相关的其他问题或提一个您自己的问题