This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-2.1 by this push:
     new f483a7605c8 [fix](nestedtypes) fix nested type with is_exclusive 
(#40434)
f483a7605c8 is described below

commit f483a7605c824b86e985e56bfb11550144210648
Author: amory <wangqian...@selectdb.com>
AuthorDate: Thu Sep 19 12:28:51 2024 +0800

    [fix](nestedtypes) fix nested type with is_exclusive (#40434)
    
    is_exclusive in column_array/map/struct has wrong semantic , we should
    make sure it's nested column is also is_exclusive which can make
    behavior right in some operator like join.
    
    ## Proposed changes
    backport: https://github.com/apache/doris/pull/40398
    Issue Number: close #xxx
    
    <!--Describe your changes.-->
---
 be/src/vec/columns/column_array.h                  |   5 +
 be/src/vec/columns/column_map.h                    |   5 +
 be/src/vec/columns/column_object.cpp               |  10 +
 be/src/vec/columns/column_object.h                 |   2 +
 be/src/vec/columns/column_struct.h                 |   9 +
 .../nested_types/query/sql/nested_with_join.out    |  87 +++
 .../nested_types/query/sql/nested_with_join.sql    | 675 +++++++++++++++++++++
 7 files changed, 793 insertions(+)

diff --git a/be/src/vec/columns/column_array.h 
b/be/src/vec/columns/column_array.h
index b7595e1e6d8..a476c45f94d 100644
--- a/be/src/vec/columns/column_array.h
+++ b/be/src/vec/columns/column_array.h
@@ -130,6 +130,11 @@ public:
     const char* get_family_name() const override { return "Array"; }
     bool is_column_array() const override { return true; }
     bool is_variable_length() const override { return true; }
+
+    bool is_exclusive() const override {
+        return IColumn::is_exclusive() && data->is_exclusive() && 
offsets->is_exclusive();
+    }
+
     MutableColumnPtr clone_resized(size_t size) const override;
     size_t size() const override;
     void resize(size_t n) override;
diff --git a/be/src/vec/columns/column_map.h b/be/src/vec/columns/column_map.h
index 0fe7a8107fa..ce8ff733f89 100644
--- a/be/src/vec/columns/column_map.h
+++ b/be/src/vec/columns/column_map.h
@@ -96,6 +96,11 @@ public:
     MutableColumnPtr clone_resized(size_t size) const override;
     bool is_variable_length() const override { return true; }
 
+    bool is_exclusive() const override {
+        return IColumn::is_exclusive() && keys_column->is_exclusive() &&
+               values_column->is_exclusive() && offsets_column->is_exclusive();
+    }
+
     Field operator[](size_t n) const override;
     void get(size_t n, Field& res) const override;
     StringRef get_data_at(size_t n) const override;
diff --git a/be/src/vec/columns/column_object.cpp 
b/be/src/vec/columns/column_object.cpp
index 97d10671222..71ff45c02e6 100644
--- a/be/src/vec/columns/column_object.cpp
+++ b/be/src/vec/columns/column_object.cpp
@@ -1632,6 +1632,16 @@ void 
ColumnObject::for_each_imutable_subcolumn(ImutableColumnCallback callback)
     }
 }
 
+bool ColumnObject::is_exclusive() const {
+    bool is_exclusive = IColumn::is_exclusive();
+    for_each_imutable_subcolumn([&](const auto& subcolumn) {
+        if (!subcolumn.is_exclusive()) {
+            is_exclusive = false;
+        }
+    });
+    return is_exclusive;
+}
+
 void ColumnObject::update_hash_with_value(size_t n, SipHash& hash) const {
     for_each_imutable_subcolumn(
             [&](const auto& subcolumn) { return 
subcolumn.update_hash_with_value(n, hash); });
diff --git a/be/src/vec/columns/column_object.h 
b/be/src/vec/columns/column_object.h
index 826c305f42e..516d232463e 100644
--- a/be/src/vec/columns/column_object.h
+++ b/be/src/vec/columns/column_object.h
@@ -280,6 +280,8 @@ public:
     // Only single scalar root column
     bool is_scalar_variant() const;
 
+    bool is_exclusive() const override;
+
     ColumnPtr get_root() const { return 
subcolumns.get_root()->data.get_finalized_column_ptr(); }
 
     bool has_subcolumn(const PathInData& key) const;
diff --git a/be/src/vec/columns/column_struct.h 
b/be/src/vec/columns/column_struct.h
index 876373947f2..79240cf89f7 100644
--- a/be/src/vec/columns/column_struct.h
+++ b/be/src/vec/columns/column_struct.h
@@ -90,6 +90,15 @@ public:
 
     bool is_variable_length() const override { return true; }
 
+    bool is_exclusive() const override {
+        for (const auto& col : columns) {
+            if (!col->is_exclusive()) {
+                return false;
+            }
+        }
+        return IColumn::is_exclusive();
+    }
+
     Field operator[](size_t n) const override;
     void get(size_t n, Field& res) const override;
 
diff --git 
a/regression-test/data/datatype_p0/nested_types/query/sql/nested_with_join.out 
b/regression-test/data/datatype_p0/nested_types/query/sql/nested_with_join.out
new file mode 100644
index 00000000000..976323c5807
--- /dev/null
+++ 
b/regression-test/data/datatype_p0/nested_types/query/sql/nested_with_join.out
@@ -0,0 +1,87 @@
+-- This file is automatically generated. You should know what you did if you 
want to edit this
+-- !nested_with_join --
+0
+
+-- !nested_with_join_2 --
+0
+
+-- !nested_with_join_3 --
+0
+
+-- !nested_with_join_4 --
+max_allowed_packet     16777216        16777216        0
+
+-- !nested_with_join_5 --
+0
+
+-- !nested_with_join_6 --
+0
+
+-- !nested_with_join_7 --
+0
+
+-- !nested_with_join_8 --
+0
+
+-- !nested_with_join_9 --
+0
+
+-- !nested_with_join_10 --
+0
+
+-- !nested_with_join_11 --
+0
+
+-- !nested_with_join_12 --
+0
+
+-- !nested_with_join_13 --
+0
+
+-- !nested_with_join_14 --
+0
+
+-- !nested_with_join_15 --
+0
+
+-- !nested_with_join_16 --
+0
+
+-- !nested_with_join_17 --
+0
+
+-- !nested_with_join_18 --
+10
+
+-- !nested_with_join_19 --
+0
+
+-- !nested_with_join_20 --
+10
+
+-- !nested_with_join_21 --
+0
+
+-- !nested_with_join_22 --
+15
+
+-- !nested_with_join_23 --
+0
+
+-- !nested_with_join_24 --
+15
+
+-- !nested_with_join_25 --
+0
+
+-- !nested_with_join_26 --
+10
+
+-- !nested_with_join_27 --
+0
+
+-- !nested_with_join_28 --
+10
+
+-- !nested_with_join_29 --
+
diff --git 
a/regression-test/suites/datatype_p0/nested_types/query/sql/nested_with_join.sql
 
b/regression-test/suites/datatype_p0/nested_types/query/sql/nested_with_join.sql
new file mode 100644
index 00000000000..c7dd64c20e6
--- /dev/null
+++ 
b/regression-test/suites/datatype_p0/nested_types/query/sql/nested_with_join.sql
@@ -0,0 +1,675 @@
+use regression_test_datatype_p0_nested_types_query;
+
+SET ENABLE_DECIMAL256 = TRUE;
+
+set global max_allowed_packet=16777216;
+show variables like "max_allowed_packet";
+
+DROP TABLE IF EXISTS 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by517;
+CREATE TABLE IF NOT EXISTS 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by517
 (
+col_bigint_undef_signed bigint  null  ,
+pk int,
+col_boolean_undef_signed boolean  null  ,
+col_boolean_undef_signed_not_null boolean  not null  ,
+col_tinyint_undef_signed tinyint  null  ,
+col_tinyint_undef_signed_index_inverted tinyint  null  ,
+col_tinyint_undef_signed_not_null tinyint  not null  ,
+col_tinyint_undef_signed_not_null_index_inverted tinyint  not null  ,
+col_smallint_undef_signed smallint  null  ,
+col_smallint_undef_signed_index_inverted smallint  null  ,
+col_smallint_undef_signed_not_null smallint  not null  ,
+col_smallint_undef_signed_not_null_index_inverted smallint  not null  ,
+col_int_undef_signed int  null  ,
+col_int_undef_signed_index_inverted int  null  ,
+col_int_undef_signed_not_null int  not null  ,
+col_int_undef_signed_not_null_index_inverted int  not null  ,
+col_bigint_undef_signed_index_inverted bigint  null  ,
+col_bigint_undef_signed_not_null bigint  not null  ,
+col_bigint_undef_signed_not_null_index_inverted bigint  not null  ,
+col_largeint_undef_signed largeint  null  ,
+col_largeint_undef_signed_not_null largeint  not null  ,
+col_float_undef_signed float  null  ,
+col_float_undef_signed_not_null float  not null  ,
+col_double_undef_signed double  null  ,
+col_double_undef_signed_not_null double  not null  ,
+col_decimal_10_0__undef_signed decimal(10,0)  null  ,
+col_decimal_10_0__undef_signed_index_inverted decimal(10,0)  null  ,
+col_decimal_10_0__undef_signed_not_null decimal(10,0)  not null  ,
+col_decimal_10_0__undef_signed_not_null_index_inverted decimal(10,0)  not null 
 ,
+col_decimal_16_10__undef_signed decimal(16,10)  null  ,
+col_decimal_16_10__undef_signed_index_inverted decimal(16,10)  null  ,
+col_decimal_16_10__undef_signed_not_null decimal(16,10)  not null  ,
+col_decimal_16_10__undef_signed_not_null_index_inverted decimal(16,10)  not 
null  ,
+col_decimal_37__12__undef_signed decimal(37, 12)  null  ,
+col_decimal_37__12__undef_signed_index_inverted decimal(37, 12)  null  ,
+col_decimal_37__12__undef_signed_not_null decimal(37, 12)  not null  ,
+col_decimal_37__12__undef_signed_not_null_index_inverted decimal(37, 12)  not 
null  ,
+col_decimal_17_0__undef_signed decimal(17,0)  null  ,
+col_decimal_17_0__undef_signed_index_inverted decimal(17,0)  null  ,
+col_decimal_17_0__undef_signed_not_null decimal(17,0)  not null  ,
+col_decimal_17_0__undef_signed_not_null_index_inverted decimal(17,0)  not null 
 ,
+col_decimal_8_4__undef_signed decimal(8,4)  null  ,
+col_decimal_8_4__undef_signed_index_inverted decimal(8,4)  null  ,
+col_decimal_8_4__undef_signed_not_null decimal(8,4)  not null  ,
+col_decimal_8_4__undef_signed_not_null_index_inverted decimal(8,4)  not null  ,
+col_decimal_9_0__undef_signed decimal(9,0)  null  ,
+col_decimal_9_0__undef_signed_index_inverted decimal(9,0)  null  ,
+col_decimal_9_0__undef_signed_not_null decimal(9,0)  not null  ,
+col_decimal_9_0__undef_signed_not_null_index_inverted decimal(9,0)  not null  ,
+col_decimal_76__56__undef_signed decimal(76, 56)  null  ,
+col_decimal_76__56__undef_signed_index_inverted decimal(76, 56)  null  ,
+col_decimal_76__56__undef_signed_not_null decimal(76, 56)  not null  ,
+col_decimal_76__56__undef_signed_not_null_index_inverted decimal(76, 56)  not 
null  ,
+col_map_boolean__boolean__undef_signed map<boolean, boolean>  null  ,
+col_map_boolean__boolean__undef_signed_not_null map<boolean, boolean>  not 
null  ,
+col_map_tinyint__tinyint__undef_signed map<tinyint, tinyint>  null  ,
+col_map_tinyint__tinyint__undef_signed_not_null map<tinyint, tinyint>  not 
null  ,
+col_map_smallint__smallint__undef_signed map<smallint, smallint>  null  ,
+col_map_smallint__smallint__undef_signed_not_null map<smallint, smallint>  not 
null  ,
+col_map_int__int__undef_signed map<int, int>  null  ,
+col_map_int__int__undef_signed_not_null map<int, int>  not null  ,
+col_map_bigint__bigint__undef_signed map<bigint, bigint>  null  ,
+col_map_bigint__bigint__undef_signed_not_null map<bigint, bigint>  not null  ,
+col_map_largeint__largeint__undef_signed map<largeint, largeint>  null  ,
+col_map_largeint__largeint__undef_signed_not_null map<largeint, largeint>  not 
null  ,
+col_map_float__float__undef_signed map<float, float>  null  ,
+col_map_float__float__undef_signed_not_null map<float, float>  not null  ,
+col_map_double__double__undef_signed map<double, double>  null  ,
+col_map_double__double__undef_signed_not_null map<double, double>  not null  ,
+col_map_decimal_10_0___decimal_10_0___undef_signed map<decimal(10,0), 
decimal(10,0)>  null  ,
+col_map_decimal_10_0___decimal_10_0___undef_signed_not_null map<decimal(10,0), 
decimal(10,0)>  not null  ,
+col_map_decimal_16_10___decimal_16_10___undef_signed map<decimal(16,10), 
decimal(16,10)>  null  ,
+col_map_decimal_16_10___decimal_16_10___undef_signed_not_null 
map<decimal(16,10), decimal(16,10)>  not null  ,
+col_map_decimal_37__12___decimal_37__12___undef_signed map<decimal(37, 12), 
decimal(37, 12)>  null  ,
+col_map_decimal_37__12___decimal_37__12___undef_signed_not_null 
map<decimal(37, 12), decimal(37, 12)>  not null  ,
+col_map_decimal_17_0___decimal_17_0___undef_signed map<decimal(17,0), 
decimal(17,0)>  null  ,
+col_map_decimal_17_0___decimal_17_0___undef_signed_not_null map<decimal(17,0), 
decimal(17,0)>  not null  ,
+col_map_decimal_8_4___decimal_8_4___undef_signed map<decimal(8,4), 
decimal(8,4)>  null  ,
+col_map_decimal_8_4___decimal_8_4___undef_signed_not_null map<decimal(8,4), 
decimal(8,4)>  not null  ,
+col_map_decimal_9_0___decimal_9_0___undef_signed map<decimal(9,0), 
decimal(9,0)>  null  ,
+col_map_decimal_9_0___decimal_9_0___undef_signed_not_null map<decimal(9,0), 
decimal(9,0)>  not null  ,
+col_map_decimal_76__56___decimal_76__56___undef_signed map<decimal(76, 56), 
decimal(76, 56)>  null  ,
+col_map_decimal_76__56___decimal_76__56___undef_signed_not_null 
map<decimal(76, 56), decimal(76, 56)>  not null  ,
+col_map_char_255___boolean__undef_signed map<char(255), boolean>  null  ,
+col_map_char_255___boolean__undef_signed_not_null map<char(255), boolean>  not 
null  ,
+col_map_char_255___tinyint__undef_signed map<char(255), tinyint>  null  ,
+col_map_char_255___tinyint__undef_signed_not_null map<char(255), tinyint>  not 
null  ,
+col_map_varchar_255___smallint__undef_signed map<varchar(255), smallint>  null 
 ,
+col_map_varchar_255___smallint__undef_signed_not_null map<varchar(255), 
smallint>  not null  ,
+col_map_varchar_255___int__undef_signed map<varchar(255), int>  null  ,
+col_map_varchar_255___int__undef_signed_not_null map<varchar(255), int>  not 
null  ,
+col_map_varchar_65533___bigint__undef_signed map<varchar(65533), bigint>  null 
 ,
+col_map_varchar_65533___bigint__undef_signed_not_null map<varchar(65533), 
bigint>  not null  ,
+col_map_varchar_65533___largeint__undef_signed map<varchar(65533), largeint>  
null  ,
+col_map_varchar_65533___largeint__undef_signed_not_null map<varchar(65533), 
largeint>  not null  ,
+col_map_string__float__undef_signed map<string, float>  null  ,
+col_map_string__float__undef_signed_not_null map<string, float>  not null  ,
+col_map_string__double__undef_signed map<string, double>  null  ,
+col_map_string__double__undef_signed_not_null map<string, double>  not null  ,
+col_map_string__decimal_10_0___undef_signed map<string, decimal(10,0)>  null  ,
+col_map_string__decimal_10_0___undef_signed_not_null map<string, 
decimal(10,0)>  not null  ,
+col_map_varchar_65533___decimal_76__50___undef_signed map<varchar(65533), 
decimal(76, 50)>  null  ,
+col_map_varchar_65533___decimal_76__50___undef_signed_not_null 
map<varchar(65533), decimal(76, 50)>  not null  ,
+col_map_date__boolean__undef_signed map<date, boolean>  null  ,
+col_map_date__boolean__undef_signed_not_null map<date, boolean>  not null  ,
+col_map_date__tinyint__undef_signed map<date, tinyint>  null  ,
+col_map_date__tinyint__undef_signed_not_null map<date, tinyint>  not null  ,
+col_map_date__smallint__undef_signed map<date, smallint>  null  ,
+col_map_date__smallint__undef_signed_not_null map<date, smallint>  not null  ,
+col_map_date__int__undef_signed map<date, int>  null  ,
+col_map_date__int__undef_signed_not_null map<date, int>  not null  ,
+col_map_datetime_6___bigint__undef_signed map<datetime(6), bigint>  null  ,
+col_map_datetime_6___bigint__undef_signed_not_null map<datetime(6), bigint>  
not null  ,
+col_map_datetime_3___largeint__undef_signed map<datetime(3), largeint>  null  ,
+col_map_datetime_3___largeint__undef_signed_not_null map<datetime(3), 
largeint>  not null  ,
+col_map_datetime__float__undef_signed map<datetime, float>  null  ,
+col_map_datetime__float__undef_signed_not_null map<datetime, float>  not null  
,
+col_map_datetime__double__undef_signed map<datetime, double>  null  ,
+col_map_datetime__double__undef_signed_not_null map<datetime, double>  not 
null  ,
+col_map_datetime__decimal_10_0___undef_signed map<datetime, decimal(10,0)>  
null  ,
+col_map_datetime__decimal_10_0___undef_signed_not_null map<datetime, 
decimal(10,0)>  not null  ,
+col_map_datetime__decimal_76__50___undef_signed map<datetime, decimal(76, 50)> 
 null  ,
+col_map_datetime__decimal_76__50___undef_signed_not_null map<datetime, 
decimal(76, 50)>  not null  ,
+col_map_date__decimal_16_10___undef_signed map<date, decimal(16,10)>  null  ,
+col_map_date__decimal_16_10___undef_signed_not_null map<date, decimal(16,10)>  
not null  ,
+col_map_date__decimal_37__12___undef_signed map<date, decimal(37, 12)>  null  ,
+col_map_date__decimal_37__12___undef_signed_not_null map<date, decimal(37, 
12)>  not null  ,
+col_struct struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct2 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_struct3 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct4 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_struct5 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct6 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_variant_undef_signed variant  null  ,
+col_variant_undef_signed_not_null variant  not null  ,
+col_variant_undef_signed2 variant  null  ,
+col_variant_undef_signed_not_null2 variant  not null  ,
+INDEX col_tinyint_undef_signed_index_inverted_idx 
(`col_tinyint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_tinyint_undef_signed_not_null_index_inverted_idx 
(`col_tinyint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_smallint_undef_signed_index_inverted_idx 
(`col_smallint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_smallint_undef_signed_not_null_index_inverted_idx 
(`col_smallint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_int_undef_signed_index_inverted_idx 
(`col_int_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_int_undef_signed_not_null_index_inverted_idx 
(`col_int_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_bigint_undef_signed_index_inverted_idx 
(`col_bigint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_bigint_undef_signed_not_null_index_inverted_idx 
(`col_bigint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_10_0__undef_signed_index_inverted_idx 
(`col_decimal_10_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_10_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_10_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_16_10__undef_signed_index_inverted_idx 
(`col_decimal_16_10__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_16_10__undef_signed_not_null_index_inverted_idx 
(`col_decimal_16_10__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_37__12__undef_signed_index_inverted_idx 
(`col_decimal_37__12__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_37__12__undef_signed_not_null_index_inverted_idx 
(`col_decimal_37__12__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_17_0__undef_signed_index_inverted_idx 
(`col_decimal_17_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_17_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_17_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_8_4__undef_signed_index_inverted_idx 
(`col_decimal_8_4__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_8_4__undef_signed_not_null_index_inverted_idx 
(`col_decimal_8_4__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_9_0__undef_signed_index_inverted_idx 
(`col_decimal_9_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_9_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_9_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_76__56__undef_signed_index_inverted_idx 
(`col_decimal_76__56__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_76__56__undef_signed_not_null_index_inverted_idx 
(`col_decimal_76__56__undef_signed_not_null_index_inverted`) USING INVERTED
+) engine=olap
+DUPLICATE KEY(col_bigint_undef_signed, pk)
+PARTITION BY         RANGE(col_bigint_undef_signed) (
+            PARTITION p0 VALUES LESS THAN (0),
+            PARTITION p1 VALUES LESS THAN (256),
+            PARTITION p2 VALUES LESS THAN (10240),
+            PARTITION p3 VALUES LESS THAN (32767),
+            PARTITION p4 VALUES LESS THAN (65536),
+            PARTITION p5 VALUES LESS THAN (131072),
+            PARTITION p6 VALUES LESS THAN (2621440),
+            PARTITION p7 VALUES LESS THAN (8388607),
+            PARTITION p8 VALUES LESS THAN (2147483647),
+            PARTITION p9 VALUES LESS THAN (21474836480),
+            PARTITION p10 VALUES LESS THAN (292233720368546480),
+            PARTITION p11 VALUES LESS THAN (9223372036854775807),
+            PARTITION pmax VALUES LESS THAN (maxvalue)
+        )
+    
+distributed by hash(pk) buckets 10
+properties("store_row_column" = "true", "replication_num" = "1");
+
+sync;
+select count() from 
table_20_undef_partitions2_keys3_properties4_distributed_by517;
+
+DROP TABLE IF EXISTS 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by515;
+CREATE TABLE IF NOT EXISTS 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by515
 (
+col_int_undef_signed_index_inverted int  null  ,
+pk int,
+col_int_undef_signed int  null  ,
+col_decimal_10_0__undef_signed decimal(10,0)  null  ,
+col_largeint_undef_signed largeint  null  ,
+col_boolean_undef_signed boolean  null  ,
+col_boolean_undef_signed_not_null boolean  not null  ,
+col_tinyint_undef_signed tinyint  null  ,
+col_tinyint_undef_signed_index_inverted tinyint  null  ,
+col_tinyint_undef_signed_not_null tinyint  not null  ,
+col_tinyint_undef_signed_not_null_index_inverted tinyint  not null  ,
+col_smallint_undef_signed smallint  null  ,
+col_smallint_undef_signed_index_inverted smallint  null  ,
+col_smallint_undef_signed_not_null smallint  not null  ,
+col_smallint_undef_signed_not_null_index_inverted smallint  not null  ,
+col_int_undef_signed_not_null int  not null  ,
+col_int_undef_signed_not_null_index_inverted int  not null  ,
+col_bigint_undef_signed bigint  null  ,
+col_bigint_undef_signed_index_inverted bigint  null  ,
+col_bigint_undef_signed_not_null bigint  not null  ,
+col_bigint_undef_signed_not_null_index_inverted bigint  not null  ,
+col_largeint_undef_signed_not_null largeint  not null  ,
+col_float_undef_signed float  null  ,
+col_float_undef_signed_not_null float  not null  ,
+col_double_undef_signed double  null  ,
+col_double_undef_signed_not_null double  not null  ,
+col_decimal_10_0__undef_signed_index_inverted decimal(10,0)  null  ,
+col_decimal_10_0__undef_signed_not_null decimal(10,0)  not null  ,
+col_decimal_10_0__undef_signed_not_null_index_inverted decimal(10,0)  not null 
 ,
+col_decimal_16_10__undef_signed decimal(16,10)  null  ,
+col_decimal_16_10__undef_signed_index_inverted decimal(16,10)  null  ,
+col_decimal_16_10__undef_signed_not_null decimal(16,10)  not null  ,
+col_decimal_16_10__undef_signed_not_null_index_inverted decimal(16,10)  not 
null  ,
+col_decimal_37__12__undef_signed decimal(37, 12)  null  ,
+col_decimal_37__12__undef_signed_index_inverted decimal(37, 12)  null  ,
+col_decimal_37__12__undef_signed_not_null decimal(37, 12)  not null  ,
+col_decimal_37__12__undef_signed_not_null_index_inverted decimal(37, 12)  not 
null  ,
+col_decimal_17_0__undef_signed decimal(17,0)  null  ,
+col_decimal_17_0__undef_signed_index_inverted decimal(17,0)  null  ,
+col_decimal_17_0__undef_signed_not_null decimal(17,0)  not null  ,
+col_decimal_17_0__undef_signed_not_null_index_inverted decimal(17,0)  not null 
 ,
+col_decimal_8_4__undef_signed decimal(8,4)  null  ,
+col_decimal_8_4__undef_signed_index_inverted decimal(8,4)  null  ,
+col_decimal_8_4__undef_signed_not_null decimal(8,4)  not null  ,
+col_decimal_8_4__undef_signed_not_null_index_inverted decimal(8,4)  not null  ,
+col_decimal_9_0__undef_signed decimal(9,0)  null  ,
+col_decimal_9_0__undef_signed_index_inverted decimal(9,0)  null  ,
+col_decimal_9_0__undef_signed_not_null decimal(9,0)  not null  ,
+col_decimal_9_0__undef_signed_not_null_index_inverted decimal(9,0)  not null  ,
+col_decimal_76__56__undef_signed decimal(76, 56)  null  ,
+col_decimal_76__56__undef_signed_index_inverted decimal(76, 56)  null  ,
+col_decimal_76__56__undef_signed_not_null decimal(76, 56)  not null  ,
+col_decimal_76__56__undef_signed_not_null_index_inverted decimal(76, 56)  not 
null  ,
+col_map_boolean__boolean__undef_signed map<boolean, boolean>  null  ,
+col_map_boolean__boolean__undef_signed_not_null map<boolean, boolean>  not 
null  ,
+col_map_tinyint__tinyint__undef_signed map<tinyint, tinyint>  null  ,
+col_map_tinyint__tinyint__undef_signed_not_null map<tinyint, tinyint>  not 
null  ,
+col_map_smallint__smallint__undef_signed map<smallint, smallint>  null  ,
+col_map_smallint__smallint__undef_signed_not_null map<smallint, smallint>  not 
null  ,
+col_map_int__int__undef_signed map<int, int>  null  ,
+col_map_int__int__undef_signed_not_null map<int, int>  not null  ,
+col_map_bigint__bigint__undef_signed map<bigint, bigint>  null  ,
+col_map_bigint__bigint__undef_signed_not_null map<bigint, bigint>  not null  ,
+col_map_largeint__largeint__undef_signed map<largeint, largeint>  null  ,
+col_map_largeint__largeint__undef_signed_not_null map<largeint, largeint>  not 
null  ,
+col_map_float__float__undef_signed map<float, float>  null  ,
+col_map_float__float__undef_signed_not_null map<float, float>  not null  ,
+col_map_double__double__undef_signed map<double, double>  null  ,
+col_map_double__double__undef_signed_not_null map<double, double>  not null  ,
+col_map_decimal_10_0___decimal_10_0___undef_signed map<decimal(10,0), 
decimal(10,0)>  null  ,
+col_map_decimal_10_0___decimal_10_0___undef_signed_not_null map<decimal(10,0), 
decimal(10,0)>  not null  ,
+col_map_decimal_16_10___decimal_16_10___undef_signed map<decimal(16,10), 
decimal(16,10)>  null  ,
+col_map_decimal_16_10___decimal_16_10___undef_signed_not_null 
map<decimal(16,10), decimal(16,10)>  not null  ,
+col_map_decimal_37__12___decimal_37__12___undef_signed map<decimal(37, 12), 
decimal(37, 12)>  null  ,
+col_map_decimal_37__12___decimal_37__12___undef_signed_not_null 
map<decimal(37, 12), decimal(37, 12)>  not null  ,
+col_map_decimal_17_0___decimal_17_0___undef_signed map<decimal(17,0), 
decimal(17,0)>  null  ,
+col_map_decimal_17_0___decimal_17_0___undef_signed_not_null map<decimal(17,0), 
decimal(17,0)>  not null  ,
+col_map_decimal_8_4___decimal_8_4___undef_signed map<decimal(8,4), 
decimal(8,4)>  null  ,
+col_map_decimal_8_4___decimal_8_4___undef_signed_not_null map<decimal(8,4), 
decimal(8,4)>  not null  ,
+col_map_decimal_9_0___decimal_9_0___undef_signed map<decimal(9,0), 
decimal(9,0)>  null  ,
+col_map_decimal_9_0___decimal_9_0___undef_signed_not_null map<decimal(9,0), 
decimal(9,0)>  not null  ,
+col_map_decimal_76__56___decimal_76__56___undef_signed map<decimal(76, 56), 
decimal(76, 56)>  null  ,
+col_map_decimal_76__56___decimal_76__56___undef_signed_not_null 
map<decimal(76, 56), decimal(76, 56)>  not null  ,
+col_map_char_255___boolean__undef_signed map<char(255), boolean>  null  ,
+col_map_char_255___boolean__undef_signed_not_null map<char(255), boolean>  not 
null  ,
+col_map_char_255___tinyint__undef_signed map<char(255), tinyint>  null  ,
+col_map_char_255___tinyint__undef_signed_not_null map<char(255), tinyint>  not 
null  ,
+col_map_varchar_255___smallint__undef_signed map<varchar(255), smallint>  null 
 ,
+col_map_varchar_255___smallint__undef_signed_not_null map<varchar(255), 
smallint>  not null  ,
+col_map_varchar_255___int__undef_signed map<varchar(255), int>  null  ,
+col_map_varchar_255___int__undef_signed_not_null map<varchar(255), int>  not 
null  ,
+col_map_varchar_65533___bigint__undef_signed map<varchar(65533), bigint>  null 
 ,
+col_map_varchar_65533___bigint__undef_signed_not_null map<varchar(65533), 
bigint>  not null  ,
+col_map_varchar_65533___largeint__undef_signed map<varchar(65533), largeint>  
null  ,
+col_map_varchar_65533___largeint__undef_signed_not_null map<varchar(65533), 
largeint>  not null  ,
+col_map_string__float__undef_signed map<string, float>  null  ,
+col_map_string__float__undef_signed_not_null map<string, float>  not null  ,
+col_map_string__double__undef_signed map<string, double>  null  ,
+col_map_string__double__undef_signed_not_null map<string, double>  not null  ,
+col_map_string__decimal_10_0___undef_signed map<string, decimal(10,0)>  null  ,
+col_map_string__decimal_10_0___undef_signed_not_null map<string, 
decimal(10,0)>  not null  ,
+col_map_varchar_65533___decimal_76__50___undef_signed map<varchar(65533), 
decimal(76, 50)>  null  ,
+col_map_varchar_65533___decimal_76__50___undef_signed_not_null 
map<varchar(65533), decimal(76, 50)>  not null  ,
+col_map_date__boolean__undef_signed map<date, boolean>  null  ,
+col_map_date__boolean__undef_signed_not_null map<date, boolean>  not null  ,
+col_map_date__tinyint__undef_signed map<date, tinyint>  null  ,
+col_map_date__tinyint__undef_signed_not_null map<date, tinyint>  not null  ,
+col_map_date__smallint__undef_signed map<date, smallint>  null  ,
+col_map_date__smallint__undef_signed_not_null map<date, smallint>  not null  ,
+col_map_date__int__undef_signed map<date, int>  null  ,
+col_map_date__int__undef_signed_not_null map<date, int>  not null  ,
+col_map_datetime_6___bigint__undef_signed map<datetime(6), bigint>  null  ,
+col_map_datetime_6___bigint__undef_signed_not_null map<datetime(6), bigint>  
not null  ,
+col_map_datetime_3___largeint__undef_signed map<datetime(3), largeint>  null  ,
+col_map_datetime_3___largeint__undef_signed_not_null map<datetime(3), 
largeint>  not null  ,
+col_map_datetime__float__undef_signed map<datetime, float>  null  ,
+col_map_datetime__float__undef_signed_not_null map<datetime, float>  not null  
,
+col_map_datetime__double__undef_signed map<datetime, double>  null  ,
+col_map_datetime__double__undef_signed_not_null map<datetime, double>  not 
null  ,
+col_map_datetime__decimal_10_0___undef_signed map<datetime, decimal(10,0)>  
null  ,
+col_map_datetime__decimal_10_0___undef_signed_not_null map<datetime, 
decimal(10,0)>  not null  ,
+col_map_datetime__decimal_76__50___undef_signed map<datetime, decimal(76, 50)> 
 null  ,
+col_map_datetime__decimal_76__50___undef_signed_not_null map<datetime, 
decimal(76, 50)>  not null  ,
+col_map_date__decimal_16_10___undef_signed map<date, decimal(16,10)>  null  ,
+col_map_date__decimal_16_10___undef_signed_not_null map<date, decimal(16,10)>  
not null  ,
+col_map_date__decimal_37__12___undef_signed map<date, decimal(37, 12)>  null  ,
+col_map_date__decimal_37__12___undef_signed_not_null map<date, decimal(37, 
12)>  not null  ,
+col_struct struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct2 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_struct3 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct4 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_struct5 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct6 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_variant_undef_signed variant  null  ,
+col_variant_undef_signed_not_null variant  not null  ,
+col_variant_undef_signed2 variant  null  ,
+col_variant_undef_signed_not_null2 variant  not null  ,
+INDEX col_tinyint_undef_signed_index_inverted_idx 
(`col_tinyint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_tinyint_undef_signed_not_null_index_inverted_idx 
(`col_tinyint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_smallint_undef_signed_index_inverted_idx 
(`col_smallint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_smallint_undef_signed_not_null_index_inverted_idx 
(`col_smallint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_int_undef_signed_index_inverted_idx 
(`col_int_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_int_undef_signed_not_null_index_inverted_idx 
(`col_int_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_bigint_undef_signed_index_inverted_idx 
(`col_bigint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_bigint_undef_signed_not_null_index_inverted_idx 
(`col_bigint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_10_0__undef_signed_index_inverted_idx 
(`col_decimal_10_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_10_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_10_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_16_10__undef_signed_index_inverted_idx 
(`col_decimal_16_10__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_16_10__undef_signed_not_null_index_inverted_idx 
(`col_decimal_16_10__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_37__12__undef_signed_index_inverted_idx 
(`col_decimal_37__12__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_37__12__undef_signed_not_null_index_inverted_idx 
(`col_decimal_37__12__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_17_0__undef_signed_index_inverted_idx 
(`col_decimal_17_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_17_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_17_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_8_4__undef_signed_index_inverted_idx 
(`col_decimal_8_4__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_8_4__undef_signed_not_null_index_inverted_idx 
(`col_decimal_8_4__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_9_0__undef_signed_index_inverted_idx 
(`col_decimal_9_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_9_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_9_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_76__56__undef_signed_index_inverted_idx 
(`col_decimal_76__56__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_76__56__undef_signed_not_null_index_inverted_idx 
(`col_decimal_76__56__undef_signed_not_null_index_inverted`) USING INVERTED
+) engine=olap
+UNIQUE KEY(col_int_undef_signed_index_inverted, pk, col_int_undef_signed, 
col_decimal_10_0__undef_signed, col_largeint_undef_signed)
+PARTITION BY         RANGE(col_int_undef_signed_index_inverted) (
+            PARTITION p0 VALUES LESS THAN (0),
+            PARTITION p1 VALUES LESS THAN (256),
+            PARTITION p2 VALUES LESS THAN (10240),
+            PARTITION p3 VALUES LESS THAN (32767),
+            PARTITION p4 VALUES LESS THAN (65536),
+            PARTITION p5 VALUES LESS THAN (131072),
+            PARTITION p6 VALUES LESS THAN (2621440),
+            PARTITION p7 VALUES LESS THAN (8388607),
+            PARTITION p8 VALUES LESS THAN (2147483647),
+            PARTITION p9 VALUES LESS THAN (maxvalue)
+        )
+    
+distributed by hash(pk) buckets 10
+properties("store_row_column" = "true", "replication_num" = "1");
+
+sync;
+select count() from 
table_20_undef_partitions2_keys3_properties4_distributed_by515;
+
+DROP TABLE IF EXISTS 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by54;
+CREATE TABLE IF NOT EXISTS 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by54
 (
+col_tinyint_undef_signed_index_inverted tinyint  null  ,
+col_smallint_undef_signed_not_null_index_inverted smallint  not null  ,
+pk int,
+col_int_undef_signed_index_inverted int  null  ,
+col_bigint_undef_signed bigint  null  ,
+col_boolean_undef_signed boolean  null  ,
+col_boolean_undef_signed_not_null boolean  not null  ,
+col_tinyint_undef_signed tinyint  null  ,
+col_tinyint_undef_signed_not_null tinyint  not null  ,
+col_tinyint_undef_signed_not_null_index_inverted tinyint  not null  ,
+col_smallint_undef_signed smallint  null  ,
+col_smallint_undef_signed_index_inverted smallint  null  ,
+col_smallint_undef_signed_not_null smallint  not null  ,
+col_int_undef_signed int  null  ,
+col_int_undef_signed_not_null int  not null  ,
+col_int_undef_signed_not_null_index_inverted int  not null  ,
+col_bigint_undef_signed_index_inverted bigint  null  ,
+col_bigint_undef_signed_not_null bigint  not null  ,
+col_bigint_undef_signed_not_null_index_inverted bigint  not null  ,
+col_largeint_undef_signed largeint  null  ,
+col_largeint_undef_signed_not_null largeint  not null  ,
+col_float_undef_signed float  null  ,
+col_float_undef_signed_not_null float  not null  ,
+col_double_undef_signed double  null  ,
+col_double_undef_signed_not_null double  not null  ,
+col_decimal_10_0__undef_signed decimal(10,0)  null  ,
+col_decimal_10_0__undef_signed_index_inverted decimal(10,0)  null  ,
+col_decimal_10_0__undef_signed_not_null decimal(10,0)  not null  ,
+col_decimal_10_0__undef_signed_not_null_index_inverted decimal(10,0)  not null 
 ,
+col_decimal_16_10__undef_signed decimal(16,10)  null  ,
+col_decimal_16_10__undef_signed_index_inverted decimal(16,10)  null  ,
+col_decimal_16_10__undef_signed_not_null decimal(16,10)  not null  ,
+col_decimal_16_10__undef_signed_not_null_index_inverted decimal(16,10)  not 
null  ,
+col_decimal_37__12__undef_signed decimal(37, 12)  null  ,
+col_decimal_37__12__undef_signed_index_inverted decimal(37, 12)  null  ,
+col_decimal_37__12__undef_signed_not_null decimal(37, 12)  not null  ,
+col_decimal_37__12__undef_signed_not_null_index_inverted decimal(37, 12)  not 
null  ,
+col_decimal_17_0__undef_signed decimal(17,0)  null  ,
+col_decimal_17_0__undef_signed_index_inverted decimal(17,0)  null  ,
+col_decimal_17_0__undef_signed_not_null decimal(17,0)  not null  ,
+col_decimal_17_0__undef_signed_not_null_index_inverted decimal(17,0)  not null 
 ,
+col_decimal_8_4__undef_signed decimal(8,4)  null  ,
+col_decimal_8_4__undef_signed_index_inverted decimal(8,4)  null  ,
+col_decimal_8_4__undef_signed_not_null decimal(8,4)  not null  ,
+col_decimal_8_4__undef_signed_not_null_index_inverted decimal(8,4)  not null  ,
+col_decimal_9_0__undef_signed decimal(9,0)  null  ,
+col_decimal_9_0__undef_signed_index_inverted decimal(9,0)  null  ,
+col_decimal_9_0__undef_signed_not_null decimal(9,0)  not null  ,
+col_decimal_9_0__undef_signed_not_null_index_inverted decimal(9,0)  not null  ,
+col_decimal_76__56__undef_signed decimal(76, 56)  null  ,
+col_decimal_76__56__undef_signed_index_inverted decimal(76, 56)  null  ,
+col_decimal_76__56__undef_signed_not_null decimal(76, 56)  not null  ,
+col_decimal_76__56__undef_signed_not_null_index_inverted decimal(76, 56)  not 
null  ,
+col_map_boolean__boolean__undef_signed map<boolean, boolean>  null  ,
+col_map_boolean__boolean__undef_signed_not_null map<boolean, boolean>  not 
null  ,
+col_map_tinyint__tinyint__undef_signed map<tinyint, tinyint>  null  ,
+col_map_tinyint__tinyint__undef_signed_not_null map<tinyint, tinyint>  not 
null  ,
+col_map_smallint__smallint__undef_signed map<smallint, smallint>  null  ,
+col_map_smallint__smallint__undef_signed_not_null map<smallint, smallint>  not 
null  ,
+col_map_int__int__undef_signed map<int, int>  null  ,
+col_map_int__int__undef_signed_not_null map<int, int>  not null  ,
+col_map_bigint__bigint__undef_signed map<bigint, bigint>  null  ,
+col_map_bigint__bigint__undef_signed_not_null map<bigint, bigint>  not null  ,
+col_map_largeint__largeint__undef_signed map<largeint, largeint>  null  ,
+col_map_largeint__largeint__undef_signed_not_null map<largeint, largeint>  not 
null  ,
+col_map_float__float__undef_signed map<float, float>  null  ,
+col_map_float__float__undef_signed_not_null map<float, float>  not null  ,
+col_map_double__double__undef_signed map<double, double>  null  ,
+col_map_double__double__undef_signed_not_null map<double, double>  not null  ,
+col_map_decimal_10_0___decimal_10_0___undef_signed map<decimal(10,0), 
decimal(10,0)>  null  ,
+col_map_decimal_10_0___decimal_10_0___undef_signed_not_null map<decimal(10,0), 
decimal(10,0)>  not null  ,
+col_map_decimal_16_10___decimal_16_10___undef_signed map<decimal(16,10), 
decimal(16,10)>  null  ,
+col_map_decimal_16_10___decimal_16_10___undef_signed_not_null 
map<decimal(16,10), decimal(16,10)>  not null  ,
+col_map_decimal_37__12___decimal_37__12___undef_signed map<decimal(37, 12), 
decimal(37, 12)>  null  ,
+col_map_decimal_37__12___decimal_37__12___undef_signed_not_null 
map<decimal(37, 12), decimal(37, 12)>  not null  ,
+col_map_decimal_17_0___decimal_17_0___undef_signed map<decimal(17,0), 
decimal(17,0)>  null  ,
+col_map_decimal_17_0___decimal_17_0___undef_signed_not_null map<decimal(17,0), 
decimal(17,0)>  not null  ,
+col_map_decimal_8_4___decimal_8_4___undef_signed map<decimal(8,4), 
decimal(8,4)>  null  ,
+col_map_decimal_8_4___decimal_8_4___undef_signed_not_null map<decimal(8,4), 
decimal(8,4)>  not null  ,
+col_map_decimal_9_0___decimal_9_0___undef_signed map<decimal(9,0), 
decimal(9,0)>  null  ,
+col_map_decimal_9_0___decimal_9_0___undef_signed_not_null map<decimal(9,0), 
decimal(9,0)>  not null  ,
+col_map_decimal_76__56___decimal_76__56___undef_signed map<decimal(76, 56), 
decimal(76, 56)>  null  ,
+col_map_decimal_76__56___decimal_76__56___undef_signed_not_null 
map<decimal(76, 56), decimal(76, 56)>  not null  ,
+col_map_char_255___boolean__undef_signed map<char(255), boolean>  null  ,
+col_map_char_255___boolean__undef_signed_not_null map<char(255), boolean>  not 
null  ,
+col_map_char_255___tinyint__undef_signed map<char(255), tinyint>  null  ,
+col_map_char_255___tinyint__undef_signed_not_null map<char(255), tinyint>  not 
null  ,
+col_map_varchar_255___smallint__undef_signed map<varchar(255), smallint>  null 
 ,
+col_map_varchar_255___smallint__undef_signed_not_null map<varchar(255), 
smallint>  not null  ,
+col_map_varchar_255___int__undef_signed map<varchar(255), int>  null  ,
+col_map_varchar_255___int__undef_signed_not_null map<varchar(255), int>  not 
null  ,
+col_map_varchar_65533___bigint__undef_signed map<varchar(65533), bigint>  null 
 ,
+col_map_varchar_65533___bigint__undef_signed_not_null map<varchar(65533), 
bigint>  not null  ,
+col_map_varchar_65533___largeint__undef_signed map<varchar(65533), largeint>  
null  ,
+col_map_varchar_65533___largeint__undef_signed_not_null map<varchar(65533), 
largeint>  not null  ,
+col_map_string__float__undef_signed map<string, float>  null  ,
+col_map_string__float__undef_signed_not_null map<string, float>  not null  ,
+col_map_string__double__undef_signed map<string, double>  null  ,
+col_map_string__double__undef_signed_not_null map<string, double>  not null  ,
+col_map_string__decimal_10_0___undef_signed map<string, decimal(10,0)>  null  ,
+col_map_string__decimal_10_0___undef_signed_not_null map<string, 
decimal(10,0)>  not null  ,
+col_map_varchar_65533___decimal_76__50___undef_signed map<varchar(65533), 
decimal(76, 50)>  null  ,
+col_map_varchar_65533___decimal_76__50___undef_signed_not_null 
map<varchar(65533), decimal(76, 50)>  not null  ,
+col_map_date__boolean__undef_signed map<date, boolean>  null  ,
+col_map_date__boolean__undef_signed_not_null map<date, boolean>  not null  ,
+col_map_date__tinyint__undef_signed map<date, tinyint>  null  ,
+col_map_date__tinyint__undef_signed_not_null map<date, tinyint>  not null  ,
+col_map_date__smallint__undef_signed map<date, smallint>  null  ,
+col_map_date__smallint__undef_signed_not_null map<date, smallint>  not null  ,
+col_map_date__int__undef_signed map<date, int>  null  ,
+col_map_date__int__undef_signed_not_null map<date, int>  not null  ,
+col_map_datetime_6___bigint__undef_signed map<datetime(6), bigint>  null  ,
+col_map_datetime_6___bigint__undef_signed_not_null map<datetime(6), bigint>  
not null  ,
+col_map_datetime_3___largeint__undef_signed map<datetime(3), largeint>  null  ,
+col_map_datetime_3___largeint__undef_signed_not_null map<datetime(3), 
largeint>  not null  ,
+col_map_datetime__float__undef_signed map<datetime, float>  null  ,
+col_map_datetime__float__undef_signed_not_null map<datetime, float>  not null  
,
+col_map_datetime__double__undef_signed map<datetime, double>  null  ,
+col_map_datetime__double__undef_signed_not_null map<datetime, double>  not 
null  ,
+col_map_datetime__decimal_10_0___undef_signed map<datetime, decimal(10,0)>  
null  ,
+col_map_datetime__decimal_10_0___undef_signed_not_null map<datetime, 
decimal(10,0)>  not null  ,
+col_map_datetime__decimal_76__50___undef_signed map<datetime, decimal(76, 50)> 
 null  ,
+col_map_datetime__decimal_76__50___undef_signed_not_null map<datetime, 
decimal(76, 50)>  not null  ,
+col_map_date__decimal_16_10___undef_signed map<date, decimal(16,10)>  null  ,
+col_map_date__decimal_16_10___undef_signed_not_null map<date, decimal(16,10)>  
not null  ,
+col_map_date__decimal_37__12___undef_signed map<date, decimal(37, 12)>  null  ,
+col_map_date__decimal_37__12___undef_signed_not_null map<date, decimal(37, 
12)>  not null  ,
+col_struct struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct2 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_struct3 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct4 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_struct5 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  null  ,
+col_struct6 struct<c_boolean:boolean, c_tinyint:tinyint, c_smallint:smallint, 
c_int:int, c_bigint:bigint, c_largeint:largeint, c_float:float, 
c_double:double, c_decimal_10_0:decimal(10,0), c_decimal_16_10:decimal(16,10), 
c_decimal_37_12:decimal(37,12), c_decimal_17_0:decimal(17,0), 
c_decimal_8_4:decimal(8,4), c_decimal_9_0:decimal(9,0), 
c_decimal_76_56:decimal(76,56)>  not null  ,
+col_variant_undef_signed variant  null  ,
+col_variant_undef_signed_not_null variant  not null  ,
+col_variant_undef_signed2 variant  null  ,
+col_variant_undef_signed_not_null2 variant  not null  ,
+INDEX col_tinyint_undef_signed_index_inverted_idx 
(`col_tinyint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_tinyint_undef_signed_not_null_index_inverted_idx 
(`col_tinyint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_smallint_undef_signed_index_inverted_idx 
(`col_smallint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_smallint_undef_signed_not_null_index_inverted_idx 
(`col_smallint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_int_undef_signed_index_inverted_idx 
(`col_int_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_int_undef_signed_not_null_index_inverted_idx 
(`col_int_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_bigint_undef_signed_index_inverted_idx 
(`col_bigint_undef_signed_index_inverted`) USING INVERTED,
+INDEX col_bigint_undef_signed_not_null_index_inverted_idx 
(`col_bigint_undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_10_0__undef_signed_index_inverted_idx 
(`col_decimal_10_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_10_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_10_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_16_10__undef_signed_index_inverted_idx 
(`col_decimal_16_10__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_16_10__undef_signed_not_null_index_inverted_idx 
(`col_decimal_16_10__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_37__12__undef_signed_index_inverted_idx 
(`col_decimal_37__12__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_37__12__undef_signed_not_null_index_inverted_idx 
(`col_decimal_37__12__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_17_0__undef_signed_index_inverted_idx 
(`col_decimal_17_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_17_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_17_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_8_4__undef_signed_index_inverted_idx 
(`col_decimal_8_4__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_8_4__undef_signed_not_null_index_inverted_idx 
(`col_decimal_8_4__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_9_0__undef_signed_index_inverted_idx 
(`col_decimal_9_0__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_9_0__undef_signed_not_null_index_inverted_idx 
(`col_decimal_9_0__undef_signed_not_null_index_inverted`) USING INVERTED,
+INDEX col_decimal_76__56__undef_signed_index_inverted_idx 
(`col_decimal_76__56__undef_signed_index_inverted`) USING INVERTED,
+INDEX col_decimal_76__56__undef_signed_not_null_index_inverted_idx 
(`col_decimal_76__56__undef_signed_not_null_index_inverted`) USING INVERTED
+) engine=olap
+DUPLICATE KEY(col_tinyint_undef_signed_index_inverted, 
col_smallint_undef_signed_not_null_index_inverted, pk, 
col_int_undef_signed_index_inverted, col_bigint_undef_signed)
+PARTITION BY         RANGE(col_tinyint_undef_signed_index_inverted, 
col_smallint_undef_signed_not_null_index_inverted) (
+            PARTITION p0 VALUES LESS THAN (0, 0),
+            PARTITION p1 VALUES LESS THAN (10, 256),
+            PARTITION p2 VALUES LESS THAN (50, 10240),
+            PARTITION p3 VALUES LESS THAN (100, 32767),
+            PARTITION p4 VALUES LESS THAN (maxvalue, maxvalue)
+        )
+    
+distributed by hash(pk) buckets 10
+properties("bloom_filter_columns" = "col_smallint_undef_signed, 
col_int_undef_signed, col_bigint_undef_signed, col_largeint_undef_signed, 
col_decimal_10_0__undef_signed, col_decimal_16_10__undef_signed, 
col_variant_undef_signed, col_variant_undef_signed_not_null2", 
"replication_num" = "1");
+
+sync;
+select count() from 
table_20_undef_partitions2_keys3_properties4_distributed_by54;
+
+set global max_allowed_packet=4194304;
+
+insert into 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by54(pk,col_boolean_undef_signed,col_boolean_undef_signed_not_null,col_tinyint_undef_signed,col_tinyint_undef_signed_index_inverted,col_tinyint_undef_signed_not_null,col_tinyint_undef_signed_not_null_index_inverted,col_smallint_undef_signed,col_smallint_undef_signed_index_inverted,col_smallint_undef_signed_not_null,col_smallint_undef_signed_not_null_index_inverted,col_int_u
 [...]
+
+sync;
+select count() from 
table_20_undef_partitions2_keys3_properties4_distributed_by54;
+
+set global max_allowed_packet=4194304;
+insert into 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by515(pk,col_boolean_undef_signed,col_boolean_undef_signed_not_null,col_tinyint_undef_signed,col_tinyint_undef_signed_index_inverted,col_tinyint_undef_signed_not_null,col_tinyint_undef_signed_not_null_index_inverted,col_smallint_undef_signed,col_smallint_undef_signed_index_inverted,col_smallint_undef_signed_not_null,col_smallint_undef_signed_not_null_index_inverted,col_int_
 [...]
+
+sync;
+select count() from 
table_20_undef_partitions2_keys3_properties4_distributed_by515;
+
+set global max_allowed_packet=4194304;
+insert into 
regression_test_datatype_p0_nested_types_query.table_20_undef_partitions2_keys3_properties4_distributed_by517(pk,col_boolean_undef_signed,col_boolean_undef_signed_not_null,col_tinyint_undef_signed,col_tinyint_undef_signed_index_inverted,col_tinyint_undef_signed_not_null,col_tinyint_undef_signed_not_null_index_inverted,col_smallint_undef_signed,col_smallint_undef_signed_index_inverted,col_smallint_undef_signed_not_null,col_smallint_undef_signed_not_null_index_inverted,col_int_
 [...]
+
+sync;
+select count() from 
table_20_undef_partitions2_keys3_properties4_distributed_by517;
+
+-- now select 
+with cte1 as (
+  select 
+    sqrt(
+      abs(
+        col_map_string__double__undef_signed_not_null [ 'RVXWpwRgfy' ]
+      )
+    ) AS col_alias447, 
+    percentile_approx(
+      col_smallint_undef_signed_not_null_index_inverted, 
+      0.8011899967206287, 4467
+    ) col_alias452 
+  from 
+    table_20_undef_partitions2_keys3_properties4_distributed_by515 
+  where 
+    (
+      (
+        (
+          (
+            (
+              col_float_undef_signed_not_null - col_largeint_undef_signed
+            ) >= (
+              select 
+                count (
+                  map_contains_key(
+                    col_map_datetime_3___largeint__undef_signed_not_null, 
+                    '2014-04-24'
+                  )
+                ) 
+              from 
+                table_20_undef_partitions2_keys3_properties4_distributed_by54
+            )
+          ) 
+          AND (
+            (
+              (
+                cast(
+                  col_variant_undef_signed_not_null2 [ "c_int" ] as decimal
+                ) - cardinality(
+                  col_map_string__double__undef_signed_not_null
+                )
+              ) <=> positive(
+                struct_element(col_struct4, 11)
+              )
+            ) 
+            AND (
+              tanh(
+                map_contains_key(
+                  col_map_string__double__undef_signed_not_null, 
+                  'pMRaUXSomb'
+                )
+              ) NOT in (
+                18377, 86.1323, 6, 5, 1188058822, 1, 
+                3
+              )
+            )
+          )
+        ) 
+        OR (
+          floor(col_int_undef_signed) NOT between 71.24729798860186 
+          and 4428082630541069311
+        )
+      ) 
+      AND (
+        col_double_undef_signed_not_null = -1125983298 
+        OR (
+          struct_element(col_struct5, "c_boolean") = (
+            select 
+              max (
+                cast(
+                  col_variant_undef_signed2 [ "c_map_bigint" ][ 
"c_map_bigint_5" ] as decimal
+                )
+              ) 
+            from 
+              table_20_undef_partitions2_keys3_properties4_distributed_by517
+          )
+        )
+      )
+    ) 
+    OR (
+      greatest(
+        struct_element(col_struct, 12), 
+        cast(
+          col_variant_undef_signed2 [ "c_double" ] as double
+        ), 
+        struct_element(col_struct6, "c_double"), 
+        col_tinyint_undef_signed, 
+        col_map_bigint__bigint__undef_signed_not_null [ 18.37077 ]
+      ) <=> 1675317512
+    ) 
+  GROUP BY 
+    col_alias447
+), 
+cte2 as (
+  select 
+    col_alias452 
+  from 
+    cte1 
+  where 
+    col_alias452 NOT in (-27180, 83.0801, 68)
+) 
+select 
+  * 
+from 
+  cte2;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to