HyukjinKwon commented on a change in pull request #23709:
[SPARK-26794][SQL]SparkSession enableHiveSupport does not point to hive but
in-memory while the SparkContext exists
URL: https://github.com/apache/spark/pull/23709#discussion_r253024684
##########
File path:
sql/core/src/main/scala/org/apache/spark/sql/internal/SharedState.scala
##########
@@ -39,8 +39,29 @@ import org.apache.spark.util.{MutableURLClassLoader, Utils}
/**
* A class that holds all state shared across sessions in a given
[[SQLContext]].
+ *
+ * @param sparkContext The Spark context associated with this SharedState
+ * @param initialConfigs The configs from the very first created SparkSession
*/
-private[sql] class SharedState(val sparkContext: SparkContext) extends Logging
{
+private[sql] class SharedState(
+ val sparkContext: SparkContext,
+ initialConfigs: scala.collection.Map[String, String])
+ extends Logging {
+
+ private lazy val (conf, hadoopConf) = {
+ val confClone = sparkContext.conf.clone()
+ val hadoopConfClone = new Configuration(sparkContext.hadoopConfiguration)
+ // If `SparkSession` is instantiated using an existing `SparkContext`
instance and no existing
+ // `SharedState`, all `SparkSession` level configurations have higher
priority to generate a
+ // `SharedState` instance. This will be done only once then shared across
`SparkSession`s
+ for((k, v) <- initialConfigs
+ if k != "hive.metastore.warehouse.dir" || k != WAREHOUSE_PATH.key) {
Review comment:
I think this needs a separate comment.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]