在运行几个小时后,我不确定导致此异常运行我的Spark作业的原因。
正在运行Spark 2.0.2
任何调试提示?
2016-12-27 03:11:22,199 [shuffle-server-3] ERROR org.apache.spark.network.server.TransportRequestHandler - Error while invoking RpcHandler#receive() for one-way message.
org.apache.spark.SparkException: Could not find CoarseGrainedScheduler.
at org.apache.spark.rpc.netty.Dispatcher.postMessage(Dispatcher.scala:154)
at org.apache.spark.rpc.netty.Dispatcher.postOneWayMessage(Dispatcher.scala:134)
at org.apache.spark.rpc.netty.NettyRpcHandler.receive(NettyRpcEnv.scala:571)
at org.apache.spark.network.server.TransportRequestHandler.processOneWayMessage(TransportRequestHandler.java:180)
at org.apache.spark.network.server.TransportRequestHandler.handle(TransportRequestHandler.java:109)
at org.apache.spark.network.server.TransportChannelHandler.channelRead0(TransportChannelHandler.java:119)
at org.apache.spark.network.server.TransportChannelHandler.channelRead0(TransportChannelHandler.java:51)
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:266)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
at org.apache.spark.network.util.TransportFrameDecoder.channelRead(TransportFrameDecoder.java:85)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEve
答案 0 :(得分:10)
是的,现在我知道那个神秘异常的意思,遗嘱执行人被杀了,因为它超过了容器的门槛。
有几个原因可能会发生,但第一个罪魁祸首是检查你的工作或尝试在你的集群中添加更多的节点/执行器。
答案 1 :(得分:6)
基本上它意味着失败的另一个原因。 尝试在作业日志中找到其他异常。
请参阅此处的“例外”部分: https://medium.com/@wx.london.cun/spark-on-yarn-f74e82ab6070
答案 2 :(得分:4)
这可能是资源问题。尝试增加内核和执行程序的数量,并为应用程序分配更多RAM,然后通过调用重新分区来增加RDD的分区数。理想的分区数取决于先前的设置。希望这会有所帮助。
答案 3 :(得分:0)
对我来说,当我为spark.read.load
指定了不存在的路径时,或者如果我为输入指定了错误的格式,即parquet
而不是csv
,就会发生这种情况。< / p>
不幸的是,实际的错误有时是静默的,发生在堆栈跟踪之上。有时虽然你可以找到另一组堆栈跟踪以及更有意义的堆栈跟踪。
答案 4 :(得分:0)
另一个愚蠢的原因可能是您将火花流awaitTermination中的时间设置为更少的时间,并且在完成之前被终止了
ssc.awaitTermination(timeout)
@param timeout: time to wait in seconds