apache-kafka - Kafka Streams中未确定的“错误发送记录”的原因
问题描述
在运行 Kafka Streams 应用程序时,我在日志中看到以下消息,这些消息导致线程死亡。
ERROR task [1_14] Error sending record (key {"field":"somevalue","uid":"othervalue"}\x00\x00\x01b\x9Fm\xD4\xFD\x00\x00\x01b\x9F,\x04m value [91, 123, 34, 115, ...
该值打印在日志的几行中,这里包含 8 行,每行 64K,来自一条大消息。但是,我已将max.message.bytes
经纪人的限制设置为 5M,因此应该接受。
重新启动任务后,会发生同样的问题,因此此消息似乎充当poison pill
. 使用不同的application.id
作品重新启动,因此可以丢弃网络问题。除了会员资格失败之外,我在经纪人的日志中没有看到任何显示问题的内容:
Member app-09987332-a834-4a70-9dde-2970047a5b01-StreamThread-1-consumer-f01836e1-6edf-4b87-b40d-ef0e8baf4d51 in group app has failed, removing it from the group
什么可能导致这个问题?卡夫卡经纪人 2.3.0,卡夫卡流 2.1.1。
解决方案
这个问题是由于消息太大。AWS 中的日志有时会剪断行并在行编号中进行奇怪的跳跃。
推荐阅读
- crash - 仅在 GDB 中调用的纯虚方法
- java - 删除由@JsonUnwrapped - RestController 导致的 json 中的重复键
- api - API 设计 - 新端点与新微服务
- tensorflow - `nvidia-smi` 之间的内存使用指标有什么区别`nvidia-smi dmon`
- c# - 使用斑马打印机 [ZPL] 在连续标签上打印带有页眉、正文和页脚的票据
- c# - 在 C# 中计算表的总记录数
- c# - ASP.NET Core API 错误:“路由超过允许的最大段数 28”
- flutter - 屏幕加载时地图不会绘制在用户位置上
- c# - Unity 3d,平滑提速(自动)
- javascript - 在字符串数组javascript中设置参数键