Expiring 1 record(s) for 2:xxx ms has passed since batch问题研究
本文主要对该错误相关文章进行整理,供自己以及各位参考,如有问题请及时指出,谢谢。
报错大意为:生产发送批次已经创建,但是已经过去120000ms,仍然没有发送,消息过期。
【20211015更新】(@高警,感谢提供资料)
当kafka服务器磁盘空间不足时,也会报此错误。清空磁盘空间,重启kafka服务即可解决。
主要原因有两类
https://stackoverflow.com/questions/46649748/kafka-producer-timeoutexception-expiring-1-records
共有3个可能解决方案
- 增大 request.timeout.ms 配置
这个配置指的是 kafka 等待发送批次大小(以字节为单位)的等待时间,如果超过该时间未满足批次大小,将会超时。 - 减少 batch-size 配置
结合上面原因,降低批次条数,少量多发,减少等待时间。 - 网络原因,无法满足高负载
但是也有人提出疑问:
ling.ms 默认值时0,即使批次大小没有达到,也会立即发送的。
即使为了减少频繁发送的情况,假设设置为20ms(小于过期时间120000ms),那么过了这20ms,尽管批次大小没有到,生产者也会发送该批次的,是不会出现超时情况的。- 增大 request.timeout.ms 配置
https://stackoverflow.com/questions/56807188/how-to-fix-kafka-common-errors-timeoutexception-expiring-1-records-xxx-ms-has
该问题提出者,指出 对batch.size linger.ms request.time.out 都进行配置,但是依旧会报错。
仔细查看日志发现,发送消息时,目标topic的目标分区,是负数。
但是在该问题下,未发现更加合理的解决方案以及出现负数的原因,但是,大概率是因为这个问题导致的如标题的报错。个人想法(临时解决该问题)
- 发送消息时,指定某个分区
- 通过ProducerInterceptor重写分区逻辑
但是 要注意 分区逻辑对消费者消费数据是否有影响。
Expiring 1 record(s) for 2:xxx ms has passed since batch问题研究相关推荐
- Expiring 1 record(s) for canalEtl_hn-0: 30017 ms has passed since batch creation plus linger time
一 问题描述 canal instance报错: Caused by: java.util.concurrent.ExecutionException: org.apache.kafka.common ...
- kafka record(s) for xxxxxx: 30043 ms has passed since last append异常
在最近使用kafka过程中,有一部分的客户使用平台时会偶发出现以下错误 刚开始网上找到的答案是对应主题所在分区对应的宿主机处理出现异常导致,故而导致该异常,所以出问题时取查询时并没有发现kafka s ...
- Expiring XXX record(s) for XXX:120015 ms has passed since batch creation
Expiring XXX record(s) for XXX:120015 ms has passed since batch creation 问题背景:dws曝光人+场模型聚合压测,憋量20亿左右 ...
- 【Flink】Flink 写入 kafka 报错 Failed to send data to Kafka: Expiring 4 record(s) for 20001 ms has passed
文章目录 1.场景1 1.1 概述 1.2 百度 1.3 同样问题 2.场景再现 本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载. 1.场景1 1.1 概 ...
- 【Kafka】Failed to send data to Kafka: Expiring 30 record(s) for xxx 732453 ms has passed since last a
文章目录 1.美图 2.背景 2.尝试方案1 3.尝试解决2 本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载. 1.美图 问题与 [Flink]Flink ...
- Hbase RegionServer 启动失败 Time difference of xxx ms max allowed of 30000ms
Hbase RegionServer 启动报错 异常如下: STOPPED: Unhandled: org.apache.hadoop.hbase.ClockOutOfSyncException: S ...
- InnoDB:page_cleaner:1000ms intended loop took [xxx]ms解决
1.在查看mysqllog日志的时候不经意间发现一条这个提示: 1 [Note] InnoDB: page_cleaner: 1000ms intended loop took 16111ms. Th ...
- ERROR: Exception when publishing, exception message [Exec timed out or was interrupted after XXX ms
jenkins执行脚本不退出 我遇到的错误如下: 错误信息: 我在使用Jenkins进行远程部署时,构建后执行的脚本没有正常退出导致. 我的脚本没有写错,干的事情就是启动项目. 而导致它没有正常退出的 ...
- java作为kafka生产者实验及Expiring超时问题解决
[README] java作为生产者,centos 作为消费者: [1]生产者代码 -- pom.xml <!-- 依赖 --> <dependencies><depen ...
最新文章
- C语言配置文件解析库——iniparser
- Tomcat 配置 项目 到tomcat目录外面 和 域名绑定访问(api接口、前端网站、后台管理网站)...
- 【Android 逆向】函数拦截 ( GOT 表拦截 与 插桩拦截 | 插桩拦截简介 | 插桩拦截涉及的 ARM 和 x86 中的跳转指令 )
- tesseract识别图片中文字(一)
- QTP自动化测试框架的基础知识
- 十、探索性数据分析的图形化探索
- netcore读取json文件_【NET Core】.NET Core中读取json配置文件
- 手动升级ubuntu 18.04内核从4.15.0-45-generic到4.15.0-52-generic
- labview自动生成html,使用LabVIEW实现网页数据提取及交互.pptx
- php case语句吗,【PHP公开课|关于PHP switch case语句,你知道怎么用吗,这个例子你一定要来看看】- 环球网校...
- Windows 2003安全事件ID分析(1)
- supervisor 重启_每日一说:说一下supervisor进程管理工具
- rust 官服指令_【RUST】每个RUST玩家都需要的十个指令
- FFmpeg源代码简单分析:libavdevice的avdevice_register_all()
- AJAX通过HTML请求C#一般处理程序
- 20165329 Java实验四 Android程序设计
- 多样化实现Windows Phone 7本地数据库访问1
- 【ECharts教程】在实战中学习(超炫酷的数据可视化大屏)
- Alios-Things之wifi模块二次开发-(1)搭建Alios-Things开发环境(基于ubuntu 16.0.4)
- Flink sql 写ddl连接kafka