【发布时间】:2020-08-11 17:05:13
【问题描述】:
我有一个 3 节点 kafka 集群,突然集群中的一个节点关闭,当我将消息发送到其中一个主题时,我开始在我的应用程序日志中看到 NotLeaderForPartitionException 异常,但是对于某些主题我可以发布和使用消息。
我可以看到这个问题一直持续到所有 kafka 服务器都重新启动,重新启动后一切正常。
现在,我的问题是:为什么不为这些主题选出新的领导者,而是继续抛出相同的NotLeaderForPartitionException 异常,以及如何让这些主题的新领导者选举发生?
异常跟踪:
2020-04-11 22:05:21,747 ERROR [pool-15-thread-297] [KafkaMessageProducer:92] Message send failed:
java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.NotLeaderForPartitionException: This server is not the leader for that topic-partition.
at org.apache.kafka.clients.producer.internals.FutureRecordMetadata.valueOrError(FutureRecordMetadata.java:94)
at org.apache.kafka.clients.producer.internals.FutureRecordMetadata.get(FutureRecordMetadata.java:64)
at org.apache.kafka.clients.producer.internals.FutureRecordMetadata.get(FutureRecordMetadata.java:29)
【问题讨论】:
标签: java apache-kafka