Jim*_*mes 5 runtime-error apache-kafka
我正在查看我们最近在 Kafka 上遇到的问题的日志,我们最终得到了完全偏移倒带。从日志看来,我们有 3 个副本中的两个同时退出,或者至少节点日志中的一个是这样说的。大约在那个时候,我看到以下日志消息以不同的分区名称重复多次:
ERROR [Controller id=0 epoch=71] Controller 0 epoch 71 failed to change state for partition PARTITION.NAME from OnlinePartition to
OnlinePartition (state.change.logger) kafka.common.StateChangeFailedException: Failed to elect leader for partition PARTITION.NAME under strategy PreferredReplicaPartitionLeaderElectionStrategy
at kafka.controller.PartitionStateMachine$$anonfun$doElectLeaderForPartitions$3.apply(PartitionStateMachine.scala:328)
at ...
Run Code Online (Sandbox Code Playgroud)
奇怪的是这部分说
从 OnlinePartition 到 OnlinePartition
当我在谷歌上搜索这个时,我没有发现任何真正有用的东西。另一件事是,所有出现的东西似乎都很旧,并且指的是 Kafka 1.0 之前的版本。我们应该运行 1.1.0。
关于为什么会尝试将分区更改为它似乎已经处于的状态的任何想法?我想我可以看到如何将其视为失败,因为什么都不会改变,但总体而言似乎是荒谬的。
根据Kafka Controller Internals页面,当应选择新的分区领导者时,这是有效的状态转换:
有效的状态转换是:
。。。
在线分区、离线分区 -> 在线分区
为此分区选择新的leader和isr以及一组副本来接收LeaderAndIsr请求,并将leader和isr写入ZK
...
C。PreferredReplicaPartitionLeaderSelector:新领导者 = 第一个分配的副本(如果在 isr 中);新ISR = 当前ISR;接收副本 = 分配的副本
...
向每个接收副本发送 LeaderAndIsr 请求,并向每个实时代理发送 UpdateMetadata 请求
编辑
关于重置偏移量,您能否检查一下KAFKA-6189是否适用于您的情况。如果没有,请分享您的集群、主题和消费者组的配置详细信息。
| 归档时间: |
|
| 查看次数: |
5973 次 |
| 最近记录: |