Timeout of 60000ms expired before successfully committing offsets
来源:1-1 导学

mahsiaoko
2021-09-28
老师,您好!我使用spring-kafka写的consumer进行消费,在消费过程中经常出现上面的错误,这种情况下一般从哪些方面进行排查呢?
具体报的错误如下:
org.springframework.kafka.listener.ListenerExecutionFailedException:
Listener method 'public void com.iscas.kafkaconsumer.controller.ConsumerBea.c2fv6(org.apache.kafka.clients.consumer.ConsumerRecords<java.lang.String, java.lang.String>,org.springframework.kafka.support.Acknowledgment)' threw exception;
nested exception is org.apache.kafka.common.errors.TimeoutException: Timeout of 60000ms expired before successfully committing offsets {DNS-BEA-DNSC2F_V6-LOG-77=OffsetAndMetadata{offset=744489, leaderEpoch=null, metadata=''}};
nested exception is org.apache.kafka.common.errors.TimeoutException: Timeout of 60000ms expired before successfully committing offsets {DNS-BEA-DNSC2F_V6-LOG-77=OffsetAndMetadata{offset=744489, leaderEpoch=null, metadata=''}}
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.decorateException(KafkaMessageListenerContainer.java:1641) ~[spring-kafka-2.3.0.RELEASE.jar!/:2.3.0.RELEASE]
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeBatchErrorHandler(KafkaMessageListenerContainer.java:1387) [spring-kafka-2.3.0.RELEASE.jar!/:2.3.0.RELEASE]
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.doInvokeBatchListener(KafkaMessageListenerContainer.java:1274) [spring-kafka-2.3.0.RELEASE.jar!/:2.3.0.RELEASE]
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeBatchListener(KafkaMessageListenerContainer.java:1179) [spring-kafka-2.3.0.RELEASE.jar!/:2.3.0.RELEASE]
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.invokeListener(KafkaMessageListenerContainer.java:1162) [spring-kafka-2.3.0.RELEASE.jar!/:2.3.0.RELEASE]
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.pollAndInvoke(KafkaMessageListenerContainer.java:949) [spring-kafka-2.3.0.RELEASE.jar!/:2.3.0.RELEASE]
at org.springframework.kafka.listener.KafkaMessageListenerContainer$ListenerConsumer.run(KafkaMessageListenerContainer.java:884) [spring-kafka-2.3.0.RELEASE.jar!/:2.3.0.RELEASE]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: org.apache.kafka.common.errors.TimeoutException: Timeout of 60000ms expired before successfully committing offsets {DNS-BEA-DNSC2F_V6-LOG-77=OffsetAndMetadata{offset=744489, leaderEpoch=null, metadata=''}}
[20:54:48:564] [ERROR] - org.springframework.core.log.LogAccessor.error(LogAccessor.java:254) - Error while processing:
写回答
1回答
-
Allen
2021-09-29
1、你这个错误大概率是客户端的错误, 提示的内容是自动提交十分钟都没成功, 可以考虑换成kafka的标准客户端
2、想排查可以看一下源码, 我没有你们的工程环境,不太好debug
3、我刚刚试验了几个版本, 没定位到这个错误, 你也可以考虑换成新版本试试有没有解决4、我个人不建议你们使用Spring的kafka客户端,就会有很多莫名其妙的错误
022021-09-30
相似问题