将多个Spark应用程序提交到独立集群时出错

时间:2019-09-05 02:50:01

标签: apache-spark

如果我使用spark-submit提交两个spark应用程序,则第二个应用程序总是失败,并出现如下错误。

Caused by: java.lang.IllegalStateException: Cannot call methods on a stopped SparkContext.
This stopped SparkContext was created at:
org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:58)

如果我一个接一个地提交它们,即等待上一个应用程序完成,然后再提交另一个,它们都运行良好。

我在这里想念什么?我们的集群使用独立模式。

3 个答案:

答案 0 :(得分:1)

您应该检查几件事-

  1. 检查是否在sparkcontext上使用了stop()关键字。
  2. 您应该使用:

    sparksession.streams()。awaitAnyTermination();

  3. 使用其日志检查Spark-UI上所有正在运行,失败和成功的作业。

答案 1 :(得分:0)

让我知道您要提交的Spark Job类型。如果可能,请添加失败的Spark应用程序的代码段。

答案 2 :(得分:0)

在Spark应用程序中删除显式初始化SparkContext之后,此问题消失了。潜在的机制仍然是个谜。