This is an automated email from the ASF dual-hosted git repository.
morrysnow pushed a commit to branch branch-3.1
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-3.1 by this push:
new 8031a86464b branch-3.1: [fix](variant) change session var for
disable_variant_flatten_nested to enable_variant_flatten_nested #54413 (#54438)
8031a86464b is described below
commit 8031a86464b3e1c8cfa518ef3346bf42eb616d10
Author: amory <[email protected]>
AuthorDate: Sun Aug 10 23:37:51 2025 +0800
branch-3.1: [fix](variant) change session var for
disable_variant_flatten_nested to enable_variant_flatten_nested #54413 (#54438)
picked from #54413
---
.../org/apache/doris/datasource/InternalCatalog.java | 9 ++++++---
.../main/java/org/apache/doris/qe/SessionVariable.java | 18 +++++++++---------
regression-test/suites/variant_p0/delete_update.groovy | 4 ++--
regression-test/suites/variant_p0/nested.groovy | 2 +-
regression-test/suites/variant_p0/nested2.groovy | 2 +-
.../suites/variant_p0/predefine/load.groovy | 2 +-
.../test_double_write_when_schema_change.groovy | 2 +-
.../suites/variant_p1/predefine/load.groovy | 1 +
8 files changed, 22 insertions(+), 18 deletions(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java
b/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java
index 3d37142b8c4..add9667de5e 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/InternalCatalog.java
@@ -2666,15 +2666,18 @@ public class InternalCatalog implements
CatalogIf<Database> {
boolean variantEnableFlattenNested = false;
try {
variantEnableFlattenNested =
PropertyAnalyzer.analyzeVariantFlattenNested(properties);
- // only if session variable: disable_variant_flatten_nested =
false and
+ // only if session variable: enable_variant_flatten_nested = true
and
// table property: variant_enable_flatten_nested = true
// we can enable variant flatten nested otherwise throw error
- if (ctx != null &&
!ctx.getSessionVariable().getDisableVariantFlattenNested()
+ if (ctx != null &&
ctx.getSessionVariable().getEnableVariantFlattenNested()
&& variantEnableFlattenNested) {
olapTable.setVariantEnableFlattenNested(variantEnableFlattenNested);
} else if (variantEnableFlattenNested) {
throw new DdlException("If you want to enable variant flatten
nested, "
- + "please set session variable:
disable_variant_flatten_nested = false");
+ + "please set session variable:
enable_variant_flatten_nested = true");
+ } else {
+ // keep table property: variant_enable_flatten_nested = false
+ olapTable.setVariantEnableFlattenNested(false);
}
} catch (AnalysisException e) {
throw new DdlException(e.getMessage());
diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
index 4f739717037..340faed0e7c 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/SessionVariable.java
@@ -693,9 +693,9 @@ public class SessionVariable implements Serializable,
Writable {
public static final String DISABLE_INVERTED_INDEX_V1_FOR_VARIANT =
"disable_inverted_index_v1_for_variant";
- // disable variant flatten nested as session variable, default is true,
- // which means disable variant flatten nested when create table
- public static final String DISABLE_VARIANT_FLATTEN_NESTED =
"disable_variant_flatten_nested";
+ // enable variant flatten nested as session variable, default is false,
+ // which means do not flatten nested when create table
+ public static final String ENABLE_VARIANT_FLATTEN_NESTED =
"enable_variant_flatten_nested";
// CLOUD_VARIABLES_BEGIN
public static final String CLOUD_CLUSTER = "cloud_cluster";
@@ -1311,8 +1311,8 @@ public class SessionVariable implements Serializable,
Writable {
@VariableMgr.VarAttr(name = DISABLE_INVERTED_INDEX_V1_FOR_VARIANT,
needForward = true)
private boolean disableInvertedIndexV1ForVaraint = true;
- @VariableMgr.VarAttr(name = DISABLE_VARIANT_FLATTEN_NESTED, needForward =
true)
- private boolean disableVariantFlattenNested = true;
+ @VariableMgr.VarAttr(name = ENABLE_VARIANT_FLATTEN_NESTED, needForward =
true)
+ private boolean enableVariantFlattenNested = false;
public int getBeNumberForTest() {
return beNumberForTest;
@@ -4941,12 +4941,12 @@ public class SessionVariable implements Serializable,
Writable {
return disableInvertedIndexV1ForVaraint;
}
- public void setDisableVariantFlattenNested(boolean
disableVariantFlattenNested) {
- this.disableVariantFlattenNested = disableVariantFlattenNested;
+ public void setEnableVariantFlattenNested(boolean
enableVariantFlattenNested) {
+ this.enableVariantFlattenNested = enableVariantFlattenNested;
}
- public boolean getDisableVariantFlattenNested() {
- return disableVariantFlattenNested;
+ public boolean getEnableVariantFlattenNested() {
+ return enableVariantFlattenNested;
}
public void checkSqlConvertorFeatures(String features) {
diff --git a/regression-test/suites/variant_p0/delete_update.groovy
b/regression-test/suites/variant_p0/delete_update.groovy
index 357e6614ab8..3f6841ccfe1 100644
--- a/regression-test/suites/variant_p0/delete_update.groovy
+++ b/regression-test/suites/variant_p0/delete_update.groovy
@@ -21,7 +21,7 @@ suite("regression_test_variant_delete_and_update",
"variant_type"){
// MOR
def table_name = "var_delete_update"
sql "DROP TABLE IF EXISTS ${table_name}"
- sql """ set disable_variant_flatten_nested = false """
+ sql """ set enable_variant_flatten_nested = true """
sql """
CREATE TABLE IF NOT EXISTS ${table_name} (
k bigint,
@@ -171,4 +171,4 @@ suite("regression_test_variant_delete_and_update",
"variant_type"){
sql "sync"
qt_sql """ select * from ${tableName} order by id;"""
-}
\ No newline at end of file
+}
diff --git a/regression-test/suites/variant_p0/nested.groovy
b/regression-test/suites/variant_p0/nested.groovy
index 934e771b451..c4ba52c6520 100644
--- a/regression-test/suites/variant_p0/nested.groovy
+++ b/regression-test/suites/variant_p0/nested.groovy
@@ -20,7 +20,7 @@ suite("regression_test_variant_nested", "p0"){
def table_name = "var_nested"
sql "DROP TABLE IF EXISTS ${table_name}"
def disable_auto_compaction = Math.random() < 0.5 ? "true" : "false"
- sql "set disable_variant_flatten_nested = false"
+ sql "set enable_variant_flatten_nested = true"
sql """
CREATE TABLE IF NOT EXISTS ${table_name} (
k bigint,
diff --git a/regression-test/suites/variant_p0/nested2.groovy
b/regression-test/suites/variant_p0/nested2.groovy
index b8f2d7de2a2..1c012a138b2 100644
--- a/regression-test/suites/variant_p0/nested2.groovy
+++ b/regression-test/suites/variant_p0/nested2.groovy
@@ -24,7 +24,7 @@ suite("variant_nested_type_conflict", "p0"){
sql "DROP TABLE IF EXISTS ${table_name}"
sql """set describe_extend_variant_column = true"""
- sql """ set disable_variant_flatten_nested = false """
+ sql """ set enable_variant_flatten_nested = true """
sql """
CREATE TABLE IF NOT EXISTS ${table_name} (
k bigint,
diff --git a/regression-test/suites/variant_p0/predefine/load.groovy
b/regression-test/suites/variant_p0/predefine/load.groovy
index 5b4cc703305..696cf68b597 100644
--- a/regression-test/suites/variant_p0/predefine/load.groovy
+++ b/regression-test/suites/variant_p0/predefine/load.groovy
@@ -55,7 +55,7 @@ suite("regression_test_variant_predefine_schema", "p0"){
qt_sql """select * from test_predefine where v1['dt'] is not null order
by id limit 10;"""
sql """DROP TABLE IF EXISTS test_predefine1"""
- sql """ set disable_variant_flatten_nested = false """
+ sql """ set enable_variant_flatten_nested = true """
sql """
CREATE TABLE `test_predefine1` (
`id` bigint NOT NULL,
diff --git
a/regression-test/suites/variant_p0/schema_change/test_double_write_when_schema_change.groovy
b/regression-test/suites/variant_p0/schema_change/test_double_write_when_schema_change.groovy
index a8b78bdd258..3bad6181251 100644
---
a/regression-test/suites/variant_p0/schema_change/test_double_write_when_schema_change.groovy
+++
b/regression-test/suites/variant_p0/schema_change/test_double_write_when_schema_change.groovy
@@ -57,7 +57,7 @@ suite("double_write_schema_change_with_variant",
"nonConcurrent") {
def table_name = "github_events"
sql """DROP TABLE IF EXISTS ${table_name}"""
- sql "set disable_variant_flatten_nested = false"
+ sql "set enable_variant_flatten_nested = true"
sql """
CREATE TABLE IF NOT EXISTS ${table_name} (
k bigint,
diff --git a/regression-test/suites/variant_p1/predefine/load.groovy
b/regression-test/suites/variant_p1/predefine/load.groovy
index ae6012401ef..56e25bac9cc 100644
--- a/regression-test/suites/variant_p1/predefine/load.groovy
+++ b/regression-test/suites/variant_p1/predefine/load.groovy
@@ -55,6 +55,7 @@ suite("test_predefine_type_multi_index", "p1"){
table_name = "github_events"
int rand_subcolumns_count = Math.floor(Math.random() * (611 - 511 + 1)) +
400
// int rand_subcolumns_count = 0;
+ sql """ set enable_variant_flatten_nested = true """
sql """ drop table if exists github_events_2 """
sql """
CREATE TABLE IF NOT EXISTS ${table_name} (
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]