小编Jos*_*dao的帖子

Kafka:消息从主题中消失,最大时间=0

我们发现 Apache Kafka 2.3、2.4.0、2.4.1 和 2.5.0 版本的主题中的消息消失了。当我们对集群进行滚动部署时,我们注意到了这一点,不幸的是它并不是每次都会发生,所以它非常不一致。

有时我们会丢失主题内的所有消息,有时我们会丢失分区内的所有消息。当发生这种情况时,以下日志是一个常量:

[2020-04-27 10:36:40,386] INFO [Log partition=test-lost-messages-5, dir=/var/kafkadata/data01/data] Deleting segments List(LogSegment(baseOffset=6, size=728, lastModifiedTime=1587978859000, largestTime=0)) (kafka.log.Log)
Run Code Online (Sandbox Code Playgroud)

之前还有一份日志称该段的保留时间超出了 24 小时。在此示例中,该消息是在部署前大约 12 分钟生成的。

请注意,所有被错误删除的消息largestTime=0和被正确删除的消息都有一个有效的时间戳。从我们从文档和代码中读到的内容来看,它似乎largestTime用于计算给定段是否达到时间违规。

由于我们可以在 Kafka 的多个版本中观察到这一点,因此我们认为这可能与 Kafka 外部的任何内容有关。例如动物园管理员。

有谁知道为什么会发生这种情况?我们使用的是 Zookeeper 3.6.0。

apache-kafka apache-zookeeper

2
推荐指数
1
解决办法
1407
查看次数

标签 统计

apache-kafka ×1

apache-zookeeper ×1