From 2094e94c71a11e1f9214f2351a8325630ebe35bd Mon Sep 17 00:00:00 2001 From: Thomas Graves Date: Fri, 11 Sep 2015 14:54:56 +0000 Subject: [PATCH 1/2] [SPARK-10549] scala 2.11 spark on yarn with security - Repl doesn't work --- repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala b/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala index be31eb2eda546..20ed57e799c99 100644 --- a/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala +++ b/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala @@ -35,7 +35,7 @@ object Main extends Logging { s.processArguments(List("-Yrepl-class-based", "-Yrepl-outdir", s"${outputDir.getAbsolutePath}", "-classpath", getAddedJars.mkString(File.pathSeparator)), true) - val classServer = new HttpServer(conf, outputDir, new SecurityManager(conf)) + lazy val classServer = new HttpServer(conf, outputDir, new SecurityManager(conf)) var sparkContext: SparkContext = _ var sqlContext: SQLContext = _ var interp = new SparkILoop // this is a public var because tests reset it. From 2dc7fe244b2fe69cfaf5eff359cde9d02cac92e1 Mon Sep 17 00:00:00 2001 From: Tom Graves Date: Mon, 14 Sep 2015 10:38:43 -0500 Subject: [PATCH 2/2] Add comment --- repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala | 1 + 1 file changed, 1 insertion(+) diff --git a/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala b/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala index 20ed57e799c99..627148df80c11 100644 --- a/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala +++ b/repl/scala-2.11/src/main/scala/org/apache/spark/repl/Main.scala @@ -35,6 +35,7 @@ object Main extends Logging { s.processArguments(List("-Yrepl-class-based", "-Yrepl-outdir", s"${outputDir.getAbsolutePath}", "-classpath", getAddedJars.mkString(File.pathSeparator)), true) + // the creation of SecurityManager has to be lazy so SPARK_YARN_MODE is set if needed lazy val classServer = new HttpServer(conf, outputDir, new SecurityManager(conf)) var sparkContext: SparkContext = _ var sqlContext: SQLContext = _