@@ -18,6 +18,7 @@ package org.apache.gluten.config
18
18
19
19
import org .apache .spark .internal .Logging
20
20
import org .apache .spark .network .util .ByteUnit
21
+ import org .apache .spark .sql .SparkSession
21
22
import org .apache .spark .sql .internal .{GlutenConfigUtil , SQLConf , SQLConfProvider }
22
23
23
24
import com .google .common .collect .ImmutableList
@@ -33,9 +34,13 @@ case class GlutenNumaBindingInfo(
33
34
totalCoreRange : Array [String ] = null ,
34
35
numCoresPerExecutor : Int = - 1 ) {}
35
36
36
- class GlutenConfig (conf : SQLConf ) extends Logging {
37
+ class GlutenConfig (sessionOpt : Option [ SparkSession ] = None ) extends Logging {
37
38
import GlutenConfig ._
38
39
40
+ def this (spark : SparkSession ) = this (Some (spark))
41
+
42
+ val conf : SQLConf = sessionOpt.map(_.sessionState.conf).getOrElse(SQLConf .get)
43
+
39
44
private lazy val configProvider = new SQLConfProvider (conf)
40
45
41
46
def getConf [T ](entry : ConfigEntry [T ]): T = {
@@ -436,9 +441,7 @@ object GlutenConfig {
436
441
val SPARK_SHUFFLE_SPILL_COMPRESS = " spark.shuffle.spill.compress"
437
442
val SPARK_SHUFFLE_SPILL_COMPRESS_DEFAULT : Boolean = true
438
443
439
- def get : GlutenConfig = {
440
- new GlutenConfig (SQLConf .get)
441
- }
444
+ def get : GlutenConfig = new GlutenConfig ()
442
445
443
446
def prefixOf (backendName : String ): String = {
444
447
GLUTEN_CONFIG_PREFIX + backendName
0 commit comments