This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a change to branch auto-pick-65220-branch-4.1
in repository https://gitbox.apache.org/repos/asf/doris.git
discard fe1ae05df45 [fix](be) Avoid scan executor shutdown use after free
(#65220)
add a6589bd9c6b branch-4.1: [chore](recycler) Disable
enable_mark_delete_rowset_before_recycle and
enable_abort_txn_and_job_for_delete_rowset_before_recycle for recycler- #66150
#66150 (#66229)
add 20635ab3036 branch-4.1: [feature](variant) Add native ColumnVariantV2
execution (#66188)
add 758aa0a7d81 [fix](pipeline) Add streaming aggregation local exchange
switch (#66216)
add c9e9629017b branch-4.1: [chore](deps) Upgrade vulnerable FE
dependencies #65700 (#66126)
add 4bc49a509b6 branch-4.1:[fix](regression) Adjust large TTL cache
regression case(pick#64789) (#66131)
add 4d3d5024789 branch-4.1: [fix](load) correct quorum participants for
incremental streams #66016 (#66171)
add 319d2f2b2c5 [fix](fe) Cancel rebuilt VCG warm up jobs on drop (#65426)
(#66168)
add 7d1dfd1426a branch-4.1: [opt](repeat) deduplicate grouping scalar
functions from projetion inrepeat #65880 (#66143)
add 9782738437f branch-4.1:[fix](fe) Improve MaxCompute catalog validation
(#64119) (#66157)
add 6ba1364db92 branch-4.1: [fix](cloud) Fix SchemaVariablesScanner crash
due to incomplete FE response #65994 (#66015)
add af27580b541 branch-4.1: [fix](cloud) Use bthread-aware shared mutex
for tablet header lock (#66020)
add 70bbb1c03d2 branch-4.1: [test](regression) Add external correctness P0
coverage #66002 (#66023)
add 94597a13361 [fix](regression) Skip mirrored CSV header in HTTP TVF
(#66027)
add 5d72ce4122b [fix](cloud) CloudUpgradeMgr inspect and abort failed
conflict txns while waiting (#60830) (#66055)
add 8794c7d5014 branch-4.1: [test](regression) Expand Iceberg write
evolution coverage #66021 (#66043)
add fb69297540f [fix](filecache) pass tablet_id through FileReaderOptions
instead of parsing from path (#61683) (#66062)
add e4fb2c4dc50 [fix](cloud) Exclude decommissioning BE from BE selection
(#65221) (#66076)
add 3c3f33d8f43 branch-4.1: [improvement](fe) add fe_meta_auth_token for
FE meta-service internal HTTP auth (#66090)
add 8281730915c [fix](cloud) Fix SchemaVariablesScanner crash due to
incomplete FE response (#65994) (#66190)
add fe65d35ade0 branch-4.1: [fix](regression) Initialize OceanBase test
data explicitly #66141 (#66155)
add 17644f91bc2 [branch-4.1][fix](regression) Match Parquet TIME scanner
errors (#65885)
add 67ea11c6c6b branch-4.1: [fix](variant) Recognize nullable array
elements as NestedGroup types #66196 (#66202)
add 41ff7643b28 branch-4.1: [fix](eager-agg) null-to-non-null safety check
and remove redundant normalize calls in eager aggregation (#66208)
add d02f448bba0 branch-4.1: [fix](cloud) Prevent urgent load from
preempting schema change lock #66082 (#66226)
add 64ba650e670 [opt](exec) optimize fixed key packing (#65572) (#66220)
add 139cd2c93c3 branch-4.1: [feature](paimon) Support table writes via JNI
and schema evolution (#65868)
add 59f8a9eef06 [fix](regression) Stabilize cloud docker regression cases
(#65258) (#66162)
add 645b3e8ec91 branch-4.1: [improve](cloud) Skip non-MOW tablets for
get_topn_tablet_delete_bitmap_score #65964 (#66257)
add 0e0ef7f468c branch-4.1: [fix](hive) invalidate stale file cache on
partition refresh when partition cache misses #65334 (#66259)
add 723c7ebf1db [branch-4.1][improvement](agg) Add a knob to control local
exchange before aggregation (#66104)
add e7e6a579965 branch-4.1: [fix](fe) Accept spaced TIMESTAMPTZ offsets in
range partition bounds (#66292)
add 6830db1271c branch-4.1: [fix](build) Restore LSan detection (#66275)
add cc1bd58df94 [fix](be) Avoid scan executor shutdown use after free
(#65220)
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (fe1ae05df45)
\
N -- N -- N refs/heads/auto-pick-65220-branch-4.1 (cc1bd58df94)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
be/src/cloud/cloud_base_compaction.cpp | 2 +-
be/src/cloud/cloud_cumulative_compaction.cpp | 2 +-
be/src/cloud/cloud_full_compaction.cpp | 2 +-
be/src/cloud/cloud_internal_service.cpp | 28 +-
be/src/cloud/cloud_meta_mgr.cpp | 4 +-
be/src/cloud/cloud_meta_mgr.h | 2 +-
be/src/cloud/cloud_storage_engine.cpp | 10 +-
be/src/cloud/cloud_tablet.cpp | 53 +-
be/src/cloud/cloud_tablet.h | 16 +-
be/src/cloud/cloud_tablet_mgr.cpp | 2 +-
be/src/cloud/cloud_warm_up_manager.cpp | 16 +-
be/src/cloud/cloud_warm_up_manager.h | 3 +-
be/src/common/config.cpp | 5 +
be/src/common/config.h | 4 +
be/src/core/column/column_variant.cpp | 3 +
.../core/column/variant_v2/column_variant_v2.cpp | 1382 ++++++++++
be/src/core/column/variant_v2/column_variant_v2.h | 277 ++
.../variant_v2/column_variant_v2_read_view.cpp | 102 +
.../variant_v2/column_variant_v2_typed_column.cpp | 44 +-
.../variant_v2/column_variant_v2_typed_column.h | 156 ++
be/src/core/data_type/data_type_factory.cpp | 38 +-
be/src/core/data_type/data_type_variant_v2.cpp | 101 +
be/src/core/data_type/data_type_variant_v2.h | 63 +
.../data_type_serde/data_type_nullable_serde.cpp | 20 +
.../data_type_serde/data_type_nullable_serde.h | 2 +
.../data_type_serde/data_type_variant_v2_serde.cpp | 592 ++++
.../data_type_serde/data_type_variant_v2_serde.h | 73 +
.../core/value/variant/variant_batch_builder.cpp | 1780 ++++++++++++
be/src/core/value/variant/variant_batch_builder.h | 265 ++
be/src/core/value/variant/variant_canonical.cpp | 1168 ++++++++
be/src/core/value/variant/variant_canonical.h | 168 ++
be/src/core/value/variant/variant_field.cpp | 389 +++
be/src/core/value/variant/variant_field.h | 78 +
be/src/core/value/variant/variant_metadata.cpp | 172 ++
.../src/core/value/variant/variant_metadata.h | 42 +-
.../core/value/variant/variant_parquet_encoding.h | 123 +
be/src/core/value/variant/variant_scalar.cpp | 353 +++
be/src/core/value/variant/variant_scalar.h | 73 +
be/src/core/value/variant/variant_value.cpp | 482 ++++
be/src/core/value/variant/variant_value.h | 79 +
be/src/exec/common/hash_table/hash_key_type.h | 7 +-
be/src/exec/common/hash_table/hash_map_context.h | 9 +-
.../exec/exchange/local_exchange_source_operator.h | 5 +
be/src/exec/operator/aggregation_sink_operator.h | 5 +-
.../distinct_streaming_aggregation_operator.h | 4 +-
be/src/exec/operator/operator.cpp | 20 +
be/src/exec/operator/operator.h | 3 +
.../exec/operator/paimon_table_sink_operator.cpp | 39 +
be/src/exec/operator/paimon_table_sink_operator.h | 104 +
.../exec/operator/streaming_aggregation_operator.h | 5 +-
be/src/exec/pipeline/pipeline.cpp | 10 +-
be/src/exec/pipeline/pipeline_fragment_context.cpp | 23 +
be/src/exec/sink/load_stream_stub.h | 2 +
.../writer/paimon/ffi_paimon_write_backend.cpp | 24 +-
.../sink/writer/paimon/ffi_paimon_write_backend.h | 28 +-
.../writer/paimon/jni_paimon_write_backend.cpp | 487 ++++
.../sink/writer/paimon/jni_paimon_write_backend.h | 107 +
.../writer/paimon/paimon_jni_memory_manager.cpp | 304 ++
.../sink/writer/paimon/paimon_jni_memory_manager.h | 81 +
.../sink/writer/paimon/paimon_table_writer.cpp | 163 ++
.../exec/sink/writer/paimon/paimon_table_writer.h | 102 +
.../exec/sink/writer/paimon/paimon_write_backend.h | 108 +
.../writer/paimon/paimon_write_backend_factory.cpp | 44 +
be/src/exec/sink/writer/vtablet_writer_v2.cpp | 24 +-
be/src/exprs/aggregate/aggregate_function_uniq.cpp | 16 +
be/src/exprs/aggregate/aggregate_function_uniq.h | 92 +
be/src/exprs/function/cast/function_cast.cpp | 45 +-
.../cast/variant_v2/cast_array_to_variant.cpp | 235 ++
.../cast/variant_v2/cast_variant_to_array.cpp | 153 +
.../cast/variant_v2/cast_variant_to_jsonb.cpp | 106 +
.../cast/variant_v2/cast_variant_to_scalar.cpp | 520 ++++
.../cast/variant_v2/cast_variant_to_string.cpp | 246 ++
.../function/cast/variant_v2/cast_variant_v2.cpp | 205 ++
.../function/cast/variant_v2/cast_variant_v2.h | 19 +-
.../cast/variant_v2/cast_variant_v2_internal.h | 77 +
be/src/exprs/function/function_variant_element.cpp | 94 +-
.../exprs/function/function_variant_element_v2.cpp | 365 +++
.../exprs/function/function_variant_element_v2.h | 95 +
be/src/exprs/function/function_variant_parse.cpp | 194 ++
be/src/exprs/function/function_variant_type.cpp | 18 +-
.../exprs/function/parse/variant_jsonb_parse.cpp | 558 ++++
be/src/exprs/function/parse/variant_jsonb_parse.h | 69 +
.../exprs/function/parse/variant_string_parse.cpp | 497 ++++
be/src/exprs/function/parse/variant_string_parse.h | 404 +++
be/src/exprs/function/simple_function_factory.h | 2 +
be/src/exprs/table_function/vexplode_v2.cpp | 80 +-
be/src/exprs/table_function/vexplode_v2.h | 3 +
be/src/exprs/vcase_expr.h | 16 +-
be/src/exprs/vcondition_expr.cpp | 1 +
.../schema_variables_scanner.cpp | 9 +
be/src/io/cache/block_file_cache_downloader.cpp | 2 +
be/src/io/cache/block_file_cache_downloader.h | 1 +
be/src/io/cache/cached_remote_file_reader.cpp | 58 +-
be/src/io/cache/cached_remote_file_reader.h | 3 +-
be/src/io/tools/file_cache_microbench.cpp | 1 +
be/src/runtime/runtime_state.h | 19 +
.../storage/compaction/collection_statistics.cpp | 2 +-
be/src/storage/compaction/compaction.cpp | 8 +-
.../cumulative_compaction_time_series_policy.cpp | 5 +-
be/src/storage/compaction/full_compaction.cpp | 2 +-
be/src/storage/index/index_file_reader.cpp | 10 +-
be/src/storage/index/index_file_reader.h | 7 +-
be/src/storage/index/index_file_writer.cpp | 10 +-
be/src/storage/index/index_file_writer.h | 4 +-
.../index/inverted/inverted_index_fs_directory.cpp | 4 +-
.../index/inverted/inverted_index_fs_directory.h | 3 +-
be/src/storage/rowset/beta_rowset.cpp | 4 +-
be/src/storage/rowset/beta_rowset_writer.cpp | 3 +-
be/src/storage/rowset/rowset_writer.h | 2 +-
be/src/storage/rowset_builder.cpp | 2 +-
be/src/storage/schema_change/schema_change.cpp | 4 +-
be/src/storage/segment/segment.cpp | 11 +-
be/src/storage/segment/segment.h | 1 +
be/src/storage/tablet/base_tablet.cpp | 4 +
be/src/storage/tablet/base_tablet.h | 9 +-
be/src/storage/tablet/tablet.cpp | 63 +-
be/src/storage/tablet/tablet.h | 9 +-
be/src/storage/tablet/tablet_manager.cpp | 2 +-
be/src/storage/task/engine_clone_task.cpp | 2 +-
be/src/storage/task/index_builder.cpp | 14 +-
be/src/util/bthread_shared_mutex.h | 125 +
be/src/util/debug/leak_annotations.h | 18 +-
.../cloud/cloud_empty_rowset_compaction_test.cpp | 2 +-
be/test/cloud/cloud_meta_mgr_test.cpp | 28 +-
be/test/cloud/cloud_tablet_test.cpp | 2 +-
be/test/core/column/column_variant_test.cpp | 8 +
be/test/core/column/column_variant_v2_test.cpp | 2911 ++++++++++++++++++++
...type_variant_v2_serde_binary_roundtrip_test.cpp | 526 ++++
.../data_type_variant_v2_serde_input_test.cpp | 310 +++
.../data_type_variant_v2_serde_jsonb_test.cpp | 246 ++
.../data_type_variant_v2_serde_output_test.cpp | 382 +++
be/test/exec/operator/agg_operator_test.cpp | 65 +
...istinct_streaming_aggregation_operator_test.cpp | 15 +
.../exec/operator/streaming_agg_operator_test.cpp | 14 +
be/test/exec/sink/vtablet_writer_v2_test.cpp | 28 +
.../writer/paimon/paimon_write_backend_test.cpp | 20 +-
be/test/exec/sort/merge_sorter_state.cpp | 24 +-
.../aggregate_function_uniq_variant_test.cpp | 272 ++
.../cast/cast_variant_v2_benchmark_test.cpp | 227 ++
.../function/cast/cast_variant_v2_from_test.cpp | 522 ++++
.../function/cast/cast_variant_v2_to_test.cpp | 317 +++
.../function_variant_element_v2_encoded_test.cpp | 239 ++
.../function_variant_element_v2_string_test.cpp | 50 +
.../exprs/function/function_variant_parse_test.cpp | 387 +++
.../test/exprs/variant_v2_execution_test.cpp | 25 +-
be/test/io/cache/block_file_cache_test.cpp | 12 +
.../io/cache/block_file_cache_test_lru_dump.cpp | 1 +
be/test/io/fs/packed_file_concurrency_test.cpp | 2 +
be/test/util/bthread_shared_mutex_test.cpp | 264 ++
.../variant/testdata/ParquetVariantGolden.java | 1229 +++++++++
.../testdata/doris_java_verified_vectors.tsv | 66 +
.../util/variant/testdata/parquet_java_vectors.tsv | 86 +
.../util/variant/variant_batch_builder_test.cpp | 1941 +++++++++++++
be/test/util/variant/variant_canonical_test.cpp | 910 ++++++
be/test/util/variant/variant_field_test.cpp | 580 ++++
.../util/variant/variant_golden_vector_test.cpp | 753 +++++
be/test/util/variant/variant_jsonb_parse_test.cpp | 998 +++++++
be/test/util/variant/variant_string_parse_test.cpp | 697 +++++
be/test/util/variant/variant_test_utils.cpp | 329 +++
be/test/util/variant/variant_test_utils.h | 49 +
be/test/util/variant/variant_value_test.cpp | 488 ++++
build.sh | 4 +-
cloud/src/common/config.h | 4 +-
cloud/src/meta-service/meta_service.cpp | 8 +-
cloud/test/meta_service_job_test.cpp | 30 +
cloud/test/meta_service_test.cpp | 118 +-
.../docker-compose/oceanbase/oceanbase.yaml.tpl | 29 +-
.../{paimon-scanner => paimon-connector}/pom.xml | 9 +-
.../doris/paimon/DorisMemorySegmentPool.java | 57 +
.../apache/doris/paimon/GlobalIndexAssigner.java | 177 ++
.../apache/doris/paimon/PaimonArrowConverter.java | 409 +++
.../org/apache/doris/paimon/PaimonColumnValue.java | 0
.../org/apache/doris/paimon/PaimonCommitCodec.java | 184 ++
.../apache/doris/paimon/PaimonJdbcDriverUtils.java | 0
.../org/apache/doris/paimon/PaimonJniScanner.java | 11 +
.../org/apache/doris/paimon/PaimonJniWriter.java | 660 +++++
.../org/apache/doris/paimon/PaimonTypeUtils.java | 0
.../java/org/apache/doris/paimon/PaimonUtils.java | 0
.../org/apache/doris/paimon/PaimonWriteSchema.java | 131 +
.../src/main/resources/package.xml | 0
.../doris/paimon/GlobalIndexAssignerTest.java} | 29 +-
.../doris/paimon/PaimonArrowConverterTest.java | 119 +
.../apache/doris/paimon/PaimonCommitCodecTest.java | 110 +
.../doris/paimon/PaimonJdbcDriverUtilsTest.java | 0
.../apache/doris/paimon/PaimonJniScannerTest.java | 0
.../apache/doris/paimon/PaimonJniWriterTest.java | 101 +
.../apache/doris/paimon/PaimonWriteSchemaTest.java | 200 ++
fe/be-java-extensions/pom.xml | 2 +-
.../main/java/org/apache/doris/catalog/Type.java | 12 +-
.../java/org/apache/doris/catalog/VariantType.java | 34 +-
.../main/java/org/apache/doris/common/Config.java | 16 +-
.../java/org/apache/doris/common/ConfigBase.java | 20 +-
.../java/org/apache/doris/common/ConfigTest.java | 58 +
fe/fe-core/pom.xml | 2 +-
.../main/java/org/apache/doris/alter/Alter.java | 4 +
.../doris/catalog/BuiltinScalarFunctions.java | 4 +
.../org/apache/doris/catalog/PartitionKey.java | 20 +-
.../doris/clone/DynamicPartitionScheduler.java | 69 +-
.../cloud/alter/CloudSchemaChangeHandler.java | 9 +-
.../cloud/catalog/CloudInstanceStatusChecker.java | 11 +-
.../apache/doris/cloud/catalog/CloudReplica.java | 37 +-
.../doris/cloud/catalog/CloudUpgradeMgr.java | 42 +
.../doris/cloud/system/CloudSystemInfoService.java | 5 +-
.../doris/common/util/DynamicPartitionUtil.java | 29 +-
.../org/apache/doris/common/util/HttpURLUtil.java | 15 +
.../apache/doris/common/util/PropertyAnalyzer.java | 88 +-
.../org/apache/doris/common/util/TimeUtils.java | 19 +
.../datasource/hive/HiveExternalMetaCache.java | 46 +-
.../doris/datasource/maxcompute/MCTransaction.java | 4 +
.../maxcompute/MaxComputeExternalCatalog.java | 70 +-
.../maxcompute/MaxComputeExternalTable.java | 11 +
.../maxcompute/source/MaxComputeScanNode.java | 5 +
.../PaimonLatestSnapshotProjectionLoader.java | 20 +-
.../paimon/PaimonPartitionInfoLoader.java | 22 +-
.../paimon/DorisToPaimonTypeVisitor.java | 6 +
.../datasource/paimon/PaimonExternalCatalog.java | 2 +
.../datasource/paimon/PaimonExternalMetaCache.java | 2 +-
.../datasource/paimon/PaimonExternalTable.java | 34 +-
.../doris/datasource/paimon/PaimonMetadataOps.java | 283 +-
.../datasource/paimon/PaimonPartitionInfo.java | 37 +-
.../doris/datasource/paimon/PaimonTransaction.java | 460 ++++
.../apache/doris/datasource/paimon/PaimonUtil.java | 160 +-
.../datasource/paimon/PaimonWriteBinding.java | 231 ++
.../doris/datasource/paimon/PaimonWriteTarget.java | 129 +
.../org/apache/doris/httpv2/meta/MetaService.java | 77 +-
.../doris/httpv2/rest/manager/NodeAction.java | 13 +-
.../java/org/apache/doris/master/MetaHelper.java | 2 +-
.../doris/mtmv/MTMVPartitionExprDateTrunc.java | 21 +-
.../org/apache/doris/mtmv/MTMVPartitionUtil.java | 38 +-
.../nereids/analyzer/UnboundPaimonTableSink.java | 114 +
.../nereids/analyzer/UnboundTableSinkCreator.java | 24 +
.../glue/translator/PhysicalPlanTranslator.java | 20 +
.../doris/nereids/parser/LogicalPlanBuilder.java | 4 +-
.../nereids/properties/RequestPropertyDeriver.java | 8 +
.../org/apache/doris/nereids/rules/RuleSet.java | 2 +
.../org/apache/doris/nereids/rules/RuleType.java | 2 +
.../doris/nereids/rules/analysis/BindSink.java | 119 +-
.../nereids/rules/analysis/CheckAfterRewrite.java | 17 +-
.../nereids/rules/analysis/CheckAnalysis.java | 23 +
.../nereids/rules/analysis/ExpressionAnalyzer.java | 7 +
.../nereids/rules/analysis/NormalizeRepeat.java | 34 +-
.../expression/rules/FoldConstantRuleOnBE.java | 8 +-
...alPaimonTableSinkToPhysicalPaimonTableSink.java | 48 +
.../rewrite/eageraggregation/EagerAggRewriter.java | 7 +-
.../eageraggregation/PushDownAggregation.java | 7 +-
.../doris/nereids/trees/expressions/CaseWhen.java | 2 +-
.../doris/nereids/trees/expressions/Cast.java | 13 +-
.../doris/nereids/trees/expressions/IsNull.java | 2 +-
.../nereids/trees/expressions/NullSafeEqual.java | 2 +-
.../trees/expressions/NullToNonNullFunction.java | 57 +
.../doris/nereids/trees/expressions/TryCast.java | 6 +
.../functions/ExplicitlyCastableSignature.java | 7 +
.../trees/expressions/functions/agg/Count.java | 13 +-
.../functions/agg/MultiDistinctCount.java | 2 +-
.../expressions/functions/scalar/Coalesce.java | 3 +-
.../expressions/functions/scalar/ElementAt.java | 22 +-
.../trees/expressions/functions/scalar/If.java | 3 +-
.../functions/scalar/Ipv4StringToNumOrDefault.java | 3 +-
.../functions/scalar/Ipv6StringToNumOrDefault.java | 3 +-
.../expressions/functions/scalar/NonNullable.java | 4 +-
.../functions/scalar/NotNullOrEmpty.java | 3 +-
.../expressions/functions/scalar/NullOrEmpty.java | 3 +-
.../trees/expressions/functions/scalar/Nvl.java | 3 +-
.../{NotNullOrEmpty.java => ParseToVariant.java} | 46 +-
.../functions/scalar/ToIpv4OrDefault.java | 3 +-
.../functions/scalar/ToIpv6OrDefault.java | 3 +-
.../{NullOrEmpty.java => TryParseToVariant.java} | 46 +-
.../expressions/literal/StringLikeLiteral.java | 12 +-
.../expressions/literal/TimestampTzLiteral.java | 162 +-
.../apache/doris/nereids/trees/plans/PlanType.java | 3 +
.../doris/nereids/trees/plans/algebra/Repeat.java | 2 +-
.../commands/info/ModifyTablePropertiesOp.java | 2 +
.../commands/insert/InsertIntoTableCommand.java | 15 +
.../insert/InsertOverwriteTableCommand.java | 26 +-
.../trees/plans/commands/insert/InsertUtils.java | 11 +-
.../insert/PaimonInsertCommandContext.java | 57 +
.../commands/insert/PaimonInsertExecutor.java | 60 +
.../plans/logical/LogicalPaimonTableSink.java | 161 ++
.../plans/physical/PhysicalPaimonTableSink.java | 179 ++
.../nereids/trees/plans/visitor/SinkVisitor.java | 15 +
.../org/apache/doris/nereids/types/DataType.java | 3 +-
.../apache/doris/nereids/types/VariantType.java | 93 +-
.../apache/doris/nereids/util/ExpressionUtils.java | 4 +-
.../doris/nereids/util/TypeCoercionUtils.java | 63 +-
.../org/apache/doris/planner/PaimonTableSink.java | 155 ++
.../main/java/org/apache/doris/qe/Coordinator.java | 13 +-
.../org/apache/doris/qe/CoordinatorContext.java | 7 +-
.../org/apache/doris/qe/PointQueryExecutor.java | 8 +-
.../java/org/apache/doris/qe/SessionVariable.java | 24 +
.../org/apache/doris/qe/runtime/LoadProcessor.java | 6 +
.../AbstractExternalTransactionManager.java | 4 +-
.../doris/transaction/HiveTransactionManager.java | 2 +-
.../transaction/IcebergTransactionManager.java | 2 +-
.../doris/transaction/MCTransactionManager.java | 2 +-
...nManager.java => PaimonTransactionManager.java} | 16 +-
.../transaction/TransactionManagerFactory.java | 5 +
.../apache/doris/transaction/TransactionType.java | 3 +-
.../doris/analysis/PartitionExprUtilTest.java | 44 +
.../apache/doris/catalog/CreateTableLikeTest.java | 157 ++
.../doris/catalog/DynamicPartitionTableTest.java | 1763 +++++++++++-
.../org/apache/doris/catalog/PartitionKeyTest.java | 158 ++
.../java/org/apache/doris/catalog/TypeTest.java | 16 +
.../catalog/CloudInstanceStatusCheckerTest.java | 115 +-
.../doris/cloud/catalog/CloudUpgradeMgrTest.java | 221 ++
.../apache/doris/common/PropertyAnalyzerTest.java | 38 +
.../apache/doris/common/util/HttpURLUtilTest.java | 93 +
.../apache/doris/common/util/TimeUtilsTest.java | 31 +
.../datasource/hive/HiveMetaStoreCacheTest.java | 64 +
.../datasource/maxcompute/MCTransactionTest.java | 54 +
.../maxcompute/MaxComputeExternalCatalogTest.java | 146 +
.../maxcompute/source/MaxComputeScanNodeTest.java | 79 +
.../paimon/PaimonExternalMetaCacheTest.java | 15 +-
.../datasource/paimon/PaimonMetadataOpsTest.java | 18 +
.../datasource/paimon/PaimonTransactionTest.java | 197 ++
.../doris/datasource/paimon/PaimonUtilTest.java | 288 +-
.../datasource/paimon/PaimonWriteBindingTest.java | 151 +
.../datasource/paimon/PaimonWriteTargetTest.java | 64 +
.../apache/doris/httpv2/meta/MetaServiceTest.java | 295 ++
.../apache/doris/mtmv/MTMVPartitionUtilTest.java | 15 +
.../parser/ParseInsertPartitionSpecTest.java | 14 +
.../rules/analysis/FunctionRegistryTest.java | 74 +
.../rules/analysis/NormalizeRepeatTest.java | 30 +
.../rules/analysis/VariantEqualityContextTest.java | 119 +
.../rules/expression/check/CheckCastTest.java | 10 +
.../doris/nereids/trees/expressions/CastTest.java | 30 +
.../trees/expressions/functions/agg/CountTest.java | 56 +-
.../functions/scalar/ElementAtTest.java | 35 +-
.../expressions/literal/StringLikeLiteralTest.java | 41 +
.../literal/TimestampTzLiteralTest.java | 122 +
.../physical/PhysicalPaimonTableSinkTest.java | 63 +
.../apache/doris/nereids/types/DataTypeTest.java | 8 +
.../doris/nereids/util/TypeCoercionUtilsTest.java | 100 +
.../java/org/apache/doris/qe/VariableMgrTest.java | 12 +
fe/pom.xml | 7 +-
gensrc/proto/data.proto | 1 +
gensrc/proto/types.proto | 1 +
gensrc/thrift/DataSinks.thrift | 26 +
gensrc/thrift/FrontendService.thrift | 2 +
gensrc/thrift/PaloInternalService.thrift | 1 +
gensrc/thrift/Types.thrift | 2 +
...est_timestamptz_partition_boundary_timezone.out | 26 +
.../paimon/paimon_schema_change_ddl.out | 125 +
.../paimon/test_paimon_partition_table.out | 19 +-
.../paimon/test_paimon_write_boundary.out | 10 +-
.../paimon/test_paimon_hms_catalog_write.out | 13 +
.../paimon/test_paimon_rest_catalog_write.out | 13 +
...cloud_mow_load_preserves_schema_change_lock.out | 4 +
regression-test/data/mtmv_p0/test_paimon_mtmv.out | 3 +-
.../data/nereids_syntax_p0/agg_4_phase.out | 2 +
.../test_paimon_create_ddl_write_properties.out | 84 +
.../paimon_write/test_paimon_write_append_only.out | 43 +
.../test_paimon_write_bucket_modes.out | 56 +
.../test_paimon_write_changelog_producer.out | 27 +
.../paimon_write/test_paimon_write_compaction.out | 11 +
.../test_paimon_write_complex_types.out | 36 +
.../paimon_write/test_paimon_write_edge_cases.out | 30 +
.../paimon_write/test_paimon_write_failures.out | 32 +
.../test_paimon_write_merge_engine.out | 15 +
.../data/paimon_write/test_paimon_write_pk.out | 52 +
.../test_paimon_write_schema_change.out | 532 ++++
.../paimon_write/test_paimon_write_transaction.out | 150 +
.../data/paimon_write/test_paimon_write_types.out | 37 +
...t_agg_after_nested_loop_join_local_exchange.out | 3 +
.../variant_p0/test_variant_equality_contexts.out | 39 +
.../test_variant_ordering_comparison_error.out | 16 +
.../data/variant_p0/variant_compute_v2.out | 235 ++
.../data/variant_p0/variant_parse_functions.out | 24 +
.../cloud_p0/cache/ttl/alter_ttl_max_int64.groovy | 41 +-
.../cloud_p0/multi_cluster/test_auto_start.groovy | 4 +
.../multi_cluster/test_unfinished_txn_2pc.groovy | 117 +
..._timestamptz_partition_boundary_timezone.groovy | 257 ++
.../paimon/paimon_schema_change_ddl.groovy | 398 +++
.../test_paimon_schema_time_travel_matrix.groovy | 4 +-
.../paimon/test_paimon_write_boundary.groovy | 22 +-
.../tvf/test_hdfs_parquet_group5.groovy | 8 +-
.../tvf/test_hdfs_parquet_group6.groovy | 8 +-
.../external_table_p0/tvf/test_http_tvf.groovy | 9 +-
.../test_external_catalog_maxcompute.groovy | 6 +-
.../maxcompute/test_max_compute_schema.groovy | 5 +-
.../test_max_compute_validate_connection.groovy | 102 +
.../paimon/test_paimon_hms_catalog_write.groovy | 113 +
.../paimon/test_paimon_rest_catalog_write.groovy | 108 +
...ud_mow_load_preserves_schema_change_lock.groovy | 101 +
.../suites/meta_action_p0/test_dump_image.groovy | 1 +
.../suites/mtmv_p0/test_paimon_mtmv.groovy | 7 +-
.../suites/nereids_syntax_p0/agg_4_phase.groovy | 25 +-
.../test_paimon_create_ddl_write_properties.groovy | 400 +++
.../test_paimon_write_append_only.groovy | 219 ++
.../test_paimon_write_bucket_modes.groovy | 497 ++++
.../test_paimon_write_changelog_producer.groovy | 293 ++
.../test_paimon_write_compaction.groovy | 179 ++
.../test_paimon_write_complex_types.groovy | 293 ++
.../test_paimon_write_edge_cases.groovy | 140 +
.../paimon_write/test_paimon_write_failures.groovy | 187 ++
.../test_paimon_write_merge_engine.groovy | 155 ++
.../paimon_write/test_paimon_write_pk.groovy | 197 ++
.../test_paimon_write_schema_change.groovy | 1097 ++++++++
.../test_paimon_write_transaction.groovy | 466 ++++
.../paimon_write/test_paimon_write_types.groovy | 203 ++
.../sql/auto_partition_quorum_race_docker.groovy | 98 +
...gg_after_nested_loop_join_local_exchange.groovy | 130 +
.../test_variant_equality_contexts.groovy | 289 ++
.../test_variant_ordering_comparison_error.groovy | 110 +
.../suites/variant_p0/variant_compute_v2.groovy | 708 +++++
.../variant_p0/variant_parse_functions.groovy | 121 +
405 files changed, 48442 insertions(+), 894 deletions(-)
create mode 100644 be/src/core/column/variant_v2/column_variant_v2.cpp
create mode 100644 be/src/core/column/variant_v2/column_variant_v2.h
create mode 100644
be/src/core/column/variant_v2/column_variant_v2_read_view.cpp
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
=> be/src/core/column/variant_v2/column_variant_v2_typed_column.cpp (52%)
create mode 100644
be/src/core/column/variant_v2/column_variant_v2_typed_column.h
create mode 100644 be/src/core/data_type/data_type_variant_v2.cpp
create mode 100644 be/src/core/data_type/data_type_variant_v2.h
create mode 100644 be/src/core/data_type_serde/data_type_variant_v2_serde.cpp
create mode 100644 be/src/core/data_type_serde/data_type_variant_v2_serde.h
create mode 100644 be/src/core/value/variant/variant_batch_builder.cpp
create mode 100644 be/src/core/value/variant/variant_batch_builder.h
create mode 100644 be/src/core/value/variant/variant_canonical.cpp
create mode 100644 be/src/core/value/variant/variant_canonical.h
create mode 100644 be/src/core/value/variant/variant_field.cpp
create mode 100644 be/src/core/value/variant/variant_field.h
create mode 100644 be/src/core/value/variant/variant_metadata.cpp
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
=> be/src/core/value/variant/variant_metadata.h (53%)
create mode 100644 be/src/core/value/variant/variant_parquet_encoding.h
create mode 100644 be/src/core/value/variant/variant_scalar.cpp
create mode 100644 be/src/core/value/variant/variant_scalar.h
create mode 100644 be/src/core/value/variant/variant_value.cpp
create mode 100644 be/src/core/value/variant/variant_value.h
create mode 100644 be/src/exec/operator/paimon_table_sink_operator.cpp
create mode 100644 be/src/exec/operator/paimon_table_sink_operator.h
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
=> be/src/exec/sink/writer/paimon/ffi_paimon_write_backend.cpp (61%)
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
=> be/src/exec/sink/writer/paimon/ffi_paimon_write_backend.h (53%)
create mode 100644 be/src/exec/sink/writer/paimon/jni_paimon_write_backend.cpp
create mode 100644 be/src/exec/sink/writer/paimon/jni_paimon_write_backend.h
create mode 100644 be/src/exec/sink/writer/paimon/paimon_jni_memory_manager.cpp
create mode 100644 be/src/exec/sink/writer/paimon/paimon_jni_memory_manager.h
create mode 100644 be/src/exec/sink/writer/paimon/paimon_table_writer.cpp
create mode 100644 be/src/exec/sink/writer/paimon/paimon_table_writer.h
create mode 100644 be/src/exec/sink/writer/paimon/paimon_write_backend.h
create mode 100644
be/src/exec/sink/writer/paimon/paimon_write_backend_factory.cpp
create mode 100644
be/src/exprs/function/cast/variant_v2/cast_array_to_variant.cpp
create mode 100644
be/src/exprs/function/cast/variant_v2/cast_variant_to_array.cpp
create mode 100644
be/src/exprs/function/cast/variant_v2/cast_variant_to_jsonb.cpp
create mode 100644
be/src/exprs/function/cast/variant_v2/cast_variant_to_scalar.cpp
create mode 100644
be/src/exprs/function/cast/variant_v2/cast_variant_to_string.cpp
create mode 100644 be/src/exprs/function/cast/variant_v2/cast_variant_v2.cpp
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/TransactionType.java =>
be/src/exprs/function/cast/variant_v2/cast_variant_v2.h (63%)
create mode 100644
be/src/exprs/function/cast/variant_v2/cast_variant_v2_internal.h
create mode 100644 be/src/exprs/function/function_variant_element_v2.cpp
create mode 100644 be/src/exprs/function/function_variant_element_v2.h
create mode 100644 be/src/exprs/function/function_variant_parse.cpp
create mode 100644 be/src/exprs/function/parse/variant_jsonb_parse.cpp
create mode 100644 be/src/exprs/function/parse/variant_jsonb_parse.h
create mode 100644 be/src/exprs/function/parse/variant_string_parse.cpp
create mode 100644 be/src/exprs/function/parse/variant_string_parse.h
create mode 100644 be/src/util/bthread_shared_mutex.h
create mode 100644 be/test/core/column/column_variant_v2_test.cpp
create mode 100644
be/test/core/data_type_serde/data_type_variant_v2_serde_binary_roundtrip_test.cpp
create mode 100644
be/test/core/data_type_serde/data_type_variant_v2_serde_input_test.cpp
create mode 100644
be/test/core/data_type_serde/data_type_variant_v2_serde_jsonb_test.cpp
create mode 100644
be/test/core/data_type_serde/data_type_variant_v2_serde_output_test.cpp
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/TransactionType.java =>
be/test/exec/sink/writer/paimon/paimon_write_backend_test.cpp (63%)
create mode 100644
be/test/exprs/aggregate/aggregate_function_uniq_variant_test.cpp
create mode 100644
be/test/exprs/function/cast/cast_variant_v2_benchmark_test.cpp
create mode 100644 be/test/exprs/function/cast/cast_variant_v2_from_test.cpp
create mode 100644 be/test/exprs/function/cast/cast_variant_v2_to_test.cpp
create mode 100644
be/test/exprs/function/function_variant_element_v2_encoded_test.cpp
create mode 100644
be/test/exprs/function/function_variant_element_v2_string_test.cpp
create mode 100644 be/test/exprs/function/function_variant_parse_test.cpp
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
=> be/test/exprs/variant_v2_execution_test.cpp (59%)
create mode 100644 be/test/util/bthread_shared_mutex_test.cpp
create mode 100644 be/test/util/variant/testdata/ParquetVariantGolden.java
create mode 100644
be/test/util/variant/testdata/doris_java_verified_vectors.tsv
create mode 100644 be/test/util/variant/testdata/parquet_java_vectors.tsv
create mode 100644 be/test/util/variant/variant_batch_builder_test.cpp
create mode 100644 be/test/util/variant/variant_canonical_test.cpp
create mode 100644 be/test/util/variant/variant_field_test.cpp
create mode 100644 be/test/util/variant/variant_golden_vector_test.cpp
create mode 100644 be/test/util/variant/variant_jsonb_parse_test.cpp
create mode 100644 be/test/util/variant/variant_string_parse_test.cpp
create mode 100644 be/test/util/variant/variant_test_utils.cpp
create mode 100644 be/test/util/variant/variant_test_utils.h
create mode 100644 be/test/util/variant/variant_value_test.cpp
rename fe/be-java-extensions/{paimon-scanner => paimon-connector}/pom.xml (93%)
create mode 100644
fe/be-java-extensions/paimon-connector/src/main/java/org/apache/doris/paimon/DorisMemorySegmentPool.java
create mode 100644
fe/be-java-extensions/paimon-connector/src/main/java/org/apache/doris/paimon/GlobalIndexAssigner.java
create mode 100644
fe/be-java-extensions/paimon-connector/src/main/java/org/apache/doris/paimon/PaimonArrowConverter.java
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/main/java/org/apache/doris/paimon/PaimonColumnValue.java
(100%)
create mode 100644
fe/be-java-extensions/paimon-connector/src/main/java/org/apache/doris/paimon/PaimonCommitCodec.java
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/main/java/org/apache/doris/paimon/PaimonJdbcDriverUtils.java
(100%)
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/main/java/org/apache/doris/paimon/PaimonJniScanner.java
(97%)
create mode 100644
fe/be-java-extensions/paimon-connector/src/main/java/org/apache/doris/paimon/PaimonJniWriter.java
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/main/java/org/apache/doris/paimon/PaimonTypeUtils.java
(100%)
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/main/java/org/apache/doris/paimon/PaimonUtils.java (100%)
create mode 100644
fe/be-java-extensions/paimon-connector/src/main/java/org/apache/doris/paimon/PaimonWriteSchema.java
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/main/resources/package.xml (100%)
copy
fe/{fe-core/src/main/java/org/apache/doris/transaction/IcebergTransactionManager.java
=>
be-java-extensions/paimon-connector/src/test/java/org/apache/doris/paimon/GlobalIndexAssignerTest.java}
(50%)
create mode 100644
fe/be-java-extensions/paimon-connector/src/test/java/org/apache/doris/paimon/PaimonArrowConverterTest.java
create mode 100644
fe/be-java-extensions/paimon-connector/src/test/java/org/apache/doris/paimon/PaimonCommitCodecTest.java
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/test/java/org/apache/doris/paimon/PaimonJdbcDriverUtilsTest.java
(100%)
rename fe/be-java-extensions/{paimon-scanner =>
paimon-connector}/src/test/java/org/apache/doris/paimon/PaimonJniScannerTest.java
(100%)
create mode 100644
fe/be-java-extensions/paimon-connector/src/test/java/org/apache/doris/paimon/PaimonJniWriterTest.java
create mode 100644
fe/be-java-extensions/paimon-connector/src/test/java/org/apache/doris/paimon/PaimonWriteSchemaTest.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonTransaction.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonWriteBinding.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonWriteTarget.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundPaimonTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/implementation/LogicalPaimonTableSinkToPhysicalPaimonTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/NullToNonNullFunction.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{NotNullOrEmpty.java
=> ParseToVariant.java} (61%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{NullOrEmpty.java
=> TryParseToVariant.java} (62%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/PaimonInsertCommandContext.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/PaimonInsertExecutor.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalPaimonTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalPaimonTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/planner/PaimonTableSink.java
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/{IcebergTransactionManager.java
=> PaimonTransactionManager.java} (64%)
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/cloud/catalog/CloudUpgradeMgrTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/common/util/HttpURLUtilTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/maxcompute/MCTransactionTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/maxcompute/MaxComputeExternalCatalogTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/maxcompute/source/MaxComputeScanNodeTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/paimon/PaimonTransactionTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/paimon/PaimonWriteBindingTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/paimon/PaimonWriteTargetTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/httpv2/meta/MetaServiceTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/analysis/VariantEqualityContextTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/physical/PhysicalPaimonTableSinkTest.java
create mode 100644
regression-test/data/datatype_p0/timestamptz/test_timestamptz_partition_boundary_timezone.out
create mode 100644
regression-test/data/external_table_p0/paimon/paimon_schema_change_ddl.out
create mode 100644
regression-test/data/external_table_p2/paimon/test_paimon_hms_catalog_write.out
create mode 100644
regression-test/data/external_table_p2/paimon/test_paimon_rest_catalog_write.out
create mode 100644
regression-test/data/fault_injection_p0/cloud/test_cloud_mow_load_preserves_schema_change_lock.out
create mode 100644
regression-test/data/paimon_write/test_paimon_create_ddl_write_properties.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_append_only.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_bucket_modes.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_changelog_producer.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_compaction.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_complex_types.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_edge_cases.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_failures.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_merge_engine.out
create mode 100644 regression-test/data/paimon_write/test_paimon_write_pk.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_schema_change.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_transaction.out
create mode 100644
regression-test/data/paimon_write/test_paimon_write_types.out
create mode 100644
regression-test/data/query_p0/join/test_agg_after_nested_loop_join_local_exchange.out
create mode 100644
regression-test/data/variant_p0/test_variant_equality_contexts.out
create mode 100644
regression-test/data/variant_p0/test_variant_ordering_comparison_error.out
create mode 100644 regression-test/data/variant_p0/variant_compute_v2.out
create mode 100644 regression-test/data/variant_p0/variant_parse_functions.out
create mode 100644
regression-test/suites/cloud_p0/multi_cluster/test_unfinished_txn_2pc.groovy
create mode 100644
regression-test/suites/datatype_p0/timestamptz/test_timestamptz_partition_boundary_timezone.groovy
create mode 100644
regression-test/suites/external_table_p0/paimon/paimon_schema_change_ddl.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/test_max_compute_validate_connection.groovy
create mode 100644
regression-test/suites/external_table_p2/paimon/test_paimon_hms_catalog_write.groovy
create mode 100644
regression-test/suites/external_table_p2/paimon/test_paimon_rest_catalog_write.groovy
create mode 100644
regression-test/suites/fault_injection_p0/cloud/test_cloud_mow_load_preserves_schema_change_lock.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_create_ddl_write_properties.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_append_only.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_bucket_modes.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_changelog_producer.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_compaction.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_complex_types.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_edge_cases.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_failures.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_merge_engine.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_pk.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_schema_change.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_transaction.groovy
create mode 100644
regression-test/suites/paimon_write/test_paimon_write_types.groovy
create mode 100644
regression-test/suites/partition_p1/auto_partition/sql/auto_partition_quorum_race_docker.groovy
create mode 100644
regression-test/suites/query_p0/join/test_agg_after_nested_loop_join_local_exchange.groovy
create mode 100644
regression-test/suites/variant_p0/test_variant_equality_contexts.groovy
create mode 100644
regression-test/suites/variant_p0/test_variant_ordering_comparison_error.groovy
create mode 100644 regression-test/suites/variant_p0/variant_compute_v2.groovy
create mode 100644
regression-test/suites/variant_p0/variant_parse_functions.groovy
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]