This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch branch-4.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-4.0 by this push:
new 6a27e215623 [feat](function) Add function of deduplicate_map (#58403)
(#58537)
6a27e215623 is described below
commit 6a27e2156230b619c0189af95f6df90916529bb9
Author: Jerry Hu <[email protected]>
AuthorDate: Tue Dec 2 09:43:25 2025 +0800
[feat](function) Add function of deduplicate_map (#58403) (#58537)
Issue Number: close #xxx
PICK PR: #58403
Problem Summary:
None
- Test <!-- At least one of them must be included. -->
- [ ] Regression test
- [ ] Unit Test
- [ ] Manual test (add detailed scripts or steps below)
- [ ] No need to test or manual test. Explain why:
- [ ] This is a refactor/code format and no logic has been changed.
- [ ] Previous test can cover this change. - [ ] No code files have been
changed. - [ ] Other reason <!-- Add your reason? -->
- Behavior changed:
- [ ] No.
- [ ] Yes. <!-- Explain the behavior change -->
- Does this need documentation?
- [ ] No.
- [ ] Yes. <!-- Add document PR link here. eg:
https://github.com/apache/doris-website/pull/1214 -->
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label <!-- Add branch pick label that this PR
should merge into -->
### What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
### Release note
None
### Check List (For Author)
- Test <!-- At least one of them must be included. -->
- [ ] Regression test
- [ ] Unit Test
- [ ] Manual test (add detailed scripts or steps below)
- [ ] No need to test or manual test. Explain why:
- [ ] This is a refactor/code format and no logic has been changed.
- [ ] Previous test can cover this change.
- [ ] No code files have been changed.
- [ ] Other reason <!-- Add your reason? -->
- Behavior changed:
- [ ] No.
- [ ] Yes. <!-- Explain the behavior change -->
- Does this need documentation?
- [ ] No.
- [ ] Yes. <!-- Add document PR link here. eg:
https://github.com/apache/doris-website/pull/1214 -->
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label <!-- Add branch pick label that this PR
should merge into -->
---
be/src/vec/columns/column_map.cpp | 4 +-
be/src/vec/exec/format/orc/vorc_reader.cpp | 2 +-
.../exec/format/parquet/vparquet_column_reader.cpp | 1 -
be/src/vec/exec/jni_connector.cpp | 2 +-
be/src/vec/functions/function_map.cpp | 27 ++++
be/test/vec/exec/orc/orc_reader_fill_data_test.cpp | 12 +-
be/test/vec/function/function_map_test.cpp | 83 ++++++++++++
.../doris/catalog/BuiltinScalarFunctions.java | 2 +
.../functions/scalar/DeduplicateMap.java | 70 ++++++++++
.../one_level_nestedtypes_with_s3data.out | 20 +--
...t => one_level_nestedtypes_with_s3data.out.txt} | 20 +--
.../paimon/test_paimon_catalog.out | 24 ++--
.../one_level_nestedtypes_with_s3data.groovy | 148 ++++++++++++++++-----
13 files changed, 337 insertions(+), 78 deletions(-)
diff --git a/be/src/vec/columns/column_map.cpp
b/be/src/vec/columns/column_map.cpp
index 416bd5628dd..9be40b1a2c3 100644
--- a/be/src/vec/columns/column_map.cpp
+++ b/be/src/vec/columns/column_map.cpp
@@ -517,8 +517,8 @@ Status ColumnMap::deduplicate_keys(bool recursive) {
values_column_ =
(assert_cast<ColumnNullable&>(*values_column)).get_nested_column_ptr();
}
- if (const auto* values_map =
check_and_get_column<ColumnMap>(values_column_.get())) {
-
RETURN_IF_ERROR((const_cast<ColumnMap*>(values_map))->deduplicate_keys(recursive));
+ if (auto* values_map =
check_and_get_column<ColumnMap>(values_column_.get())) {
+
RETURN_IF_ERROR(const_cast<ColumnMap*>(values_map)->deduplicate_keys(recursive));
}
}
diff --git a/be/src/vec/exec/format/orc/vorc_reader.cpp
b/be/src/vec/exec/format/orc/vorc_reader.cpp
index 14b9dbd11a1..b8be037363a 100644
--- a/be/src/vec/exec/format/orc/vorc_reader.cpp
+++ b/be/src/vec/exec/format/orc/vorc_reader.cpp
@@ -1813,7 +1813,7 @@ Status OrcReader::_fill_doris_data_column(const
std::string& col_name,
RETURN_IF_ERROR(_orc_column_to_doris_column<false>(
value_col_name, doris_value_column, doris_value_type,
root_node->get_value_node(),
orc_value_type, orc_map->elements.get(), element_size));
- return doris_map.deduplicate_keys();
+ return Status::OK();
}
case PrimitiveType::TYPE_STRUCT: {
if (orc_column_type->getKind() != orc::TypeKind::STRUCT) {
diff --git a/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp
b/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp
index 170a29b3e94..215f3ec2619 100644
--- a/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp
+++ b/be/src/vec/exec/format/parquet/vparquet_column_reader.cpp
@@ -805,7 +805,6 @@ Status MapColumnReader::read_column_data(
// fill offset and null map
fill_array_offset(_field_schema, map.get_offsets(), null_map_ptr,
_key_reader->get_rep_level(),
_key_reader->get_def_level());
- RETURN_IF_ERROR(map.deduplicate_keys());
DCHECK_EQ(key_column->size(), map.get_offsets().back());
return Status::OK();
diff --git a/be/src/vec/exec/jni_connector.cpp
b/be/src/vec/exec/jni_connector.cpp
index 7168639c59a..b5870a3b5c3 100644
--- a/be/src/vec/exec/jni_connector.cpp
+++ b/be/src/vec/exec/jni_connector.cpp
@@ -485,7 +485,7 @@ Status JniConnector::_fill_map_column(TableMetaAddress&
address, MutableColumnPt
map_offsets[origin_size + num_rows - 1] -
start_offset));
RETURN_IF_ERROR(_fill_column(address, value_column, value_type,
map_offsets[origin_size + num_rows - 1] -
start_offset));
- return map.deduplicate_keys();
+ return Status::OK();
}
Status JniConnector::_fill_struct_column(TableMetaAddress& address,
MutableColumnPtr& doris_column,
diff --git a/be/src/vec/functions/function_map.cpp
b/be/src/vec/functions/function_map.cpp
index 8120f6e7f3b..d902e63ff13 100644
--- a/be/src/vec/functions/function_map.cpp
+++ b/be/src/vec/functions/function_map.cpp
@@ -873,6 +873,32 @@ private:
}
};
+class FunctionDeduplicateMap : public IFunction {
+public:
+ static constexpr auto name = "deduplicate_map";
+ static FunctionPtr create() { return
std::make_shared<FunctionDeduplicateMap>(); }
+
+ String get_name() const override { return name; }
+ size_t get_number_of_arguments() const override { return 1; }
+ bool use_default_implementation_for_nulls() const override { return true; }
+
+ DataTypePtr get_return_type_impl(const DataTypes& arguments) const
override {
+ return arguments[0];
+ }
+
+ Status execute_impl(FunctionContext* context, Block& block, const
ColumnNumbers& arguments,
+ uint32_t result, size_t input_rows_count) const
override {
+ DCHECK_EQ(arguments.size(), 1);
+ auto col_ptr =
block.get_by_position(arguments[0]).column->clone_resized(input_rows_count);
+ auto& col_map = assert_cast<ColumnMap&>(*col_ptr);
+ RETURN_IF_ERROR(col_map.deduplicate_keys());
+ block.replace_by_position(result, std::move(col_ptr));
+ return Status::OK();
+ }
+
+private:
+};
+
void register_function_map(SimpleFunctionFactory& factory) {
factory.register_function<FunctionMap>();
factory.register_function<FunctionMapContains<true>>();
@@ -882,6 +908,7 @@ void register_function_map(SimpleFunctionFactory& factory) {
factory.register_function<FunctionMapEntries>();
factory.register_function<FunctionStrToMap>();
factory.register_function<FunctionMapContainsEntry>();
+ factory.register_function<FunctionDeduplicateMap>();
}
} // namespace doris::vectorized
diff --git a/be/test/vec/exec/orc/orc_reader_fill_data_test.cpp
b/be/test/vec/exec/orc/orc_reader_fill_data_test.cpp
index 01e31ac66fc..bb231ce97eb 100644
--- a/be/test/vec/exec/orc/orc_reader_fill_data_test.cpp
+++ b/be/test/vec/exec/orc/orc_reader_fill_data_test.cpp
@@ -470,12 +470,12 @@ TEST_F(OrcReaderFillDataTest, ComplexTypeConversionTest) {
"| {}|\n"
"| {200:6}|\n"
"| {300:9}|\n"
- "| {400:12}|\n"
- "| {500:15}|\n"
- "| {600:18}|\n"
- "| {700:21}|\n"
- "| {800:24}|\n"
- "| {900:27}|\n"
+ "| {400:12, 400:12}|\n"
+ "| {500:15, 500:15}|\n"
+ "|{600:18, 600:18,...|\n"
+ "|{700:21, 700:21,...|\n"
+ "|{800:24, 800:24,...|\n"
+ "|{900:27, 900:27,...|\n"
"+-------------------+\n");
}
}
diff --git a/be/test/vec/function/function_map_test.cpp
b/be/test/vec/function/function_map_test.cpp
new file mode 100644
index 00000000000..878033e4195
--- /dev/null
+++ b/be/test/vec/function/function_map_test.cpp
@@ -0,0 +1,83 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+#include <fmt/core.h>
+#include <gtest/gtest.h>
+
+#include <string>
+
+#include "function_test_util.h"
+#include "vec/columns/column_array.h"
+#include "vec/core/types.h"
+#include "vec/data_types/data_type_map.h"
+
+namespace doris::vectorized {
+
+TEST(FunctionMapTest, deduplicate_map) {
+ const std::string func_name = "deduplicate_map";
+
+ auto type_map =
std::make_shared<DataTypeMap>(std::make_shared<DataTypeString>(),
+
std::make_shared<DataTypeInt32>());
+ auto argument_template = ColumnsWithTypeAndName {{nullptr, type_map,
"map"}};
+
+ auto function = SimpleFunctionFactory::instance().get_function(
+ func_name, argument_template, type_map, {true},
+ BeExecVersionManager::get_newest_version());
+
+ ASSERT_TRUE(function != nullptr);
+
+ Block block;
+
+ auto key_column = ColumnString::create();
+ auto value_column = ColumnInt32::create();
+ auto offset_column = ColumnArray::ColumnOffsets::create();
+
+ const size_t count = 1024;
+ for (size_t i = 0; i < count; ++i) {
+ // keys with duplicates
+ auto value = int32_t(i % 8);
+ auto key = fmt::format("key_{}", value);
+
+ key_column->insert_data(key.data(), key.size());
+ value_column->insert_data(reinterpret_cast<const char*>(&value), 4);
+ }
+
+ const size_t rows = 32;
+ size_t offset = 0;
+ for (size_t i = 0; i < rows; ++i) {
+ offset += count / rows;
+ offset_column->insert_data(reinterpret_cast<const char*>(&offset),
sizeof(offset));
+ }
+
+ auto column_map = ColumnMap::create(std::move(key_column),
std::move(value_column),
+ std::move(offset_column));
+ block.insert({std::move(column_map), type_map, "map"});
+ block.insert({nullptr, type_map, "result"});
+ uint32_t result = 1;
+
+ auto st = function->execute(nullptr, block, {0}, result, rows);
+ ASSERT_TRUE(st.ok()) << "execute failed: " << st.to_string();
+
+ auto result_column = block.get_by_position(result).column;
+ auto& result_map_column = assert_cast<const ColumnMap&>(*result_column);
+ for (size_t i = 0; i < rows; ++i) {
+ auto map_size = result_map_column.get_offsets()[i] -
+ (i == 0 ? 0 : result_map_column.get_offsets()[i - 1]);
+ ASSERT_EQ(map_size, 8) << "deduplicate map failed at row " << i;
+ }
+}
+} // namespace doris::vectorized
\ No newline at end of file
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
b/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
index e8730d5a538..2d391a02c51 100644
---
a/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
+++
b/fe/fe-core/src/main/java/org/apache/doris/catalog/BuiltinScalarFunctions.java
@@ -177,6 +177,7 @@ import
org.apache.doris.nereids.trees.expressions.functions.scalar.DaysDiff;
import org.apache.doris.nereids.trees.expressions.functions.scalar.DaysSub;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Dceil;
import
org.apache.doris.nereids.trees.expressions.functions.scalar.DecodeAsVarchar;
+import
org.apache.doris.nereids.trees.expressions.functions.scalar.DeduplicateMap;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Degrees;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Dexp;
import org.apache.doris.nereids.trees.expressions.functions.scalar.Dfloor;
@@ -714,6 +715,7 @@ public class BuiltinScalarFunctions implements
FunctionHelper {
scalar(DaysSub.class, "days_sub", "date_sub", "subdate"),
scalar(Dceil.class, "dceil"),
scalar(DecodeAsVarchar.class, "decode_as_varchar"),
+ scalar(DeduplicateMap.class, "deduplicate_map"),
scalar(Degrees.class, "degrees"),
scalar(Dexp.class, "dexp"),
scalar(Dfloor.class, "dfloor"),
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DeduplicateMap.java
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DeduplicateMap.java
new file mode 100644
index 00000000000..d852f22cf4b
--- /dev/null
+++
b/fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DeduplicateMap.java
@@ -0,0 +1,70 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+
+package org.apache.doris.nereids.trees.expressions.functions.scalar;
+
+import org.apache.doris.catalog.FunctionSignature;
+import org.apache.doris.nereids.trees.expressions.Expression;
+import
org.apache.doris.nereids.trees.expressions.functions.ExplicitlyCastableSignature;
+import org.apache.doris.nereids.trees.expressions.functions.PropagateNullable;
+import org.apache.doris.nereids.trees.expressions.shape.UnaryExpression;
+import org.apache.doris.nereids.types.MapType;
+import org.apache.doris.nereids.types.coercion.AnyDataType;
+import org.apache.doris.nereids.types.coercion.FollowToAnyDataType;
+
+import com.google.common.base.Preconditions;
+import com.google.common.collect.ImmutableList;
+
+import java.util.List;
+
+/**
+ * ScalarFunction 'deduplicate_map'.
+ */
+public class DeduplicateMap extends ScalarFunction
+ implements UnaryExpression, ExplicitlyCastableSignature,
PropagateNullable {
+
+ public static final List<FunctionSignature> SIGNATURES = ImmutableList.of(
+ FunctionSignature.ret(MapType.of(new FollowToAnyDataType(0), new
FollowToAnyDataType(1))).args(MapType.of(
+ new AnyDataType(0), new AnyDataType(1)))
+ );
+
+ /**
+ * constructor with 1 argument.
+ */
+ public DeduplicateMap(Expression arg) {
+ super("deduplicate_map", arg);
+ }
+
+ /** constructor for withChildren and reuse signature */
+ public DeduplicateMap(ScalarFunctionParams functionParams) {
+ super(functionParams);
+ }
+
+ /**
+ * withChildren.
+ */
+ @Override
+ public DeduplicateMap withChildren(List<Expression> children) {
+ Preconditions.checkArgument(children.size() == 1);
+ return new DeduplicateMap(getFunctionParams(children));
+ }
+
+ @Override
+ public List<FunctionSignature> getSignatures() {
+ return SIGNATURES;
+ }
+}
diff --git
a/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out
b/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out
index 2db95a0fde9..f78c1805b1e 100644
---
a/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out
+++
b/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out
@@ -2805,16 +2805,16 @@ $Z~+\\/gje9gc=y=JtG^EMBX?Y7g;Mqy,DtDPP~GP
(oV%,ZE=mskl8o<H4ivb7RS#G-59tD`Y3@&1?/h7!,,R8:4k4BW/.:@PlBs<_Cis9rj
-- !sql_s3 --
--6777072274442080184 {1:-26, 0:15} {-125:-28936, 11:6197, 60:4949,
-70:-23123, 113:-6139, -57:17102, -89:-16419, 51:-18321, -114:-6861,
-30:-17942, -60:12876, 41:56, -46:32549, 62:2589, 2:-27049, 45:29643, 63:25953,
-44:44, 47:-26508, -80:27422, 127:-7300, 119:22338, 109:-675, -87:29121,
-3:-9433, 54:15774, 108:8928, -94:10616, -86:7200, 101:-13183, -82:-29375,
-116:9491, -99:-31508, -15:20162, -75:31245, -35:-2542, 96:-6427, 49:-3333,
-54:8803, 24:-31698, -90:7247, -111:14614, 114:21946 [...]
--7160127611483384577 {1:72, 0:-74} {-82:8215, 43:30040, -56:-2545,
-49:-6154, 16:29896, -98:9756, -113:4507, -42:8068, -115:-5811, -75:23572,
64:-1723, -64:14043, 60:756, -12:-4449, 18:-24418, 110:-23962, 48:-5368,
75:3253, 84:18029, 111:-29923, 65:27503, 90:-21022, 108:22788, 28:29720,
71:23686, 37:20496, -78:-32584, -81:25465, -71:-27246, 12:23875, 97:-26710,
-92:9625, 86:24241, -43:13916, 41:17079, 57:9644, -87:-8677, 120:29430,
-54:14722, -122:-8116, -105:-7338, -33:2656, -125:26327, [...]
--7238024935487081628 {0:-74, 1:32} {71:3815, 43:31606, 52:1801, -94:3718,
-41:16460, 104:-13893, 74:13591, 117:-3157, 67:-4619, -107:6142, -63:22542,
73:7410, -19:-22611, -25:18987, -16:-12258, 0:-29473, 87:21859, 14:16205,
86:7619, -24:-19542, -1:32206, 20:9509, 18:31606, 32:18957, 17:4581,
-34:-30291, -27:-20078, 46:14162, 59:20222, -75:-11778, -62:-30937, -11:-9886,
39:12041, -93:-523, 48:-19350, 60:26015, -77:-18030, 22:-22261, 119:20296,
-6:-2752, -89:5992, -28:-23384, 7:-9554, 62:8 [...]
--7255392008719176367 {0:-8, 1:116} {38:-22938, 114:-21453, 127:7282,
-37:2542, -84:-13826, 94:-1516, 84:22023, -61:9811, -109:21976, 72:-16733,
62:28846, 2:-2541, 76:29430, 22:21984, 30:-32320, -111:26414, 89:18424,
-67:16571, 87:3701, -70:15289, 63:-26554, 26:-5462, -81:-12948, -22:-29346,
83:10853, -127:-29350, -73:-16664, 110:-18478, 12:17913, 101:-14838, 36:30608,
-54:-11372, 24:-14972, -6:12083, -116:8333, 50:-27794, -94:-5541, -49:-1194,
31:-13000, 19:-26909, -112:-11155, -95:8985, [...]
--7818940155827210954 {0:-5, 1:-109} {55:-1737, 98:14748, -116:-7149,
42:-2304, -69:-14871, 124:-4756, -74:-23438, 51:8705, -106:27538, -95:6528,
-9:-7390, 110:-5125, 89:-11365, 34:-30268, 3:-22587, 84:-28810, 33:7559,
-35:2280, 92:-30974, 43:19999, -71:24191, 104:5836, 122:-27795, -47:8058,
-10:21736, -24:-5098, -28:10350, -88:-23265, -118:26866, -111:13561, -67:8162,
-107:12238, 41:-3049, 23:30913, -41:-12528, 12:31530, 62:8742, -125:-21707,
-5:-19893, -100:-32758, 14:-5548, 74:-12018, [...]
--8049900041572605215 {1:-94, 0:-71} {-59:-30794, -5:-17656, 101:-1787,
-22:-455, 90:19616, -75:-6450, 21:12655, 41:-9499, -55:18763, -112:-13391,
-19:31593, -46:29421, 27:16920, -67:-22531, -18:-11647, 91:-23328, 50:8055,
64:-31180, 99:30580, -38:-11939, -48:30503, -110:16076, -2:32445, -85:-30546,
-61:14666, -96:-21466, 17:21337, 109:8357, 115:13503, 69:-92, 118:18969,
19:20050, -62:30444, 66:-8713, -74:-9555, 35:2120, 123:25014, 78:-13563,
96:25123, -29:13555, -68:-935, -37:26687, 68:2 [...]
--8363595955396323962 {1:88, 0:60} {-103:-23967, 117:-22927, 42:29869,
-82:6522, -106:-2629, 29:28568, 100:4465, -112:-18765, -89:-15515, -55:11477,
-93:-15657, 122:-27427, -120:24265, 12:2981, 53:10159, 54:6070, 67:19344,
-72:-19512, -35:-1316, -91:12717, 112:-5448, 71:2189, -83:29576, -98:-15893,
51:18207, -111:962, -29:17366, -109:-29581, -116:-8412, 61:-3591, 46:6865,
-95:-26760, 57:5085, -4:-13638, 39:-25967, -53:-12681, -92:-10716, -78:-10370,
3:-29855, 28:29184, -59:-11743, -28:-24 [...]
--8435279828593048652 {1:-84, 0:-122} {-61:20586, -65:-21319, -5:10157,
-42:-11448, 108:30435, 32:27996, -70:-158, 27:-6306, 71:31150, 59:28539,
86:-23363, 96:5515, -101:815, -109:-16879, 93:18247, -87:-14019, -75:18629,
110:-3226, -45:26794, 29:-909, -100:25472, -40:27780, -98:-21090, 55:-22077,
-103:24125, 83:5427, -120:23967, 13:-2463, 116:-30394, 42:2415, 114:28546,
87:-4585, 49:28465, -112:-20263, 62:-21074, -12:17054, -60:-14140, -53:13717,
-116:12882, 5:-6584, -51:-9718, -77:14903, [...]
--8576646141015609435 {1:69, 0:-110} {-18:26310, 19:-28626, 116:22341,
59:-13691, 122:22242, 87:-18146, 90:28116, 103:7501, -102:-6962, 51:-32491,
-122:-29080, 3:29230, 79:3329, -111:-22600, -77:-32109, 80:-27080, 97:1564,
-95:-22651, -3:3784, 91:-31071, -48:6987, 64:-21389, -71:-2772, -103:8060,
35:-27110, -108:-9312, 120:-17956, -22:-24233, 52:-922, -30:7955, -36:-32002,
99:-7485, 33:3627, 102:-154, -119:-23933, -28:-16472, -123:-1957, 117:27195,
45:25120, 111:23424, 56:3295, -79:-24618 [...]
--8992323596915492376 {0:36, 1:48} {37:14321, -23:12567, 43:19247,
67:6207, -77:4208, 42:25316, -19:-5152, -108:12750, 122:4146, 100:-24669,
-9:-26925, -59:20312, 125:-1353, 107:7640, 74:-12584, -82:-24070, 65:-11490,
-72:-15079, 118:23373, 48:15740, -15:-21043, -106:26291, 20:3891, 18:28830,
81:7106, 92:-27544, 63:10968, -38:21643, -117:5979, -41:-25858, -7:2075,
24:7411, 45:-28977, 102:-6309, -78:30605, -64:11757, 89:19981, -58:-20544,
11:435, 29:-5708, -118:-21479, 47:19216, -93:31818, [...]
+-6777072274442080184 {1:72, 0:-74} {-82:8215, 43:30040, -56:-2545,
-49:-6154, 16:29896, -98:9756, -113:4507, -42:8068, -115:-5811, -75:23572,
64:-1723, -64:14043, 60:756, -12:-4449, 18:-24418, 110:-23962, 48:-5368,
75:3253, 84:18029, 111:-29923, 65:27503, 90:-21022, 108:22788, 28:29720,
71:23686, 37:20496, -78:-32584, -81:25465, -71:-27246, 12:23875, 97:-26710,
-92:9625, 86:24241, -43:13916, 41:17079, 57:9644, -87:-8677, 120:29430,
-54:14722, -122:-8116, -105:-7338, -33:2656, -125:26327, [...]
+-7160127611483384577 {0:-113, 1:89} {122:27065, -91:10042, -80:29426,
0:30534, 22:2055, -5:12778, 55:25369, -3:-17428, 13:-2192, -14:4237, 114:13465,
6:-23070, 33:13243, -105:-11460, 88:-7862, 81:21751, -67:25485, -25:-27218,
-26:-13143, 46:27282, 4:18099, 40:32106, 21:-1662, 102:28629, 91:-207, 100:445,
-43:-13639, 123:-8187, -29:-6710, -114:32311, -24:-17666, -12:-25765,
-38:27241, 39:23577, 54:3884, -100:13235, 57:23465, -75:-10120, -73:7449,
109:-9619, -9:-11660, 110:17946, 94:-11912 [...]
+-7238024935487081628 {0:120, 1:-126} {-70:-4800, 30:14930, -96:-30550,
-116:-19484, -48:23756, 74:-26906, 55:2703, -19:-14775, 51:15578, -107:12047,
124:21544, -59:4822, -12:-9575, 108:22642, -35:-28951, 70:-24561, 117:16838,
-80:29400, 64:-9106, 46:-26437, 52:13210, -39:-24652, 9:-7801, 104:7213,
-125:-21123, -98:-14810, -121:-21706, -69:21205, -26:-32472, 82:3477,
-89:-4570, -114:23104, -24:4719, -95:6783, 71:-92, 18:-17598, -32:-10675,
-63:-14903, 107:-32581, -79:-24781, 110:11767, -7 [...]
+-7255392008719176367 {0:-106, 1:23} {-52:275, 14:-29292, 114:1951,
-22:-23425, -118:28570, 100:-21903, 98:20319, -109:15798, 7:-5388, -5:-10672,
66:-4859, 27:-10390, -56:-22931, -55:27816, -114:20167, -51:24624, -36:-8446,
25:-7078, -101:-12915, -23:-14555, 31:7176, -29:2131, 112:13106, -100:-4784,
34:2120, 119:-9391, 122:16360, 89:-25890, 117:-509, 78:17030, 52:-22011,
-99:-1809, 93:1221, 70:13131, 96:-3002, -45:-2743, -46:-27985, 46:17514,
22:-22083, -91:-24281, -41:14421, -4:31183, 69 [...]
+-7818940155827210954 {0:61, 1:6} {-27:22161, -24:-22520, -98:499,
-121:10508, 120:1074, 73:-10515, 106:23265, -58:-21081, -11:-24472, 65:23788,
-86:-13155, 117:-18608, 41:-14212, 25:-18956, -66:23012, 63:-3062, -87:-6865,
80:16093, 59:-18083, 38:-12970, -23:-23493, -40:-30428, 112:-3317, -54:-27201,
34:-30160, 4:-31208, 3:32702, 125:-16835, 2:11226, -116:-4774, 29:-18815,
94:-2420, 48:22502, 123:3781, 78:20144, 96:-23460, -110:4124, -36:-21280,
-33:12734, -103:17131, 66:-27952, -9:23246, [...]
+-8049900041572605215 {0:121, 1:-23} {89:-11338, 21:7752, -24:4151,
96:-5826, -118:17385, 85:23092, 116:2581, 102:21442, 121:-14364, 57:-26858,
70:12822, 60:30079, 18:16581, 94:10885, -9:-24962, -53:810, -17:32165,
79:27871, -125:2530, 7:-16581, -52:-22682, -99:22277, 69:25792, 78:-340,
93:27375, -44:-10475, -91:-6267, -119:4461, 87:-19347, 37:-14546, -4:-21841,
1:-29265, 83:18046, 99:-10988, 44:-1001, 59:11401, 107:-11896, -7:31282,
100:5857, -59:-27676, 112:24514, 51:28998, 88:-12721, 8 [...]
+-8363595955396323962 {1:13, 0:17} {-21:-9240, 14:-3853, 17:5008,
2:-28004, 102:-17420, 81:7531, 50:-25539, 28:-1550, 82:-32476, -83:-24627,
127:1590, 110:18990, -11:-6538, -103:1092, -48:-22972, -42:-26914, 7:13567,
-24:-31173, 13:-5668, 119:-5889, 77:14710, -63:16986, 34:20499, 56:-12276,
-51:849, -41:-7515, 19:-9058, 113:-20508, -69:-31830, -14:-29776, -27:-9832,
51:-18021, -61:4503, -67:26158, -124:-13172, 48:5068, 24:29305, -73:-227,
15:27864, 67:-6950, 1:-19237, -122:889, -115:5832, [...]
+-8435279828593048652 {0:83, 1:-36} {-93:-5900, 27:10478, -25:3184,
47:15013, -35:-10662, -26:-7429, -38:8248, 20:-1193, -106:-19269, 52:28228,
94:4498, 109:-18312, -119:5896, -32:19372, 35:20732, 82:-5812, 123:-30205,
-98:-32598, -97:21748, -3:-404, 121:17731, -7:-7666, -59:29444, -83:-20733,
31:-27772, -11:31564, 36:-899, -40:-31587, -64:-21656, 93:15575, -28:12843,
88:-9173, -23:-24773, 101:7170, 30:24722, 38:25115, 87:-21702, 53:-24433,
-66:8169, -102:-19758, -24:23644, 4:8235, -105:1 [...]
+-8576646141015609435 {0:13, 1:-128} {-56:-30914, -70:10619, -6:-21052,
-69:-24753, -60:-31410, 25:-11360, 102:-5748, 92:10641, -62:-4904, -76:-14077,
-97:30425, -107:-22024, 54:11568, -27:14488, -66:-21132, -87:-13990, -50:6196,
75:16224, -32:-14751, 39:21922, 16:-17448, -28:-30912, -89:-16019, 126:14369,
-14:-9497, -30:17837, 66:-20431, 34:-13901, -58:-18120, 44:14729, 23:8613,
-124:-16592, 103:-1816, 24:19927, 89:4633, -104:-29595, -92:-27005, 87:5223,
74:-19020, -33:19666, 65:1086, -1 [...]
+-8992323596915492376 {1:2, 0:107} {-19:25264, -48:-1776, 32:10911,
39:31579, 58:-19163, 73:-22021, -45:-24397, 49:-20669, -24:-12038, 54:-29428,
-11:2966, -92:-21385, 75:29266, -14:18605, -10:-15399, -13:1853, -95:26721,
78:-14569, 96:-4428, -49:5455, -113:3678, -6:-24382, 61:-22545, -80:-32692,
40:26775, -119:9338, 11:3067, -65:31452, 44:-11587, 114:-30705, -57:16219,
-47:7433, 121:11348, 127:-3498, 24:16689, 47:4074, -126:2317, 30:9721,
64:-18491, -52:-17526, -9:12274, 23:-30587, -35:2 [...]
-- !sql_s3 --
-6777072274442080184 {1:72, 0:-74} {-82:8215, 43:30040, -56:-2545,
-49:-6154, 16:29896, -98:9756, -113:4507, -42:8068, -115:-5811, -75:23572,
64:-1723, -64:14043, 60:756, -12:-4449, 18:-24418, 110:-23962, 48:-5368,
75:3253, 84:18029, 111:-29923, 65:27503, 90:-21022, 108:22788, 28:29720,
71:23686, 37:20496, -78:-32584, -81:25465, -71:-27246, 12:23875, 97:-26710,
-92:9625, 86:24241, -43:13916, 41:17079, 57:9644, -87:-8677, 120:29430,
-54:14722, -122:-8116, -105:-7338, -33:2656, -125:26327, [...]
diff --git
a/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out
b/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out.txt
similarity index 84%
copy from
regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out
copy to
regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out.txt
index 2db95a0fde9..f78c1805b1e 100644
---
a/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out
+++
b/regression-test/data/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.out.txt
@@ -2805,16 +2805,16 @@ $Z~+\\/gje9gc=y=JtG^EMBX?Y7g;Mqy,DtDPP~GP
(oV%,ZE=mskl8o<H4ivb7RS#G-59tD`Y3@&1?/h7!,,R8:4k4BW/.:@PlBs<_Cis9rj
-- !sql_s3 --
--6777072274442080184 {1:-26, 0:15} {-125:-28936, 11:6197, 60:4949,
-70:-23123, 113:-6139, -57:17102, -89:-16419, 51:-18321, -114:-6861,
-30:-17942, -60:12876, 41:56, -46:32549, 62:2589, 2:-27049, 45:29643, 63:25953,
-44:44, 47:-26508, -80:27422, 127:-7300, 119:22338, 109:-675, -87:29121,
-3:-9433, 54:15774, 108:8928, -94:10616, -86:7200, 101:-13183, -82:-29375,
-116:9491, -99:-31508, -15:20162, -75:31245, -35:-2542, 96:-6427, 49:-3333,
-54:8803, 24:-31698, -90:7247, -111:14614, 114:21946 [...]
--7160127611483384577 {1:72, 0:-74} {-82:8215, 43:30040, -56:-2545,
-49:-6154, 16:29896, -98:9756, -113:4507, -42:8068, -115:-5811, -75:23572,
64:-1723, -64:14043, 60:756, -12:-4449, 18:-24418, 110:-23962, 48:-5368,
75:3253, 84:18029, 111:-29923, 65:27503, 90:-21022, 108:22788, 28:29720,
71:23686, 37:20496, -78:-32584, -81:25465, -71:-27246, 12:23875, 97:-26710,
-92:9625, 86:24241, -43:13916, 41:17079, 57:9644, -87:-8677, 120:29430,
-54:14722, -122:-8116, -105:-7338, -33:2656, -125:26327, [...]
--7238024935487081628 {0:-74, 1:32} {71:3815, 43:31606, 52:1801, -94:3718,
-41:16460, 104:-13893, 74:13591, 117:-3157, 67:-4619, -107:6142, -63:22542,
73:7410, -19:-22611, -25:18987, -16:-12258, 0:-29473, 87:21859, 14:16205,
86:7619, -24:-19542, -1:32206, 20:9509, 18:31606, 32:18957, 17:4581,
-34:-30291, -27:-20078, 46:14162, 59:20222, -75:-11778, -62:-30937, -11:-9886,
39:12041, -93:-523, 48:-19350, 60:26015, -77:-18030, 22:-22261, 119:20296,
-6:-2752, -89:5992, -28:-23384, 7:-9554, 62:8 [...]
--7255392008719176367 {0:-8, 1:116} {38:-22938, 114:-21453, 127:7282,
-37:2542, -84:-13826, 94:-1516, 84:22023, -61:9811, -109:21976, 72:-16733,
62:28846, 2:-2541, 76:29430, 22:21984, 30:-32320, -111:26414, 89:18424,
-67:16571, 87:3701, -70:15289, 63:-26554, 26:-5462, -81:-12948, -22:-29346,
83:10853, -127:-29350, -73:-16664, 110:-18478, 12:17913, 101:-14838, 36:30608,
-54:-11372, 24:-14972, -6:12083, -116:8333, 50:-27794, -94:-5541, -49:-1194,
31:-13000, 19:-26909, -112:-11155, -95:8985, [...]
--7818940155827210954 {0:-5, 1:-109} {55:-1737, 98:14748, -116:-7149,
42:-2304, -69:-14871, 124:-4756, -74:-23438, 51:8705, -106:27538, -95:6528,
-9:-7390, 110:-5125, 89:-11365, 34:-30268, 3:-22587, 84:-28810, 33:7559,
-35:2280, 92:-30974, 43:19999, -71:24191, 104:5836, 122:-27795, -47:8058,
-10:21736, -24:-5098, -28:10350, -88:-23265, -118:26866, -111:13561, -67:8162,
-107:12238, 41:-3049, 23:30913, -41:-12528, 12:31530, 62:8742, -125:-21707,
-5:-19893, -100:-32758, 14:-5548, 74:-12018, [...]
--8049900041572605215 {1:-94, 0:-71} {-59:-30794, -5:-17656, 101:-1787,
-22:-455, 90:19616, -75:-6450, 21:12655, 41:-9499, -55:18763, -112:-13391,
-19:31593, -46:29421, 27:16920, -67:-22531, -18:-11647, 91:-23328, 50:8055,
64:-31180, 99:30580, -38:-11939, -48:30503, -110:16076, -2:32445, -85:-30546,
-61:14666, -96:-21466, 17:21337, 109:8357, 115:13503, 69:-92, 118:18969,
19:20050, -62:30444, 66:-8713, -74:-9555, 35:2120, 123:25014, 78:-13563,
96:25123, -29:13555, -68:-935, -37:26687, 68:2 [...]
--8363595955396323962 {1:88, 0:60} {-103:-23967, 117:-22927, 42:29869,
-82:6522, -106:-2629, 29:28568, 100:4465, -112:-18765, -89:-15515, -55:11477,
-93:-15657, 122:-27427, -120:24265, 12:2981, 53:10159, 54:6070, 67:19344,
-72:-19512, -35:-1316, -91:12717, 112:-5448, 71:2189, -83:29576, -98:-15893,
51:18207, -111:962, -29:17366, -109:-29581, -116:-8412, 61:-3591, 46:6865,
-95:-26760, 57:5085, -4:-13638, 39:-25967, -53:-12681, -92:-10716, -78:-10370,
3:-29855, 28:29184, -59:-11743, -28:-24 [...]
--8435279828593048652 {1:-84, 0:-122} {-61:20586, -65:-21319, -5:10157,
-42:-11448, 108:30435, 32:27996, -70:-158, 27:-6306, 71:31150, 59:28539,
86:-23363, 96:5515, -101:815, -109:-16879, 93:18247, -87:-14019, -75:18629,
110:-3226, -45:26794, 29:-909, -100:25472, -40:27780, -98:-21090, 55:-22077,
-103:24125, 83:5427, -120:23967, 13:-2463, 116:-30394, 42:2415, 114:28546,
87:-4585, 49:28465, -112:-20263, 62:-21074, -12:17054, -60:-14140, -53:13717,
-116:12882, 5:-6584, -51:-9718, -77:14903, [...]
--8576646141015609435 {1:69, 0:-110} {-18:26310, 19:-28626, 116:22341,
59:-13691, 122:22242, 87:-18146, 90:28116, 103:7501, -102:-6962, 51:-32491,
-122:-29080, 3:29230, 79:3329, -111:-22600, -77:-32109, 80:-27080, 97:1564,
-95:-22651, -3:3784, 91:-31071, -48:6987, 64:-21389, -71:-2772, -103:8060,
35:-27110, -108:-9312, 120:-17956, -22:-24233, 52:-922, -30:7955, -36:-32002,
99:-7485, 33:3627, 102:-154, -119:-23933, -28:-16472, -123:-1957, 117:27195,
45:25120, 111:23424, 56:3295, -79:-24618 [...]
--8992323596915492376 {0:36, 1:48} {37:14321, -23:12567, 43:19247,
67:6207, -77:4208, 42:25316, -19:-5152, -108:12750, 122:4146, 100:-24669,
-9:-26925, -59:20312, 125:-1353, 107:7640, 74:-12584, -82:-24070, 65:-11490,
-72:-15079, 118:23373, 48:15740, -15:-21043, -106:26291, 20:3891, 18:28830,
81:7106, 92:-27544, 63:10968, -38:21643, -117:5979, -41:-25858, -7:2075,
24:7411, 45:-28977, 102:-6309, -78:30605, -64:11757, 89:19981, -58:-20544,
11:435, 29:-5708, -118:-21479, 47:19216, -93:31818, [...]
+-6777072274442080184 {1:72, 0:-74} {-82:8215, 43:30040, -56:-2545,
-49:-6154, 16:29896, -98:9756, -113:4507, -42:8068, -115:-5811, -75:23572,
64:-1723, -64:14043, 60:756, -12:-4449, 18:-24418, 110:-23962, 48:-5368,
75:3253, 84:18029, 111:-29923, 65:27503, 90:-21022, 108:22788, 28:29720,
71:23686, 37:20496, -78:-32584, -81:25465, -71:-27246, 12:23875, 97:-26710,
-92:9625, 86:24241, -43:13916, 41:17079, 57:9644, -87:-8677, 120:29430,
-54:14722, -122:-8116, -105:-7338, -33:2656, -125:26327, [...]
+-7160127611483384577 {0:-113, 1:89} {122:27065, -91:10042, -80:29426,
0:30534, 22:2055, -5:12778, 55:25369, -3:-17428, 13:-2192, -14:4237, 114:13465,
6:-23070, 33:13243, -105:-11460, 88:-7862, 81:21751, -67:25485, -25:-27218,
-26:-13143, 46:27282, 4:18099, 40:32106, 21:-1662, 102:28629, 91:-207, 100:445,
-43:-13639, 123:-8187, -29:-6710, -114:32311, -24:-17666, -12:-25765,
-38:27241, 39:23577, 54:3884, -100:13235, 57:23465, -75:-10120, -73:7449,
109:-9619, -9:-11660, 110:17946, 94:-11912 [...]
+-7238024935487081628 {0:120, 1:-126} {-70:-4800, 30:14930, -96:-30550,
-116:-19484, -48:23756, 74:-26906, 55:2703, -19:-14775, 51:15578, -107:12047,
124:21544, -59:4822, -12:-9575, 108:22642, -35:-28951, 70:-24561, 117:16838,
-80:29400, 64:-9106, 46:-26437, 52:13210, -39:-24652, 9:-7801, 104:7213,
-125:-21123, -98:-14810, -121:-21706, -69:21205, -26:-32472, 82:3477,
-89:-4570, -114:23104, -24:4719, -95:6783, 71:-92, 18:-17598, -32:-10675,
-63:-14903, 107:-32581, -79:-24781, 110:11767, -7 [...]
+-7255392008719176367 {0:-106, 1:23} {-52:275, 14:-29292, 114:1951,
-22:-23425, -118:28570, 100:-21903, 98:20319, -109:15798, 7:-5388, -5:-10672,
66:-4859, 27:-10390, -56:-22931, -55:27816, -114:20167, -51:24624, -36:-8446,
25:-7078, -101:-12915, -23:-14555, 31:7176, -29:2131, 112:13106, -100:-4784,
34:2120, 119:-9391, 122:16360, 89:-25890, 117:-509, 78:17030, 52:-22011,
-99:-1809, 93:1221, 70:13131, 96:-3002, -45:-2743, -46:-27985, 46:17514,
22:-22083, -91:-24281, -41:14421, -4:31183, 69 [...]
+-7818940155827210954 {0:61, 1:6} {-27:22161, -24:-22520, -98:499,
-121:10508, 120:1074, 73:-10515, 106:23265, -58:-21081, -11:-24472, 65:23788,
-86:-13155, 117:-18608, 41:-14212, 25:-18956, -66:23012, 63:-3062, -87:-6865,
80:16093, 59:-18083, 38:-12970, -23:-23493, -40:-30428, 112:-3317, -54:-27201,
34:-30160, 4:-31208, 3:32702, 125:-16835, 2:11226, -116:-4774, 29:-18815,
94:-2420, 48:22502, 123:3781, 78:20144, 96:-23460, -110:4124, -36:-21280,
-33:12734, -103:17131, 66:-27952, -9:23246, [...]
+-8049900041572605215 {0:121, 1:-23} {89:-11338, 21:7752, -24:4151,
96:-5826, -118:17385, 85:23092, 116:2581, 102:21442, 121:-14364, 57:-26858,
70:12822, 60:30079, 18:16581, 94:10885, -9:-24962, -53:810, -17:32165,
79:27871, -125:2530, 7:-16581, -52:-22682, -99:22277, 69:25792, 78:-340,
93:27375, -44:-10475, -91:-6267, -119:4461, 87:-19347, 37:-14546, -4:-21841,
1:-29265, 83:18046, 99:-10988, 44:-1001, 59:11401, 107:-11896, -7:31282,
100:5857, -59:-27676, 112:24514, 51:28998, 88:-12721, 8 [...]
+-8363595955396323962 {1:13, 0:17} {-21:-9240, 14:-3853, 17:5008,
2:-28004, 102:-17420, 81:7531, 50:-25539, 28:-1550, 82:-32476, -83:-24627,
127:1590, 110:18990, -11:-6538, -103:1092, -48:-22972, -42:-26914, 7:13567,
-24:-31173, 13:-5668, 119:-5889, 77:14710, -63:16986, 34:20499, 56:-12276,
-51:849, -41:-7515, 19:-9058, 113:-20508, -69:-31830, -14:-29776, -27:-9832,
51:-18021, -61:4503, -67:26158, -124:-13172, 48:5068, 24:29305, -73:-227,
15:27864, 67:-6950, 1:-19237, -122:889, -115:5832, [...]
+-8435279828593048652 {0:83, 1:-36} {-93:-5900, 27:10478, -25:3184,
47:15013, -35:-10662, -26:-7429, -38:8248, 20:-1193, -106:-19269, 52:28228,
94:4498, 109:-18312, -119:5896, -32:19372, 35:20732, 82:-5812, 123:-30205,
-98:-32598, -97:21748, -3:-404, 121:17731, -7:-7666, -59:29444, -83:-20733,
31:-27772, -11:31564, 36:-899, -40:-31587, -64:-21656, 93:15575, -28:12843,
88:-9173, -23:-24773, 101:7170, 30:24722, 38:25115, 87:-21702, 53:-24433,
-66:8169, -102:-19758, -24:23644, 4:8235, -105:1 [...]
+-8576646141015609435 {0:13, 1:-128} {-56:-30914, -70:10619, -6:-21052,
-69:-24753, -60:-31410, 25:-11360, 102:-5748, 92:10641, -62:-4904, -76:-14077,
-97:30425, -107:-22024, 54:11568, -27:14488, -66:-21132, -87:-13990, -50:6196,
75:16224, -32:-14751, 39:21922, 16:-17448, -28:-30912, -89:-16019, 126:14369,
-14:-9497, -30:17837, 66:-20431, 34:-13901, -58:-18120, 44:14729, 23:8613,
-124:-16592, 103:-1816, 24:19927, 89:4633, -104:-29595, -92:-27005, 87:5223,
74:-19020, -33:19666, 65:1086, -1 [...]
+-8992323596915492376 {1:2, 0:107} {-19:25264, -48:-1776, 32:10911,
39:31579, 58:-19163, 73:-22021, -45:-24397, 49:-20669, -24:-12038, 54:-29428,
-11:2966, -92:-21385, 75:29266, -14:18605, -10:-15399, -13:1853, -95:26721,
78:-14569, 96:-4428, -49:5455, -113:3678, -6:-24382, 61:-22545, -80:-32692,
40:26775, -119:9338, 11:3067, -65:31452, 44:-11587, 114:-30705, -57:16219,
-47:7433, 121:11348, 127:-3498, 24:16689, 47:4074, -126:2317, 30:9721,
64:-18491, -52:-17526, -9:12274, 23:-30587, -35:2 [...]
-- !sql_s3 --
-6777072274442080184 {1:72, 0:-74} {-82:8215, 43:30040, -56:-2545,
-49:-6154, 16:29896, -98:9756, -113:4507, -42:8068, -115:-5811, -75:23572,
64:-1723, -64:14043, 60:756, -12:-4449, 18:-24418, 110:-23962, 48:-5368,
75:3253, 84:18029, 111:-29923, 65:27503, 90:-21022, 108:22788, 28:29720,
71:23686, 37:20496, -78:-32584, -81:25465, -71:-27246, 12:23875, 97:-26710,
-92:9625, 86:24241, -43:13916, 41:17079, 57:9644, -87:-8677, 120:29430,
-54:14722, -122:-8116, -105:-7338, -33:2656, -125:26327, [...]
diff --git
a/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out
b/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out
index 46b9782952a..9dbe2ff79ab 100644
--- a/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out
+++ b/regression-test/data/external_table_p0/paimon/test_paimon_catalog.out
@@ -544,9 +544,9 @@ bbb
2023-10-24T18:19:51.673
-- !c100 --
-1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
-2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
-3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
+1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
+2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
+3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
-- !c102 --
1 {"c_boolean":1, "c_tinyint":1, "c_smallint":2, "c_int":3, "c_bigint":4,
"c_float":5.1, "c_double":6.2, "c_decimal":7.30, "c_char":"6", "c_varchar":"9",
"c_binary":"a", "c_varbinary":"bbbb", "c_date":"2020-01-01",
"c_timestamp":"2020-01-01 00:00:00.000000", "c_array":[1, 2, 3],
"c_map":{"a":1, "b":2}, "c_row":{"c_int":3, "c_float":4.1, "c_varchar":"5"}}
@@ -1123,9 +1123,9 @@ bbb
2023-10-24T18:19:51.673
-- !c100 --
-1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
-2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
-3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
+1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
+2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
+3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
-- !c102 --
1 {"c_boolean":1, "c_tinyint":1, "c_smallint":2, "c_int":3, "c_bigint":4,
"c_float":5.1, "c_double":6.2, "c_decimal":7.30, "c_char":"6", "c_varchar":"9",
"c_binary":"a", "c_varbinary":"bbbb", "c_date":"2020-01-01",
"c_timestamp":"2020-01-01 00:00:00.000000", "c_array":[1, 2, 3],
"c_map":{"a":1, "b":2}, "c_row":{"c_int":3, "c_float":4.1, "c_varchar":"5"}}
@@ -1702,9 +1702,9 @@ bbb
2023-10-24T18:19:51.673
-- !c100 --
-1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
-2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
-3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
+1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
+2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
+3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
-- !c102 --
1 {"c_boolean":1, "c_tinyint":1, "c_smallint":2, "c_int":3, "c_bigint":4,
"c_float":5.1, "c_double":6.2, "c_decimal":7.30, "c_char":"6", "c_varchar":"9",
"c_binary":"a", "c_varbinary":"bbbb", "c_date":"2020-01-01",
"c_timestamp":"2020-01-01 00:00:00.000000", "c_array":[1, 2, 3],
"c_map":{"a":1, "b":2}, "c_row":{"c_int":3, "c_float":4.1, "c_varchar":"5"}}
@@ -2281,9 +2281,9 @@ bbb
2023-10-24T18:19:51.673
-- !c100 --
-1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
-2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
-3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
+1 [[0, 1, 1], [0, 1, 1], [1, 1, 1]] [["3", "7", "a"], ["0", "e",
"2"], ["b", "4", "5"]] [["77", "83", "1c"], ["af", "f0", "0b"], ["be",
"d2", "7b"]]
[["4a3aee3c345936f7a6eeb5307fc79d5f9ee3ae3a5e58edcfd4d40ec3d27353bf7b15a2eb6b6011e9ddf2c2cd1d6d50d6cc20",
"00cb283c1a2bb2f3f244f89eafb79effd8aea55d5e68ce9d707250a3b47b65c0ea2b591b7145a56c801b9e6bda853e2f0581",
"ae8fbe21e20f32a486757b5254faea09906bf451e096cc7d33b5a6fb56995c1601e7469a674f5e8475a2b86d2a69e02f9438"],
["6827f8e65869d476a9e2fdfa03 [...]
+2 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [["a", "5", "f"], ["7", "2",
"3"], ["1", "b", "f"]] [["11", "a8", "e3"], ["f4", "ee", "c3"], ["0f",
"c6", "05"]]
[["b723869515b24e9fbb54503f8a7584f083479998766213b784a9c530cbc0376bd5035054c657437251b85fa3dd41a0483776",
"ee780d81d3e9faa36aad06522a09cf9b18e00614c991d2c079243dcc7190f3dd6559e75e2c1992270272d9a9c01e950c7bd4",
"6e825a52cdae65786801caae53182956c80f88a48fa258a90d2c93302023c78b83f1dce758615a74731c9eef993a8c1dc4ad"],
["2ae97869372970f7ad7d0007a1 [...]
+3 [[1, 0, 0], [1, 0, 1], [1, 0, 1]] [["c", "6", "4"], ["1", "e",
"7"], ["7", "1", "d"]] [["50", "a9", "b0"], ["02", "bf", "3a"], ["0a",
"1d", "9a"]]
[["2df05ba6ce8661f0fb9bc88386a1ba67188e3e99a4142a0703e1cd8bdf041fbc20131e50bea2a9891498c638ebac842d3d46",
"f6fecf3a4263ed8d4c5b63e4b3d9f4084b83835d9fba2046bf48d0a8068f2044c48271a1e9726741a09badea72c37cf18de3",
"d23af3266db4eda12673f5c451d36343ba1cea00fbfeeff2165de40e834778eb96a1199cb523dd394b4f08824f6af2a7d894"],
["dc00e9b27b9540e170caf93805 [...]
-- !c102 --
1 {"c_boolean":1, "c_tinyint":1, "c_smallint":2, "c_int":3, "c_bigint":4,
"c_float":5.1, "c_double":6.2, "c_decimal":7.30, "c_char":"6", "c_varchar":"9",
"c_binary":"a", "c_varbinary":"bbbb", "c_date":"2020-01-01",
"c_timestamp":"2020-01-01 00:00:00.000000", "c_array":[1, 2, 3],
"c_map":{"a":1, "b":2}, "c_row":{"c_int":3, "c_float":4.1, "c_varchar":"5"}}
diff --git
a/regression-test/suites/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.groovy
b/regression-test/suites/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.groovy
index 8efcd399d61..44e27c59124 100644
---
a/regression-test/suites/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.groovy
+++
b/regression-test/suites/datatype_p0/nested_types/base_cases/one_level_nestedtypes_with_s3data.groovy
@@ -75,44 +75,122 @@ suite("one_level_nestedtypes_with_s3data") {
"format" = "${format}"); """
}
}
- def load_from_s3 = {table_name, uri_file, format ->
+ def load_from_s3 = {table_name, uri_file, format, is_map ->
sql "set enable_insert_strict = false;"
- if (format == "csv") {
- order_qt_sql_s3 """select * from s3(
+ if (is_map) {
+ if (format == "csv") {
+ order_qt_sql_s3 """select *
+ from s3(
+ "uri" = "${uri_file}",
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "provider" = "${getS3Provider()}",
+ "column_separator"="|",
+ "read_json_by_line"="true") where c1 is not null order
by c1 limit 10; """
+
+ sql """
+ insert into ${table_name} select *
+ from s3(
"uri" = "${uri_file}",
- "s3.access_key"= "${ak}",
- "s3.secret_key" = "${sk}",
- "format" = "${format}",
- "provider" = "${getS3Provider()}",
- "column_separator"="|",
- "read_json_by_line"="true") where c1 is not null order by
c1 limit 10; """
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "column_separator"="|",
+ "provider" = "${getS3Provider()}",
+ "read_json_by_line"="true"); """
+ } else {
+ order_qt_sql_s3 """select k1
+ , deduplicate_map(c_bool)
+ , deduplicate_map(c_tinyint)
+ , deduplicate_map(c_smallint)
+ , deduplicate_map(c_int)
+ , deduplicate_map(c_bigint)
+ , deduplicate_map(c_largeint)
+ , deduplicate_map(c_float)
+ , deduplicate_map(c_double)
+ , deduplicate_map(c_decimal)
+ , deduplicate_map(c_decimalv3)
+ , deduplicate_map(c_date)
+ , deduplicate_map(c_datetime)
+ , deduplicate_map(c_datev2)
+ , deduplicate_map(c_datetimev2)
+ , deduplicate_map(c_char)
+ , deduplicate_map(c_varchar)
+ , deduplicate_map(c_string)
+ from s3(
+ "uri" = "${uri_file}",
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "provider" = "${getS3Provider()}",
+ "read_json_by_line"="true") where k1 is not null order
by k1 limit 10; """
- sql """
- insert into ${table_name} select * from s3(
- "uri" = "${uri_file}",
- "s3.access_key"= "${ak}",
- "s3.secret_key" = "${sk}",
- "format" = "${format}",
- "column_separator"="|",
- "provider" = "${getS3Provider()}",
- "read_json_by_line"="true"); """
+ sql """
+ insert into ${table_name} select k1
+ , deduplicate_map(c_bool)
+ , deduplicate_map(c_tinyint)
+ , deduplicate_map(c_smallint)
+ , deduplicate_map(c_int)
+ , deduplicate_map(c_bigint)
+ , deduplicate_map(c_largeint)
+ , deduplicate_map(c_float)
+ , deduplicate_map(c_double)
+ , deduplicate_map(c_decimal)
+ , deduplicate_map(c_decimalv3)
+ , deduplicate_map(c_date)
+ , deduplicate_map(c_datetime)
+ , deduplicate_map(c_datev2)
+ , deduplicate_map(c_datetimev2)
+ , deduplicate_map(c_char)
+ , deduplicate_map(c_varchar)
+ , deduplicate_map(c_string)
+ from s3(
+ "uri" = "${uri_file}",
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "provider" = "${getS3Provider()}",
+ "read_json_by_line"="true"); """
+ }
} else {
- order_qt_sql_s3 """select * from s3(
+ if (format == "csv") {
+ order_qt_sql_s3 """select * from s3(
+ "uri" = "${uri_file}",
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "provider" = "${getS3Provider()}",
+ "column_separator"="|",
+ "read_json_by_line"="true") where c1 is not null order
by c1 limit 10; """
+
+ sql """
+ insert into ${table_name} select * from s3(
"uri" = "${uri_file}",
- "s3.access_key"= "${ak}",
- "s3.secret_key" = "${sk}",
- "format" = "${format}",
- "provider" = "${getS3Provider()}",
- "read_json_by_line"="true") where k1 is not null order by
k1 limit 10; """
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "column_separator"="|",
+ "provider" = "${getS3Provider()}",
+ "read_json_by_line"="true"); """
+ } else {
+ order_qt_sql_s3 """select * from s3(
+ "uri" = "${uri_file}",
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "provider" = "${getS3Provider()}",
+ "read_json_by_line"="true") where k1 is not null order
by k1 limit 10; """
- sql """
- insert into ${table_name} select * from s3(
- "uri" = "${uri_file}",
- "s3.access_key"= "${ak}",
- "s3.secret_key" = "${sk}",
- "format" = "${format}",
- "provider" = "${getS3Provider()}",
- "read_json_by_line"="true"); """
+ sql """
+ insert into ${table_name} select * from s3(
+ "uri" = "${uri_file}",
+ "s3.access_key"= "${ak}",
+ "s3.secret_key" = "${sk}",
+ "format" = "${format}",
+ "provider" = "${getS3Provider()}",
+ "read_json_by_line"="true"); """
+ }
}
sql "set enable_insert_strict = true;"
}
@@ -149,7 +227,7 @@ suite("one_level_nestedtypes_with_s3data") {
for (String f : array_files) {
sql "truncate table ${table_names[0]};"
// load_from_tvf(table_names[0], f, format_order[fi])
- load_from_s3(table_names[0], f, format_order[fi])
+ load_from_s3(table_names[0], f, format_order[fi], false)
++ fi
}
// select element_at(column)
@@ -186,7 +264,7 @@ suite("one_level_nestedtypes_with_s3data") {
for (String f : map_files) {
sql "truncate table ${table_names[1]};"
// load_from_tvf(table_names[1], f, format_order[fi])
- load_from_s3(table_names[1], f, format_order[fi])
+ load_from_s3(table_names[1], f, format_order[fi], true)
++ fi
}
// select element_at(column)
@@ -223,7 +301,7 @@ suite("one_level_nestedtypes_with_s3data") {
for (String f : struct_files) {
sql "truncate table ${table_names[2]};"
// load_from_tvf(table_names[2], f, format_order[fi])
- load_from_s3(table_names[2], f, format_order[fi])
+ load_from_s3(table_names[2], f, format_order[fi], false)
++ fi
}
// select element_at(column)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]