我正在通过YARN使用Spark提交火花作业,在我的火花作业失败之后,作业仍然显示状态为成功而不是失败。如何将退出代码作为失败状态从代码返回到YARN?
我们如何从代码中发送不同的应用程序代码状态?
答案 0 :(得分:0)
我认为你不能那样做。我与spark-1.6.2经历了相同的行为,但在分析了失败之后,我没有看到任何从我的应用程序发送“坏”退出代码的明显方式。
答案 1 :(得分:0)
我尝试使用
在代码中发送非零退出代码System.exit(1);
没有按预期工作,而@gsamaras在他的回答中提到了相同的内容。以下的工作对我来说虽然使用了try catch。
try{
}
catch {
case e: Exception => {
log.error("Error " + e)
throw e;
} }
答案 2 :(得分:0)
我有同样的问题,通过将部署模式从客户端更改为群集来解决此问题。如果部署模式是客户端,则状态将始终为FINISHED。请参阅https://issues.apache.org/jira/browse/SPARK-3627