From a0dc74d05160061c45002386dffe0abab2d5f3dc Mon Sep 17 00:00:00 2001 From: witgo Date: Wed, 19 Mar 2014 22:37:53 +0800 Subject: [PATCH 1/2] Fix Stage.name return "apply at Option.scala:120" --- core/src/main/scala/org/apache/spark/util/Utils.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/scala/org/apache/spark/util/Utils.scala b/core/src/main/scala/org/apache/spark/util/Utils.scala index 38a275d438959..ae4ee3d31464a 100644 --- a/core/src/main/scala/org/apache/spark/util/Utils.scala +++ b/core/src/main/scala/org/apache/spark/util/Utils.scala @@ -698,7 +698,7 @@ private[spark] object Utils extends Logging { var finished = false var firstUserClass = "" - for (el <- trace) { + for (el <- trace if el.getClassName != "scala.Option") { if (!finished) { if (SPARK_CLASS_REGEX.findFirstIn(el.getClassName).isDefined) { lastSparkMethod = if (el.getMethodName == "") { From aee3569f07262500b4c0e197f079e6f4319eeefb Mon Sep 17 00:00:00 2001 From: witgo Date: Wed, 19 Mar 2014 23:12:28 +0800 Subject: [PATCH 2/2] Modify the position of the filter --- core/src/main/scala/org/apache/spark/util/Utils.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/scala/org/apache/spark/util/Utils.scala b/core/src/main/scala/org/apache/spark/util/Utils.scala index ae4ee3d31464a..3572a27ca3d2e 100644 --- a/core/src/main/scala/org/apache/spark/util/Utils.scala +++ b/core/src/main/scala/org/apache/spark/util/Utils.scala @@ -686,7 +686,7 @@ private[spark] object Utils extends Logging { */ def getCallSiteInfo: CallSiteInfo = { val trace = Thread.currentThread.getStackTrace().filter( el => - (!el.getMethodName.contains("getStackTrace"))) + ((!el.getMethodName.contains("getStackTrace")) && (el.getClassName != "scala.Option"))) // Keep crawling up the stack trace until we find the first function not inside of the spark // package. We track the last (shallowest) contiguous Spark method. This might be an RDD @@ -698,7 +698,7 @@ private[spark] object Utils extends Logging { var finished = false var firstUserClass = "" - for (el <- trace if el.getClassName != "scala.Option") { + for (el <- trace) { if (!finished) { if (SPARK_CLASS_REGEX.findFirstIn(el.getClassName).isDefined) { lastSparkMethod = if (el.getMethodName == "") {