diff --git a/core/src/main/scala/org/apache/spark/SparkContext.scala b/core/src/main/scala/org/apache/spark/SparkContext.scala index fc7ea51ab03ce2b2fb8e9da52c6bcb73b5e94266..4f3bb1c87750820fe07423120b82ccfc190874bd 100644 --- a/core/src/main/scala/org/apache/spark/SparkContext.scala +++ b/core/src/main/scala/org/apache/spark/SparkContext.scala @@ -2262,9 +2262,10 @@ object SparkContext extends Logging { SPARK_CONTEXT_CONSTRUCTOR_LOCK.synchronized { if (activeContext.get() == null) { setActiveContext(new SparkContext(config), allowMultipleContexts = false) - } - if (config.getAll.nonEmpty) { - logWarning("Use an existing SparkContext, some configuration may not take effect.") + } else { + if (config.getAll.nonEmpty) { + logWarning("Using an existing SparkContext; some configuration may not take effect.") + } } activeContext.get() } @@ -2281,7 +2282,12 @@ object SparkContext extends Logging { * even if multiple contexts are allowed. */ def getOrCreate(): SparkContext = { - getOrCreate(new SparkConf()) + SPARK_CONTEXT_CONSTRUCTOR_LOCK.synchronized { + if (activeContext.get() == null) { + setActiveContext(new SparkContext(), allowMultipleContexts = false) + } + activeContext.get() + } } /**