提交组xxx的偏移时发生错误UNKNOWN_MEMBER_ID

时间:2016-07-15 11:09:37

标签: java apache-kafka kafka-consumer-api

使用Kafka客户端Java库,使用日志已经工作了一段时间但是出现以下错误它不再起作用了:

2016-07-15 19:37:54.609  INFO 4342 --- [main] o.a.k.c.c.internals.AbstractCoordinator  : Marking the coordinator 2147483647 dead.
2016-07-15 19:37:54.933 ERROR 4342 --- [main] o.a.k.c.c.internals.ConsumerCoordinator  : Error UNKNOWN_MEMBER_ID occurred while committing offsets for group logstash
2016-07-15 19:37:54.933  WARN 4342 --- [main] o.a.k.c.c.internals.ConsumerCoordinator  : Auto offset commit failed: Commit cannot be completed due to group rebalance
2016-07-15 19:37:54.941 ERROR 4342 --- [main] o.a.k.c.c.internals.ConsumerCoordinator  : Error UNKNOWN_MEMBER_ID occurred while committing offsets for group logstash
2016-07-15 19:37:54.941  WARN 4342 --- [main] o.a.k.c.c.internals.ConsumerCoordinator  : Auto offset commit failed:
2016-07-15 19:37:54.948  INFO 4342 --- [main] o.a.k.c.c.internals.AbstractCoordinator  : Attempt to join group logstash failed due to unknown member id, resetting and retrying.

它不断重置。

运行同一应用程序的另一个实例会立即收到错误。

我怀疑Kafka或其ZooKeeper存在问题,但没有错误日志。

谁知道这里发生了什么?

这是我使用的应用程序:https://github.com/izeye/log-redirector

1 个答案:

答案 0 :(得分:9)

我刚遇到同样的问题。我一直在调查,在this主题和this wiki中你可以找到解决方案。

问题似乎是批处理的处理时间比会话超时时间长。 增加会话超时或轮询频率或限制接收的字节数。

对我有用的是改变max.partition.fetch.bytes。但您也可以修改session.timeout.ms或传递给consumer.poll(TIMEOUT)

的值