中断重启后出现:Error while reading checkpoint file kafka消费者无法断点消费、分区消费(读取offset恢复文件IO异常)

news/2024/10/22 13:57:15/

 服务器强制重启后,有时Kafka等会保存checkpoint,但是断点信息出现错误。启动Kafka服务时,出现如下错误:

ERROR Error while reading checkpoint file /home/kafka-2.3.1/kafka-logs/recovery-point-offset-checkpoint (kafka.server.LogDirFailureChannel)
java.io.IOException: Malformed line in checkpoint file (/home/kafka-2.3.1/kafka-logs/recovery-point-offset-checkpoint): '

以及:

[2022-12-27 14:49:16,226] ERROR Error while reading checkpoint file /home/kafka-2.3.1/kafka-logs/replication-offset-checkpoint (kafka.server.LogDirFailureChannel)
java.io.IOException: Malformed line in checkpoint file (/home/kafka-2.3.1/kafka-logs/replication-offset-checkpoint): 'at kafka.server.checkpoints.CheckpointFile.malformedLineException$1(CheckpointFile.scala:84)at kafka.server.checkpoints.CheckpointFile.liftedTree2$1(CheckpointFile.scala:107)at kafka.server.checkpoints.CheckpointFile.read(CheckpointFile.scala:86)at kafka.server.checkpoints.OffsetCheckpointFile.read(OffsetCheckpointFile.scala:61)at kafka.cluster.Partition$$anonfun$getOrCreateReplica$1.apply(Partition.scala:222)at kafka.cluster.Partition$$anonfun$getOrCreateReplica$1.apply(Partition.scala:216)at kafka.utils.Pool$$anon$2.apply(Pool.scala:61)at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660)at kafka.utils.Pool.getAndMaybePut(Pool.scala:60)at kafka.cluster.Partition.getOrCreateReplica(Partition.scala:215)at kafka.server.ReplicaManager$$anonfun$makeFollowers$3.apply(ReplicaManager.scala:1304)at kafka.server.ReplicaManager$$anonfun$makeFollowers$3.apply(ReplicaManager.scala:1281)at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:130)at scala.collection.mutable.HashMap$$anonfun$foreach$1.apply(HashMap.scala:130)at scala.collection.mutable.HashTable$class.foreachEntry(HashTable.scala:236)at scala.collection.mutable.HashMap.foreachEntry(HashMap.scala:40)at scala.collection.mutable.HashMap.foreach(HashMap.scala:130)at kafka.server.ReplicaManager.makeFollowers(ReplicaManager.scala:1281)at kafka.server.ReplicaManager.becomeLeaderOrFollower(ReplicaManager.scala:1119)at kafka.server.KafkaApis.handleLeaderAndIsrRequest(KafkaApis.scala:201)at kafka.server.KafkaApis.handle(KafkaApis.scala:117)at kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:69)at java.lang.Thread.run(Thread.java:748)

为避免丢失数据,不要删除日志或者断点文件后重启,达到服务正常启动的目的。针对于本问题的解决方法如下:

分别找到上面所指的断点和分区文件,打开文件,会发现文章末尾或某些位置有未知的符号。

出错的文件在文件末尾有:@^等蓝色符号,或者不规范的符号和数据

对比其他服务器上的该文件,可以删除掉这些符号。然后Kafka服务即可重启。

正常replication-offset-checkpoint文件如下:

0
6
test 0 81812
testReceiver-session 0 108
app0-KSTREAM-AGGREGATE-STATE-STORE-0000000003-repartition 0 0
test 1 393337
simpleTest 0 48649
shareplex 0 10

正常recovery-point-offset-checkpoint文件如下:

0
33
dept 1 0
__consumer_offsets 30 241
__consumer_offsets 21 0
qkgj 2 0
bar 5 0
__consumer_offsets 27 3
__consumer_offsets 9 33
bar 1 0
__consumer_offsets 33 189
zyqw 2 0
Partitions-3-test 1 86580
test 0 81812
bar 6 0
__consumer_offsets 36 9
__consumer_offsets 42 1138648
bar 0 0
__consumer_offsets 3 9355
__consumer_offsets 18 4011
__consumer_offsets 15 86
__consumer_offsets 24 4282
testReceiver-session 0 108
app0-KSTREAM-AGGREGATE-STATE-STORE-0000000003-repartition 0 0
__consumer_offsets 48 354426
test 1 393337
bar 7 0
__consumer_offsets 6 42071
bar 4 0
__consumer_offsets 0 37343
__consumer_offsets 39 142047
__consumer_offsets 12 97
__consumer_offsets 45 148239
simpleTest 0 48649
share 0 10


http://www.ppmy.cn/news/313309.html

相关文章

linux(信号结尾)

目录: 1.可重入函数 2.volatile关键字 3.SIGCHLD信号 -------------------------------------------------------------------------------------------------------------------------------- 1.可重入函数----------用来描述一个函数的特点的 1.在单进程当中也存…

Android滴滴路由框架DRouter原理解析

作者:linversion 前言 最近的一个新项目使用了Clean Architecture模块化MVVM架构,将首页每个tab对应的功能都放到单独的模块且不相互依赖,这时就有了模块间页面跳转的问题,经过一番研究选择了滴滴的DRouter,因为其出色…

友华PT925E,电信天翼网关3.0,光猫超级密码获取最简便方式

第一步:核实是否为电信天翼网关3.0,如清楚,请直接跳至第三步 浏览器登录http://192.168.1.1/ 登录后应为下图第二步:使用useradmin账号 和光猫背后的密码登录后,界面显示为下图,即为电信天翼网关3.0 第三…

南天PR2 PR2E PR9 中航 PR-b PR-V PR-C PR-t PR-u PR-d GWI PR2 plus 打印机驱动安装视频教程

南天打印机 电脑驱动安装教程视频 ​ 驱动下载协助安装 打印机驱动:支持所有PR系列打印机 南天Nantian: PR2 PR2E PR9 PR2 plus 中航 : PR-b PR-V PR-C PR-t PR-u PR-d 长城GWI :PR2 plus PR 70 XP/WIN7/WIN8/WIN10 32 64位 等系统打印机驱…

天玑9000+和天玑9000有哪些区别 两者参数对比

天玑9000在今日正式发布了,而作为天玑9000的超频版,在性能上也有所提升,但如果和原版对比,天玑9000和天玑9000有哪些区别?下面来看看两者的参数对比吧。 天玑9000和天玑9000有哪些区别 两者参数对比 6 月 22 日消息&#xff0c…

Autonics PR18-8DN

上升/太阳狮子座 本周(3.15-3.21)狮子座人格魅力大爆发,你们能在工作中获得异性的认可和支持,特别是生活中需要别人支持的时候,总是能如你们所愿。而由于本周会处于忙碌的状态,所以工作压力还是…

巨杉数据库5.0携手南天信息布局云业务

云时代为国产数据库打开了一个全新的思路,上云导致了数据库市场正发生着显著的变化。巨杉数据库最新发布的SequoiaDB v5.0版本,在原生分布式引擎的基础上,拓展多云多平台开放架构。巨杉数据库SequoiaDB多云多平台的运行能力,可以实…

不止是替代 看南天信息与浪潮的金融国产化实践

金融,作为关系国计民生的重要行业,其动态总是引起人们的高度关注。自从国家提出信息技术安全可控战略之后,银行等金融行业内部掀起了一系列的讨论和变革。 众所周知,银行业应用的信息技术产品大多被国外厂商垄断,从硬件…