当执行者数量增加时,纱线上的 spark-sql 挂起 - v1.3.0

spark-sql on yarn hangs when number of executors is increased - v1.3.0

我正在 运行ning spark-sql 上一个蜂巢 table。

使用以下参数启动 spark-shell 时 运行 成功,

"--driver-memory 8G --executor-memory 10G --executor-cores 1 --num-executors 30"

但是当 spark-shell 以

启动时作业挂起

"--driver-memory 8G --executor-memory 10G --executor-cores 1 --num-executors 40"

区别仅在于执行者的数量(30 对 40)。

在第二种情况下,我看到每个执行器上都有 1 个活动任务,但没有 运行。我在 spark-shell.

上没有看到任何 "task completed" 消息

作业 运行 成功,执行者数量低于 30。

我的yarn集群有42个节点,每个节点有30个核心,每个节点大约50G内存。

有没有指向我必须查看的位置的指示?

我比较了两个 运行 的调试级别日志,似乎挂起的 运行 没有任何此类日志行。好的 运行 有一堆这样的台词。

"org.apache.spark.storage.BlockManager logDebug - Level for block broadcast_0_piece0 is StorageLevel(true, true, false, false, 1)" "org.apache.spark.storage.BlockManager logDebug - Level for block broadcast_1 is StorageLevel(true, true, false, true, 1)"

这是因为类路径问题,我包括了一些旧版本的依赖项,删除后不再导致问题