Repository: spark
Updated Branches:
  refs/heads/branch-1.1 c532acf5e -> 6d1ca2392


[SPARK-4787] Stop SparkContext if a DAGScheduler init error occurs

Author: Dale <[email protected]>

Closes #3809 from tigerquoll/SPARK-4787 and squashes the following commits:

5661e01 [Dale] [SPARK-4787] Ensure that call to stop() doesn't lose the 
exception by using a finally block.
2172578 [Dale] [SPARK-4787] Stop context properly if an exception occurs during 
DAGScheduler initialization.

(cherry picked from commit 3fddc9468fa50e7683caa973fec6c52e1132268d)
Signed-off-by: Josh Rosen <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/6d1ca239
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/6d1ca239
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/6d1ca239

Branch: refs/heads/branch-1.1
Commit: 6d1ca2392a403184511ea1e8508d72778901d57e
Parents: c532acf
Author: Dale <[email protected]>
Authored: Sun Jan 4 13:28:37 2015 -0800
Committer: Josh Rosen <[email protected]>
Committed: Sun Jan 4 13:30:05 2015 -0800

----------------------------------------------------------------------
 core/src/main/scala/org/apache/spark/SparkContext.scala | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/spark/blob/6d1ca239/core/src/main/scala/org/apache/spark/SparkContext.scala
----------------------------------------------------------------------
diff --git a/core/src/main/scala/org/apache/spark/SparkContext.scala 
b/core/src/main/scala/org/apache/spark/SparkContext.scala
index e1e7e83..61c50a8 100644
--- a/core/src/main/scala/org/apache/spark/SparkContext.scala
+++ b/core/src/main/scala/org/apache/spark/SparkContext.scala
@@ -324,8 +324,13 @@ class SparkContext(config: SparkConf) extends Logging {
   try {
     dagScheduler = new DAGScheduler(this)
   } catch {
-    case e: Exception => throw
-      new SparkException("DAGScheduler cannot be initialized due to 
%s".format(e.getMessage))
+    case e: Exception => {
+      try {
+        stop()
+      } finally {
+        throw new SparkException("Error while constructing DAGScheduler", e)
+      }
+    }
   }
 
   // start TaskScheduler after taskScheduler sets DAGScheduler reference in 
DAGScheduler's


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to