由于内存泄漏导致Spark执行器崩溃

时间:2017-10-12 15:49:06

标签: out-of-memory netty spark-streaming apache-spark-2.0

运行带有100个分区的kafka主题数据的spark spark应用程序,并且每个执行程序运行10个执行程序,5个内核和20GB RAM时,执行程序会崩溃并显示以下日志:

  

ERROR ResourceLeakDetector:LEAK:没有调用ByteBuf.release()   在它被垃圾收集之前。启用高级泄漏报告以查找   泄漏发生的地方。

     

ERROR YarnClusterScheduler:在worker23.oct.com上丢失执行者18:   奴隶失去了

     

错误ApplicationMaster:收到的信号期限

此异常出现在spark JIRA中:

https://issues.apache.org/jira/browse/SPARK-17380

有人写道,在升级到spark 2.0.2之后问题就解决了。但是我们使用spark 2.1作为HDP 2.6的一部分。所以我猜这个bug在火花2.1中没有解决。

也有人遇到过这个bug并在spark用户列表中写过但没有回答:

http://apache-spark-user-list.1001560.n3.nabble.com/Spark-Streaming-Receiver-Resource-Leak-td27857.html

顺便说一句 - 流媒体应用不会调用cache()persist(),因此不会涉及任何缓存。

有没有人遇到过崩溃的流媒体应用?

0 个答案:

没有答案