【发布时间】:2019-06-24 10:00:36
【问题描述】:
当消费者在 5 分钟内没有收到消息(默认值为 max.poll.interval.ms 300000ms)时,消费者会在不退出程序的情况下停止。消费者进程挂起,不再消费任何消息。
以下错误消息被记录
MAXPOLL|rdkafka#consumer-1| [thrd:main]: Application maximum poll interval (300000ms) exceeded by 255ms (adjust max.poll.interval.ms for long-running message processing): leaving group
我看到 ErrMaxPollExceeded 在 confluent-kafka-go 中定义为 here 但无法找到它在哪里被提升。
如果出现此类错误,为什么程序不退出?
- Kafka v1.1.0
- librdkafka v1.0.0
- confluent-kafka-go (master)
用于 kafka.Consumer 的配置
{
"bootstrap.servers": "private.kafka.host",
"group.id": "foo.bar",
"auto.offset.reset": "earliest",
"enable.auto.commit": false,
}
【问题讨论】:
-
您调用 Poll() 或 ReadMessage() 的超时时间是否超过了 max.poll.interval.ms?如果是这样,您可能遇到了 librdkafka 中的问题,该问题已在 librdkafka v1.1.0 中修复。
-
@Edenhill 不,我打电话给
Poll(),超时时间为 100 毫秒 -
嗨@esquarer,你找到解决方案了吗,请让我知道我面临同样的问题。
标签: go apache-kafka confluent-platform librdkafka