This is an automated email from the ASF dual-hosted git repository.
biyan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/paimon.git
The following commit(s) were added to refs/heads/master by this push:
new 464ed22449 [spark] Support version-specific default configuration
values (#6334)
464ed22449 is described below
commit 464ed224492d77c00ed22864f68f5567721f4f91
Author: Kerwin Zhang <[email protected]>
AuthorDate: Fri Sep 26 21:20:02 2025 +0800
[spark] Support version-specific default configuration values (#6334)
---
.../org/apache/paimon/spark/util/OptionUtils.scala | 23 +++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git
a/paimon-spark/paimon-spark-common/src/main/scala/org/apache/paimon/spark/util/OptionUtils.scala
b/paimon-spark/paimon-spark-common/src/main/scala/org/apache/paimon/spark/util/OptionUtils.scala
index dd35dd394d..d2dbdfd64d 100644
---
a/paimon-spark/paimon-spark-common/src/main/scala/org/apache/paimon/spark/util/OptionUtils.scala
+++
b/paimon-spark/paimon-spark-common/src/main/scala/org/apache/paimon/spark/util/OptionUtils.scala
@@ -47,6 +47,21 @@ object OptionUtils extends SQLConfHelper {
conf.getConfString(s"$PAIMON_OPTION_PREFIX${option.key()}",
option.defaultValue().toString)
}
+ private def getSparkVersionSpecificDefault(option: ConfigOption[_]): String
= {
+ val sparkVersion = org.apache.spark.SPARK_VERSION
+
+ option.key() match {
+ case key if key == SparkConnectorOptions.USE_V2_WRITE.key() =>
+ if (sparkVersion >= "3.4") {
+ "false"
+ } else {
+ option.defaultValue().toString
+ }
+ case _ =>
+ option.defaultValue().toString
+ }
+ }
+
def checkRequiredConfigurations(): Unit = {
if
(getOptionString(SparkConnectorOptions.REQUIRED_SPARK_CONFS_CHECK_ENABLED).toBoolean)
{
if (!paimonExtensionEnabled) {
@@ -60,7 +75,13 @@ object OptionUtils extends SQLConfHelper {
}
def useV2Write(): Boolean = {
- getOptionString(SparkConnectorOptions.USE_V2_WRITE).toBoolean
+ val defaultValue =
getSparkVersionSpecificDefault(SparkConnectorOptions.USE_V2_WRITE)
+ conf
+ .getConfString(
+ s"$PAIMON_OPTION_PREFIX${SparkConnectorOptions.USE_V2_WRITE.key()}",
+ defaultValue
+ )
+ .toBoolean
}
def writeMergeSchemaEnabled(): Boolean = {