diff --git a/backends-velox/src/main/scala/org/apache/gluten/backendsapi/velox/VeloxBackend.scala b/backends-velox/src/main/scala/org/apache/gluten/backendsapi/velox/VeloxBackend.scala index a838897352e3..31b5a56f4f18 100644 --- a/backends-velox/src/main/scala/org/apache/gluten/backendsapi/velox/VeloxBackend.scala +++ b/backends-velox/src/main/scala/org/apache/gluten/backendsapi/velox/VeloxBackend.scala @@ -555,7 +555,7 @@ object VeloxBackendSettings extends BackendSettingsApi { override def reorderColumnsForPartitionWrite(): Boolean = true - override def enableEnhancedFeatures(): Boolean = VeloxConfig.enableEnhancedFeatures() + override def enableEnhancedFeatures(): Boolean = VeloxConfig.get.enableEnhancedFeatures() override def supportAppendDataExec(): Boolean = GlutenConfig.get.enableAppendData && enableEnhancedFeatures() diff --git a/backends-velox/src/main/scala/org/apache/gluten/config/VeloxConfig.scala b/backends-velox/src/main/scala/org/apache/gluten/config/VeloxConfig.scala index d017c11c6348..26b0b58aac34 100644 --- a/backends-velox/src/main/scala/org/apache/gluten/config/VeloxConfig.scala +++ b/backends-velox/src/main/scala/org/apache/gluten/config/VeloxConfig.scala @@ -75,12 +75,13 @@ class VeloxConfig(conf: SQLConf) extends GlutenConfig(conf) { def enableRewriteCastArrayToString: Boolean = getConf(ENABLE_REWRITE_CAST_ARRAY_TO_STRING) + + def enableEnhancedFeatures(): Boolean = ConfigJniWrapper.isEnhancedFeaturesEnabled && + getConf(ENABLE_ENHANCED_FEATURES) } object VeloxConfig { - def enableEnhancedFeatures(): Boolean = ConfigJniWrapper.isEnhancedFeaturesEnabled - def get: VeloxConfig = { new VeloxConfig(SQLConf.get) } @@ -685,4 +686,10 @@ object VeloxConfig { " `concat('[', array_join(array, ', ', null), ']')` to allow offloading to Velox.") .booleanConf .createWithDefault(true) + + val ENABLE_ENHANCED_FEATURES = + buildConf("spark.gluten.sql.enable.enhancedFeatures") + .doc("Enable some features including iceberg native write and other features.") + .booleanConf + .createWithDefault(true) }