当前位置: 代码迷 >> 综合 >> assertion failed: Failed to get records for spark-executor3 24025 after after polling for 1000
  详细解决方案

assertion failed: Failed to get records for spark-executor3 24025 after after polling for 1000

热度:69   发布时间:2023-12-17 13:50:30.0

这个问题有必要记录一下!!!!

报错信息如下
在这里插入图片描述
任务运行时,Task锯齿图
在这里插入图片描述
有人说加参数

"spark.streaming.kafka.consumer.poll.ms", 512

如果你尝试这个成功了那么恭喜你,可以关闭此博客了
我们项目遇到了这个问题,加了参数没得用,而且导致job失败,本来job虽然会慢一点,但是加了这个参数则会报上面截图的错误!

左思右想不知道怎么回事儿!
带宽问题?

Nope,局域网内带宽可以忽略不记

Topic问题?

其它的Topic是Ok的唯独这一个Topic有问题,那么我们去指定分区消费其数据!

kafka-console-consumer.sh --bootstrap-server 192.168.1.1:9092 --topic HW_LOCATION --partition 0 

所有的Partition都去消费了一下 且都消费到了数据!

代码问题?

去除逻辑处理代码

我们将所有的逻辑代码去掉只跑拉数据并打印出来,发现问题依旧存在。

还有哪里有问题???

找不到了,去请教大佬,大佬给出的尝试参数

reconnect.backoff.ms" = 0
//尝试重新连接到主机之前等待的时间。 
//避免了高频率反复的连接主机。 

任务跑10分钟没有出现等待40秒的情况了,至此解决!
上面的参数一般不需要配置,感觉问题还是出现在集群不稳定的头上!

  相关解决方案