【发布时间】:2017-08-09 02:50:06
【问题描述】:
我想在我的 spark 执行器日志中查看完整的堆栈跟踪。
例如:
原因:java.lang.RuntimeException:java.lang.Long 不是 int 模式的有效外部类型 在 org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificUnsafeProjection.apply_0$(generated.java:434) 在 org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificUnsafeProjection.apply(generated.java:737) 在 org.apache.spark.sql.catalyst.encoders.ExpressionEncoder.toRow(ExpressionEncoder.scala:290) ... 18 更多
我想看看还有 18 个缺失的。我曾尝试更改日志级别等,但没有帮助。
【问题讨论】:
-
您使用的是 Spark 用户界面吗?
-
我正在查看我正在工作的 spark 文件夹中的日志,但我认为它与 UI 中的 stderr 和 stdout 相同。
-
我认为,当您在堆栈跟踪中看到
)... x more时,这意味着这些调用已经在其他地方被覆盖(在由或顶级执行中)。由于惰性评估,Spark 堆栈跟踪通常不是最有用的。 -
是的,我确实看到了其他堆栈跟踪,它们似乎是以下堆栈跟踪的一部分。无论如何,我都发现了上面的错误。原来声明地图然后执行 map.values.toList 不会保留声明地图的顺序。谢谢您的帮助。
标签: scala apache-spark