我希望能够在某些特定异常抛出时阻止Spark重试Spark应用程序。我只想在满足某些条件时限制重试次数。否则,我希望按默认的重试次数进行。请注意,一个Spark应用程序只有一个Spark作业。当出现异常时,我尝试设置
javaSparkContext.setLocalProperty("spark.yarn.maxAppAttempts", "1");
,但它仍然会重新尝试整个作业。我是这样提交Spark应用程序的:spark-submit --deploy-mode cluster theSparkApp.jar
我有一个使用情况,如果它是由同一作业的上一次重试创建的,则希望删除输出,但如果输出文件夹不为空(在第1次重试中),则使作业失败。您能想到其他实现此目的的方法吗?
spark-submit --deploy-mode cluster --conf spark.yarn.maxAppAttempts=1
,并在命令行上设置Spark。 - Jacek Laskowski