This is an automated email from the ASF dual-hosted git repository.
dataroaring pushed a change to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git
from f31c2f4afe7 mark 3.0.0-rc06
new 6837ec61062 [fix](Nereids) could not push down filter through cte
producer sometimes (#35463)
new 87bca4f6328 [Refactor](Status) Refactor the scanner scheduler code
make return error msg means (#35286)
new 95e87c49d5c [fix](binlog) Fix add partition record sql (#35461)
new b8d66bfcf53 [fix](index) should not use light index change for bloom
filter index (#35214)
new 15b226fd1f2 [fix](statistics) correct update rows when doing
multi-table load (#35474)
new c430a66e0d2 [opt](external) ignore not find files (#35319)
new d19bf1fb21d [hotfix](jdbc table) Restoring a table type that should
not be deleted (#35433)
new 1adf1812af6 [fix] (compaction) fix CompactionPermitLimiter causing
compaction to stall (#35078)
new 17d5b981e11 [chore](cloud) Run GC if not enough memory when checkpoint
(#35331)
new 6d6c2dc6c4b [enhancement](export) filter empty partition before export
table to remote storage (#35389)
new 7fb93a71219 [fix](paimon)fix paimon cache bug (#35309)
new e1494bbf02f [fix](fe) Fix drop frontend cause `bdbje` and `fe memory`
inconsistent state (#35203)
new ab72ae5684e [fix](spill) fix wrong disk usage of spill (#35423)
new 168523d269a [Fix](JobSchedual) Modify the default value of
`async_task_consumer_thread_num` (#35456)
new 637706fd148 [Bug](runtime-filter) do not process rf on
HashJoinBuildSinkLocalState::close when query ca… (#35487)
new c49b3db4762 [Fix](group commit) Fix group commit block queue mem
estimate faule (#35314)
new df95c34147e [github](pr) simplify the PR template (#35550)
new 9b08910a56e [fix](Nereids) fix Illegal aggregate node: group by and
output is empty (#35497)
new cc2648c1567 [opt](fe) Optimize fe show table statistics (#35457)
new 82f69fd80d4 [fix](ci) tmp exclude block case stress_test_insert_into
(#35553)
new 277f3dc47cd [fix](restore) Fix restore table name when
lower_case_table_names enabled (#35508)
new 97890fa472e [fix](statistics)Record update rows shouldn't fail load
publish. (#35549)
new 9dfabbc3f66 [docker](hive) sync for hive initializing (#35479)
new d16a26dc44d [bugfix](iceberg)support null values as partition (#35503)
new d0c00360587 [Fix](executor)Fix backend_active_tasks only scan one be
(#35492)
new 25e98c48edd [improvement](page builder) avoid allocating big memory in
ctor (#35493)
new 0d4635d0d68 [fix](pipeline) Disable non-pipeline engine for stream
load (#35555)
new e31e8f5e645 [fix](compaction) fix inaccurate compaction cnt (#35539)
new 975083ed8ff [fix](publish) fix publish failed when balance (#35462)
new 3f2811559d5 [fix](httpapi) restore compaction/run_status api can show
be's overall compaction status and refactor code (#35278)
new 6e82b7a9729 [regression-test](framework) add log for scpFiles (#35570)
new 459708bf59a [fix](Nereids) aggregate combinator should be
case-insensitive (#35540)
new 3f50783bbaf [fix](auth) Fix no auth,but can select count(*) (#35465)
new 30db5b05e41 [Fix](hive-writer) Fix s3 file commiter not working.
(#35502)
new 632f1fa2f58 [fix](pipeline) Prevent concurrent accessing to
dependencies (#35560)
new 5413c414414 [fix](snappy) avoid potential buffer overflow (#35537)
new 563b154c0aa [fix](Nereids) prune not required window expressions on
window operator (#35504)
new fa3f58f6dac [chore](fs) add a config to contorl if sync on close
(#35391)
new 5075f319e6e [fix](auto-partition) fix auto partition load lost data in
multi sender (#35287)
new b6cdd40b90b [Feature](iceberg-writer) Implements iceberg sink basic
functionality for inserting into table. (#34929)
new 359f4564a4b [pipeline](API) Add a new API to find pipeline tasks by a
specific query ID (#35563)
new 05329cfc364 [fix](mtmv) Fix partition mv rewrite result wrong (#35236)
new 39640ad16af [fix](mtmv) Fix getting related partition table wrongly
when multi base partition table exists (#34781)
new dd2ed392e5a [enhance](mtmv) Mv refresh on commit (#34548)
new 2360935fff7 [fix](inverted index) add in list to fast execute logic
after hit index (#35344)
new cf82dc64587 [fix](Nereids) adjust nullable for set operation may cause
IndexOutOfBound (#35588)
new cc4a4470bba [feature](statistics)Support partition stats cache (#35517)
new 7be7b37a749 [enhancement](memory) Add `ThreadMemTrackerMgr` BE UT
(#35518)
new 12bcc1af585 [fix](ub) fix uninitialized accesses in BE (#35370)
new fd4b72b02b2 [fix](short circurt) fix return default value issue
(#34186)
new cadd92431c3 [Fix](ci) release a testcase and remove some outdate log
settings (#35580)
new 6aff5b18947 [fix](Nereids) remove getTableInMinidumpCache temporary
(#35571)
new c572a7adc7b [fix](test) fix
test_create_table_without_distribution.groovy bug (#35486)
new 2ccaf023fc5 [refactor](functions) clean some ip functions code and
make IS_IP_ADDRESS_IN_RANGE DEPENDS_ON_ARGUMENT (#35239)
new 97dbd7146a6 [pipeline](tracing) Fix pipeline tracing tools (#35595)
new 714537e1f6f [fix](backup) save finished state for local repo backup
(#35491)
new 7af77b9d3b0 [fix](group commit) Group commit http stream should not
begin txn (#35494)
new 5f1255ee0aa [regression-test](framework) fix scp bugs in regression
framework (#35613)
new 739857dd5ba [regression-test](case) remove unused files (#35614)
new 380528262ab [fix](inverted index) Remove float/double support in index
writer (#35615)
new e02a42d0996 [fix](set) incorrect result of set operator (#35607)
new b9d9d2ed0c0 [fix](resource-tag) missing resource tag after forwarding
to master (#35618)
new 273346472f6 [cases](array_contains)add cases for array_contains
supporting inverted index and fix stopwords as query string (#35299)
new ca1e471556b [opt](audit) add timeout for audit log load and modify the
label format (#35535)
new 98fdec3036e [fix](regression)Remove useless case which may cause
preHeat npe. (#35582)
new 71d17b457ed [fix](SenderQueue) error memlimit in add/sub
_blocks_memory_usage (#35428)
new 1db35a5bd33 [fix](fe) fix start fe failed when recover fe in different
host (#35612)
new e902dc6b09f [feature-wip](Cloud) Introduce azure core C++ sdk (#35208)
new 6fa67e11509 [enhance](mtmv)add truncate table case (#35599)
new 8cab1cff73b [fix](meta) fix catalog replay error (#35532)
new 690957e31cd [feature-wip](Cloud) Extract obj storage client interface
to suite different kinds of object storage (#35307)
new 82a5ff6cfed [fix](s3-load) refactor s3 parallelism case and remove it
to p2 (#35629)
new 30c556a9769 [FE](session-variable) Add a debug variable of constant
fold (#35584)
new 5cb08d52edd [fix](stats) Add synchronize for some analysis maps to
avoid ConcurrentModificationException (#35591)
new 76c8575a72c [Feature](column) do not change column nullable on
ColumnDef (#35574)
new de4b2abc34e [opt](nereids) compare str literal as date literal to
compute selectivity (#35610)
new 7a1582ef031 [chore](multi catalog) Improve network interface detection
in Hive container script (#35089)
new c692ff8b951 [fix](agg) Update agg counter in execution (#35624)
new 5058a70bb96 [fix](mtmv) Fix get mv statistics plan wrong and optimize
code usage (#35623)
new e717c08b1e3 [feature] (recycle bin) Support delete catalog recycle bin
(#31893)
new ae074bd0db7 [fix](mtmv) ignore MTMV when backup and restore (#35586)
new b93a17536c6 [bug](Compile) Add default value for optional field to
pass compile's missing-field-initializers check (#35648)
new 81fc589fe5a [fix](auth)fix simple auth check and default username
(#35620)
new c03b8f11462 [Bug](backend-options) fix use after free on
BackendOptions::get_local_backend() (#35634)
new 915a1859ec1 [fix](catalog) close connection on refresh (#35426)
new 524897da8fc [Fix](Variant) fix variant with empty json key (#35546)
new 742e2641361 [fix](nereids) do not generate runtime filter on
schema-scan (#35655)
new bc9618850e1 [improvement](page builder) catch exception when page
builder reset to avoid coredump (#35597)
new 61d255067a7 [Test](external-table-writer) Use `use_meta_cache=true` to
create catalog when executing hive/iceberg writer regression tests. (#35640)
new 90cb2e74a8b [fix](clone) fix calculate merge missing version (#35627)
new f655f3a87e8 [refactor](cancel) disable cancel instance for pipeline
(#35632)
new 80fc952dfdf [feat](thrift) add NereidsId and cardinality to TPlanNode
(#35482)
new d1ecb62b74e [opt](mv) calc Projection cost according to the
expressions in project list (#35652)
new 4f7bdced2c5 [Improvement](executor)Support kill query in be (#35602)
new f4f906f77d1 [Test](regression-test): Normalize S3 http url (#35666)
new 2843f8853f8 [regression-test](load) add something like $.tag.[a.b]
key's json case (#35134)
new 02dd0d505cc [improve](txn-insert) Add txn insert p2 case (#35439)
new bceeb5b10cf [fix](binlog) Add is temp for UpsertRecord (#35636)
new 5a054f1e9ad [Performance](opt) opt the scan performance and remove
unless code (#35604)
new 9c917f380d8 [chore](third-party) Add a workflow: Build Third Party
Libraries (macOS-arm64) (#35705)
new 5e5ecb25c86 [feature](statistics)Support clear stale partition stats.
(#35661)
new c4b0465bbff [chore](ASF) Make the workflow Build Third Party Libraries
(macOS-arm64) required (#35706)
new b3a8aef3d19 [fix](log) print log of error status (#35687)
new f638c8e05de [Feature](Prepared Statment) Implement in nereids planner
(#35318)
new 26ecb1b260f [opt](mtmv) Improve the mv rewrite performance by
optimize code usage (#35674)
new 8a8bf8336a1 [fix](regression-test) Fix s3 load profile test failed due
to css schema change (#35633)
The 106 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.asf.yaml | 1 +
.github/PULL_REQUEST_TEMPLATE.md | 4 -
.github/workflows/build-thirdparty.yml | 60 +-
be/src/agent/be_exec_version_manager.h | 1 +
be/src/cloud/cloud_base_compaction.cpp | 2 +-
be/src/cloud/cloud_compaction_action.cpp | 46 +-
be/src/cloud/cloud_cumulative_compaction.cpp | 3 +-
be/src/cloud/cloud_full_compaction.cpp | 2 +-
be/src/cloud/cloud_tablet.cpp | 30 +
be/src/cloud/cloud_tablet.h | 7 +
be/src/cloud/cloud_tablets_channel.cpp | 6 +-
be/src/common/config.cpp | 13 +-
be/src/common/config.h | 10 +-
be/src/common/status.h | 2 +
be/src/exec/data_sink.cpp | 15 +
be/src/exec/tablet_info.cpp | 17 +-
be/src/http/action/compaction_action.cpp | 35 +-
be/src/http/action/pipeline_task_action.cpp | 30 +
be/src/http/action/pipeline_task_action.h | 9 +
be/src/io/file_factory.cpp | 5 +-
be/src/io/fs/local_file_writer.cpp | 2 +-
be/src/io/fs/obj_storage_client.h | 103 ++
be/src/io/fs/s3_file_bufferpool.cpp | 7 +-
be/src/io/fs/s3_file_bufferpool.h | 2 +
be/src/io/fs/s3_file_reader.cpp | 22 +-
be/src/io/fs/s3_file_reader.h | 6 +-
be/src/io/fs/s3_file_system.cpp | 333 ++---
be/src/io/fs/s3_file_system.h | 18 +-
be/src/io/fs/s3_file_writer.cpp | 244 +---
be/src/io/fs/s3_file_writer.h | 24 +-
be/src/io/fs/s3_obj_storage_client.cpp | 348 +++++
be/src/io/fs/s3_obj_storage_client.h | 65 +
be/src/olap/base_tablet.cpp | 30 -
be/src/olap/base_tablet.h | 6 +-
be/src/olap/column_predicate.h | 4 +-
be/src/olap/compaction_permit_limiter.cpp | 20 +-
be/src/olap/hll.cpp | 19 +-
be/src/olap/hll.h | 73 +-
be/src/olap/rowset/segment_v2/binary_dict_page.cpp | 48 +-
be/src/olap/rowset/segment_v2/binary_dict_page.h | 11 +-
be/src/olap/rowset/segment_v2/binary_plain_page.h | 34 +-
be/src/olap/rowset/segment_v2/binary_prefix_page.h | 12 +-
be/src/olap/rowset/segment_v2/bitshuffle_page.h | 38 +-
.../segment_v2/bloom_filter_index_reader.cpp | 4 +
be/src/olap/rowset/segment_v2/column_writer.cpp | 2 +-
be/src/olap/rowset/segment_v2/encoding_info.cpp | 32 +-
.../rowset/segment_v2/frame_of_reference_page.h | 15 +-
.../rowset/segment_v2/indexed_column_writer.cpp | 2 +-
.../rowset/segment_v2/inverted_index_writer.cpp | 2 -
be/src/olap/rowset/segment_v2/page_builder.h | 18 +-
be/src/olap/rowset/segment_v2/plain_page.h | 24 +-
be/src/olap/rowset/segment_v2/rle_page.h | 30 +-
be/src/olap/rowset/segment_v2/segment_iterator.cpp | 8 +-
be/src/olap/schema_change.cpp | 3 +
be/src/olap/tablet.cpp | 33 +
be/src/olap/tablet.h | 7 +
be/src/olap/tablet_schema.cpp | 18 +
be/src/olap/tablet_schema.h | 2 +
be/src/pipeline/dependency.h | 4 +-
be/src/pipeline/exec/aggregation_sink_operator.cpp | 9 +-
be/src/pipeline/exec/aggregation_sink_operator.h | 1 +
.../pipeline/exec/aggregation_source_operator.cpp | 19 +-
be/src/pipeline/exec/aggregation_source_operator.h | 1 -
be/src/pipeline/exec/file_scan_operator.cpp | 3 +-
be/src/pipeline/exec/hashjoin_build_sink.cpp | 2 +-
.../pipeline/exec/iceberg_table_sink_operator.cpp | 64 +-
be/src/pipeline/exec/iceberg_table_sink_operator.h | 94 ++
be/src/pipeline/exec/jdbc_scan_operator.cpp | 3 +-
be/src/pipeline/exec/olap_scan_operator.h | 5 +-
be/src/pipeline/exec/operator.cpp | 21 +-
be/src/pipeline/exec/operator.h | 5 +
be/src/pipeline/exec/scan_operator.cpp | 1 -
be/src/pipeline/exec/scan_operator.h | 1 -
be/src/pipeline/exec/set_sink_operator.cpp | 2 +-
be/src/pipeline/exec/set_source_operator.cpp | 4 +-
be/src/pipeline/pipeline.cpp | 9 +
be/src/pipeline/pipeline_fragment_context.cpp | 15 +-
be/src/pipeline/pipeline_task.cpp | 31 +-
be/src/pipeline/pipeline_task.h | 4 +-
be/src/pipeline/pipeline_tracing.cpp | 48 +-
be/src/pipeline/pipeline_tracing.h | 16 +-
be/src/runtime/descriptors.cpp | 5 +
be/src/runtime/descriptors.h | 8 +-
be/src/runtime/exec_env.h | 4 +-
be/src/runtime/external_scan_context_mgr.cpp | 9 +-
be/src/runtime/external_scan_context_mgr.h | 3 +-
be/src/runtime/fragment_mgr.cpp | 106 +-
be/src/runtime/fragment_mgr.h | 11 +-
be/src/runtime/group_commit_mgr.cpp | 66 +-
be/src/runtime/group_commit_mgr.h | 9 +-
be/src/runtime/load_channel.cpp | 25 +-
be/src/runtime/load_channel.h | 9 +-
be/src/runtime/load_channel_mgr.cpp | 8 -
be/src/runtime/load_stream.cpp | 2 +-
be/src/runtime/load_stream.h | 4 +
be/src/runtime/memory/thread_mem_tracker_mgr.h | 8 +-
be/src/runtime/query_context.cpp | 27 +
be/src/runtime/query_context.h | 1 +
be/src/runtime/runtime_state.h | 4 +
be/src/runtime/tablets_channel.cpp | 43 +-
be/src/runtime/tablets_channel.h | 9 +-
be/src/runtime/thread_context.h | 6 -
be/src/service/backend_options.cpp | 16 +-
be/src/service/backend_options.h | 5 +-
be/src/service/backend_service.cpp | 37 +-
be/src/service/http_service.cpp | 5 +
be/src/util/bitmap_value.h | 7 +-
be/src/util/block_compression.cpp | 4 +-
be/src/util/s3_util.cpp | 3 +
be/src/vec/columns/column.h | 4 +-
be/src/vec/columns/column_complex.h | 30 +-
be/src/vec/core/block.cpp | 20 +-
be/src/vec/core/block.h | 2 +
be/src/vec/core/field.h | 15 +-
be/src/vec/data_types/data_type_hll.h | 12 +-
.../data_types/serde/data_type_nullable_serde.cpp | 10 +-
.../exec/format/table/iceberg/partition_spec.cpp | 71 +
.../vec/exec/format/table/iceberg/partition_spec.h | 97 ++
.../format/table/iceberg/partition_spec_parser.cpp | 67 +
.../format/table/iceberg/partition_spec_parser.h | 56 +
be/src/vec/exec/format/table/iceberg/schema.cpp | 53 +
.../exec/format/table/iceberg/schema.h} | 37 +-
.../exec/format/table/iceberg/schema_parser.cpp | 163 +++
.../vec/exec/format/table/iceberg/schema_parser.h | 68 +
.../vec/exec/format/table/iceberg/struct_like.h | 39 +-
be/src/vec/exec/format/table/iceberg/types.cpp | 194 +++
be/src/vec/exec/format/table/iceberg/types.h | 403 ++++++
.../table/iceberg/unbound_partition_spec.cpp | 75 +
.../format/table/iceberg/unbound_partition_spec.h | 75 +
be/src/vec/exec/scan/new_jdbc_scanner.cpp | 1 +
be/src/vec/exec/scan/pip_scanner_context.h | 17 +-
be/src/vec/exec/scan/scanner_context.cpp | 55 +-
be/src/vec/exec/scan/scanner_context.h | 2 +-
be/src/vec/exec/scan/scanner_scheduler.cpp | 68 +-
be/src/vec/exec/scan/vfile_scanner.cpp | 12 +-
be/src/vec/exec/vjdbc_connector.h | 15 +-
be/src/vec/exec/vset_operation_node.cpp | 6 +-
be/src/vec/exec/vset_operation_node.h | 4 +-
.../vec/exprs/table_function/vexplode_bitmap.cpp | 2 +-
be/src/vec/exprs/vectorized_fn_call.cpp | 30 +-
be/src/vec/exprs/vectorized_fn_call.h | 3 -
be/src/vec/exprs/vexpr.cpp | 39 +
be/src/vec/exprs/vexpr.h | 7 +
be/src/vec/exprs/vin_predicate.cpp | 13 +
be/src/vec/exprs/vin_predicate.h | 2 +
be/src/vec/functions/array/function_array_index.h | 23 +-
be/src/vec/functions/function.h | 3 +-
be/src/vec/functions/function_ip.cpp | 2 +
be/src/vec/functions/function_ip.h | 223 +--
be/src/vec/json/parse2column.cpp | 6 +-
be/src/vec/json/path_in_data.cpp | 10 +-
be/src/vec/runtime/vdata_stream_recvr.cpp | 17 +-
be/src/vec/runtime/vdata_stream_recvr.h | 5 +
be/src/vec/runtime/vorc_transformer.cpp | 110 +-
be/src/vec/runtime/vorc_transformer.h | 16 +-
be/src/vec/runtime/vparquet_transformer.cpp | 24 +-
be/src/vec/runtime/vparquet_transformer.h | 5 +-
be/src/vec/sink/load_stream_map_pool.cpp | 11 +-
be/src/vec/sink/load_stream_map_pool.h | 4 +-
be/src/vec/sink/load_stream_stub.cpp | 13 +-
be/src/vec/sink/load_stream_stub.h | 10 +-
.../vhive_utils.h => viceberg_table_sink.cpp} | 46 +-
.../vhive_utils.h => viceberg_table_sink.h} | 37 +-
.../{vhive_utils.h => iceberg/partition_data.h} | 42 +-
.../sink/writer/iceberg/partition_transformers.cpp | 149 ++
.../sink/writer/iceberg/partition_transformers.h | 81 ++
.../viceberg_partition_writer.cpp} | 117 +-
.../writer/iceberg/viceberg_partition_writer.h | 116 ++
.../sink/writer/iceberg/viceberg_table_writer.cpp | 484 +++++++
.../sink/writer/iceberg/viceberg_table_writer.h | 151 ++
be/src/vec/sink/writer/vhive_partition_writer.cpp | 6 +-
be/src/vec/sink/writer/vhive_utils.h | 5 +-
be/src/vec/sink/writer/vtablet_writer.cpp | 123 +-
be/src/vec/sink/writer/vtablet_writer.h | 67 +-
be/src/vec/sink/writer/vtablet_writer_v2.cpp | 60 +-
be/src/vec/sink/writer/vtablet_writer_v2.h | 2 +
be/src/vec/spill/spill_stream.cpp | 25 +-
be/src/vec/spill/spill_stream.h | 8 +-
be/src/vec/spill/spill_stream_manager.cpp | 59 +-
be/src/vec/spill/spill_stream_manager.h | 4 +-
be/src/vec/spill/spill_writer.h | 4 +-
be/test/io/fs/s3_file_writer_test.cpp | 1275 +++++++++++-----
be/test/olap/rowset/beta_rowset_test.cpp | 15 +-
.../rowset/segment_v2/binary_dict_page_test.cpp | 4 +
.../rowset/segment_v2/binary_plain_page_test.cpp | 2 +
.../rowset/segment_v2/binary_prefix_page_test.cpp | 6 +
.../rowset/segment_v2/bitshuffle_page_test.cpp | 4 +
.../segment_v2/frame_of_reference_page_test.cpp | 8 +
be/test/olap/rowset/segment_v2/plain_page_test.cpp | 4 +
be/test/olap/rowset/segment_v2/rle_page_test.cpp | 6 +
.../mem_tracker_test.cpp} | 2 +-
.../runtime/memory/thread_mem_tracker_mgr_test.cpp | 455 ++++++
be/test/testutil/run_all_tests.cpp | 1 +
be/test/vec/core/column_complex_test.cpp | 9 +-
.../table/iceberg/partition_spec_parser_test.cpp | 87 ++
.../format/table/iceberg/schema_parser_test.cpp | 264 ++++
.../vec/exec/format/table/iceberg/schema_test.cpp | 70 +
.../vec/exec/format/table/iceberg/type_test.cpp | 176 +++
be/test/vec/function/function_ip_test.cpp | 10 +-
build.sh | 2 +-
.../docker-compose/hive/hive-2x.yaml.tpl | 13 +
.../docker-compose/hive/hive-3x.yaml.tpl | 13 +
docker/thirdparties/run-thirdparties-docker.sh | 13 +-
.../org/apache/doris/paimon/PaimonJniScanner.java | 9 +-
.../org/apache/doris/catalog/MysqlColType.java | 15 +
.../org/apache/doris/catalog/PrimitiveType.java | 4 +
.../main/java/org/apache/doris/common/Config.java | 10 +-
.../common/security/authentication/HadoopUGI.java | 1 +
.../authentication/SimpleAuthenticationConfig.java | 3 +-
.../antlr4/org/apache/doris/nereids/DorisLexer.g4 | 1 +
.../antlr4/org/apache/doris/nereids/DorisParser.g4 | 5 +-
fe/fe-core/src/main/cup/sql_parser.cup | 26 +-
.../java/org/apache/doris/analysis/ColumnDef.java | 84 +-
.../apache/doris/analysis/ColumnNullableType.java} | 31 +-
.../org/apache/doris/analysis/DateLiteral.java | 4 +
.../apache/doris/analysis/ShowColumnStatsStmt.java | 29 +
.../org/apache/doris/analysis/ShowDataStmt.java | 13 +-
.../org/apache/doris/backup/BackupHandler.java | 4 +-
.../java/org/apache/doris/backup/BackupJob.java | 37 +-
.../java/org/apache/doris/backup/RestoreJob.java | 6 +-
.../apache/doris/binlog/AddPartitionRecord.java | 32 +-
.../java/org/apache/doris/binlog/UpsertRecord.java | 4 +
.../apache/doris/catalog/CatalogRecycleBin.java | 111 ++
.../apache/doris/catalog/CloudTabletStatMgr.java | 71 +-
.../java/org/apache/doris/catalog/Database.java | 21 +-
.../main/java/org/apache/doris/catalog/Env.java | 41 +-
.../org/apache/doris/catalog/InternalSchema.java | 159 +-
.../apache/doris/catalog/ListPartitionItem.java | 2 +-
.../java/org/apache/doris/catalog/OlapTable.java | 123 +-
.../org/apache/doris/catalog/PartitionKey.java | 7 +
.../apache/doris/catalog/RangePartitionItem.java | 6 +-
.../java/org/apache/doris/catalog/ResourceMgr.java | 5 +
.../java/org/apache/doris/catalog/TableIf.java | 4 -
.../apache/doris/catalog/TabletInvertedIndex.java | 3 +
.../org/apache/doris/catalog/TabletStatMgr.java | 37 +-
.../org/apache/doris/catalog/TempPartitions.java | 4 +
.../transaction/CloudGlobalTransactionMgr.java | 19 +
.../org/apache/doris/common/proc/DbsProcDir.java | 2 +-
.../org/apache/doris/common/profile/Profile.java | 17 +-
.../org/apache/doris/common/util/DebugUtil.java | 24 +
.../apache/doris/common/util/ProfileManager.java | 7 +-
.../java/org/apache/doris/common/util/Util.java | 24 -
.../apache/doris/datasource/CatalogProperty.java | 2 +-
.../apache/doris/datasource/InternalCatalog.java | 76 +-
.../doris/datasource/hive/HMSCachedClient.java | 5 +
.../doris/datasource/hive/HMSExternalCatalog.java | 8 +
.../datasource/hive/HiveMetaStoreClientHelper.java | 71 -
.../doris/datasource/hive/HiveMetadataOps.java | 9 +-
.../hive/PostgreSQLJdbcHMSCachedClient.java | 5 +
.../datasource/hive/ThriftHMSCachedClient.java | 18 +-
.../datasource/iceberg/IcebergMetadataOps.java | 4 +
.../datasource/iceberg/IcebergTransaction.java | 14 +-
.../datasource/operations/ExternalMetadataOps.java | 5 +
.../datasource/paimon/source/PaimonScanNode.java | 2 +-
.../org/apache/doris/event/DataChangeEvent.java} | 15 +-
.../apache/doris/event/DropPartitionEvent.java} | 15 +-
.../main/java/org/apache/doris/event/Event.java | 60 +
.../org/apache/doris/event/EventException.java} | 21 +-
.../org/apache/doris/event/EventListener.java} | 14 +-
.../org/apache/doris/event/EventProcessor.java | 57 +
.../java/org/apache/doris/event/EventType.java} | 17 +-
.../apache/doris/event/ReplacePartitionEvent.java} | 15 +-
.../MTMVRefreshEnum.java => event/TableEvent.java} | 60 +-
.../src/main/java/org/apache/doris/ha/BDBHA.java | 31 +-
.../apache/doris/job/extensions/mtmv/MTMVJob.java | 29 +-
.../apache/doris/job/extensions/mtmv/MTMVTask.java | 1 +
.../main/java/org/apache/doris/load/ExportJob.java | 32 +-
.../java/org/apache/doris/master/Checkpoint.java | 19 +-
.../doris/metric/PrometheusMetricVisitor.java | 13 +-
.../java/org/apache/doris/mtmv/BaseTableInfo.java | 20 +-
.../main/java/org/apache/doris/mtmv/MTMVCache.java | 20 +-
.../java/org/apache/doris/mtmv/MTMVJobManager.java | 19 +-
.../org/apache/doris/mtmv/MTMVRefreshEnum.java | 1 +
.../java/org/apache/doris/mtmv/MTMVService.java | 31 +-
.../org/apache/doris/nereids/NereidsPlanner.java | 7 +
.../org/apache/doris/nereids/StatementContext.java | 26 +
.../org/apache/doris/nereids/cost/CostModelV1.java | 5 +-
.../glue/translator/PhysicalPlanTranslator.java | 14 +-
.../glue/translator/PlanTranslatorContext.java | 10 +-
.../doris/nereids/parser/LogicalPlanBuilder.java | 48 +-
.../processor/post/RuntimeFilterGenerator.java | 4 +
.../post/RuntimeFilterPushDownVisitor.java | 4 +
.../doris/nereids/rules/analysis/BindRelation.java | 9 +-
.../nereids/rules/analysis/ExpressionAnalyzer.java | 8 +
.../nereids/rules/analysis/UserAuthentication.java | 18 +-
.../mv/AbstractMaterializedViewAggregateRule.java | 5 +-
.../mv/AbstractMaterializedViewRule.java | 303 ++--
.../mv/AsyncMaterializationContext.java | 11 +-
.../mv/InitMaterializationContextHook.java | 10 +-
.../exploration/mv/MaterializationContext.java | 41 +-
.../exploration/mv/MaterializedViewUtils.java | 144 +-
.../nereids/rules/exploration/mv/Predicates.java | 52 -
.../nereids/rules/exploration/mv/StructInfo.java | 126 +-
.../expression/rules/FoldConstantRuleOnBE.java | 2 +
.../expression/rules/FoldConstantRuleOnFE.java | 2 +
.../nereids/rules/rewrite/AdjustNullable.java | 4 +-
.../doris/nereids/rules/rewrite/ColumnPruning.java | 25 +
.../nereids/rules/rewrite/RewriteCteChildren.java | 11 +-
.../rules/rewrite/SimplifyWindowExpression.java | 2 +-
.../doris/nereids/stats/FilterEstimation.java | 127 +-
.../nereids/trees/expressions/Placeholder.java | 78 +
.../functions/AggCombinerFunctionBuilder.java | 14 +-
.../functions/scalar/Ipv6NumToString.java | 3 +-
.../functions/scalar/IsIpAddressInRange.java | 4 +-
.../nereids/trees/expressions/literal/Literal.java | 169 +++
.../expressions/literal/StringLikeLiteral.java | 11 +-
.../expressions/visitor/ExpressionVisitor.java | 5 +
.../doris/nereids/trees/plans/PlaceholderId.java | 58 +
.../apache/doris/nereids/trees/plans/PlanType.java | 6 +-
.../commands/DropCatalogRecycleBinCommand.java | 81 ++
.../trees/plans/commands/ExecuteCommand.java | 83 ++
.../trees/plans/commands/PrepareCommand.java | 120 ++
.../plans/commands/UpdateMvByPartitionCommand.java | 128 +-
.../plans/commands/info/ColumnDefinition.java | 29 +-
.../plans/commands/insert/OlapInsertExecutor.java | 24 +-
.../nereids/trees/plans/logical/LogicalWindow.java | 2 +-
.../trees/plans/visitor/CommandVisitor.java | 5 +
.../java/org/apache/doris/persist/EditLog.java | 8 +-
.../planner/BackendPartitionedSchemaScanNode.java | 9 +-
.../org/apache/doris/planner/OlapTableSink.java | 111 +-
.../java/org/apache/doris/planner/PlanNode.java | 1 +
.../doris/plugin/audit/AuditStreamLoader.java | 17 +-
.../java/org/apache/doris/qe/ConnectContext.java | 13 +
.../java/org/apache/doris/qe/ConnectProcessor.java | 10 +-
.../java/org/apache/doris/qe/GlobalVariable.java | 4 +
.../org/apache/doris/qe/MysqlConnectProcessor.java | 145 +-
.../org/apache/doris/qe/PrepareStmtContext.java | 12 +-
...tContext.java => PreparedStatementContext.java} | 31 +-
.../java/org/apache/doris/qe/SessionVariable.java | 13 +-
.../java/org/apache/doris/qe/ShowExecutor.java | 47 +-
.../java/org/apache/doris/qe/StmtExecutor.java | 110 +-
.../apache/doris/service/FrontendServiceImpl.java | 20 +-
.../apache/doris/statistics/AnalysisManager.java | 82 +-
.../apache/doris/statistics/ColumnStatistic.java | 14 +-
.../statistics/ColumnStatisticsCacheLoader.java | 7 +-
.../doris/statistics/PartitionColumnStatistic.java | 168 +++
.../PartitionColumnStatisticBuilder.java | 158 ++
.../PartitionColumnStatisticCacheKey.java | 82 ++
.../PartitionColumnStatisticCacheLoader.java | 76 +
.../org/apache/doris/statistics/Statistics.java | 9 +
.../apache/doris/statistics/StatisticsCache.java | 49 +-
.../apache/doris/statistics/StatisticsCleaner.java | 80 +-
.../doris/statistics/StatisticsRepository.java | 76 +-
.../doris/statistics/util/StatisticsUtil.java | 11 +-
.../java/org/apache/doris/system/Frontend.java | 4 +
.../doris/transaction/DatabaseTransactionMgr.java | 94 +-
.../doris/transaction/PartitionCommitInfo.java | 13 +-
.../doris/transaction/PublishVersionDaemon.java | 9 +-
.../apache/doris/transaction/TransactionEntry.java | 4 +-
.../org/apache/doris/analysis/ColumnDefTest.java | 4 +-
.../apache/doris/analysis/CreateTableStmtTest.java | 32 +-
.../org/apache/doris/catalog/AdminStmtTest.java | 2 +-
.../doris/cluster/DecommissionBackendTest.java | 8 +-
.../apache/doris/common/util/DebugUtilTest.java | 45 +
.../org/apache/doris/common/util/UtilTest.java | 46 -
.../doris/datasource/TestHMSCachedClient.java | 4 +
.../doris/nereids/minidump/MinidumpUtTest.java | 2 +
.../exploration/mv/MaterializedViewUtilsTest.java | 103 ++
.../doris/nereids/stats/FilterEstimationTest.java | 31 +-
.../doris/nereids/trees/plans/MarkJoinTest.java | 12 +-
.../doris/nereids/trees/plans/PlanVisitorTest.java | 12 +-
.../org/apache/doris/planner/QueryPlanTest.java | 10 +-
gensrc/proto/internal_service.proto | 2 +
gensrc/script/doris_builtins_functions.py | 13 +-
gensrc/thrift/Descriptors.thrift | 1 +
gensrc/thrift/PlanNodes.thrift | 1 +
gensrc/thrift/Types.thrift | 1 +
.../qe/query_regression/result/issue_5121.result | 2 +-
.../qe/query_regression/result/issue_8850.result | 2 +-
pytest/qe/query_regression/sql/issue_5121.sql | 2 +-
pytest/qe/query_regression/sql/issue_8850.sql | 2 +-
.../test_sys_bitmap/test_sys_bitmap_function.py | 2 +-
regression-test/common/table/bitmap_basic_agg.sql | 2 +-
regression-test/common/table/hll_basic_agg.sql | 2 +-
regression-test/conf/regression-conf.groovy | 8 +-
.../test_compaction_uniq_keys_row_store.out | 8 +-
.../test_create_table_without_distribution.out | 6 -
.../iceberg/write/test_iceberg_write_insert.out | 233 +++
.../write/test_iceberg_write_partitions.out | 169 +++
.../test_index_ddl_fault_injection.out | 13 +
regression-test/data/insert_p0/txn_insert.out | 25 +
.../array_contains/documents-1000.json | 1000 +++++++++++++
.../test_char_replace_arr.out} | 79 +-
.../array_contains/test_compound_arr.out} | 0
.../test_count_on_index_httplogs_arr.out} | 45 +-
.../array_contains/test_equal_on_fulltext_arr.out} | 4 +-
.../test_index_bkd_null_arr.out} | 0
.../array_contains/test_index_change_2_arr.out | 37 +
.../array_contains/test_index_change_4_arr.out | 31 +
.../array_contains/test_index_change_6_arr.out | 31 +
.../test_index_compaction_dup_keys_arr.out | 105 ++
.../test_index_compaction_null_arr.out | 1531 ++++++++++++++++++++
.../test_index_compaction_unique_keys_arr.out} | 0
...ex_compaction_with_multi_index_segments_arr.out | 219 +++
.../array_contains/test_index_delete_arr.out} | 14 +-
.../test_index_empty_string_arr.out} | 0
.../array_contains/test_index_equal_select_arr.out | 245 ++++
.../test_index_match_phrase_edge_arr.out} | 18 +-
.../test_index_match_regexp_arr.out} | 16 +-
.../array_contains/test_index_null_arr.out} | 9 +-
.../array_contains/test_invalid_param.out | 115 ++
.../test_inverted_index_null_arr.out | 130 ++
.../array_contains/test_lowercase_arr.out | 136 ++
.../test_parser_with_none_stopwords.out | 115 ++
.../inverted_index_p0/test_compound_inlist.out | 60 +
.../data/load_p0/stream_load/test_json_load.out | 3 +
.../load_p0/stream_load/test_special_key_json.json | 1 +
.../test_s3_load_with_load_parallelism.out} | 7 +-
regression-test/data/mtmv_p0/test_commit_mtmv.out | 40 +
.../test_truncate_table_mtmv.out} | 13 +-
.../insert_into_table/partial_update_seq_col.out | Bin 1412 -> 1416 bytes
.../nereids_rules_p0/mv/partition_mv_rewrite.out | 112 +-
.../sql/two_instance_correctness.out} | 0
.../data/point_query_p0/test_rowstore.out | 6 +
.../data/prepared_stmt_p0/prepared_stmt.out | 53 +-
.../data/query_p0/operator/test_set_operator.out | 12 +
.../test_is_ip_address_in_range_function.out | 13 +-
.../test_partial_update_insert_seq_col.out | Bin 1412 -> 1416 bytes
.../partial_update/test_partial_update_seq_col.out | Bin 1411 -> 1415 bytes
.../test_partial_update_seq_col_delete.out | Bin 1526 -> 1530 bytes
regression-test/data/variant_p0/column_name.out | 17 +-
.../org/apache/doris/regression/suite/Suite.groovy | 97 +-
.../pipeline/cloud_p0/conf/be_custom.conf | 3 -
.../pipeline/cloud_p0/conf/fe_custom.conf | 2 -
.../pipeline/cloud_p1/conf/be_custom.conf | 3 -
.../pipeline/cloud_p1/conf/fe_custom.conf | 3 -
regression-test/pipeline/p0/conf/fe.conf | 3 -
.../pipeline/p0/conf/regression-conf.groovy | 1 -
regression-test/pipeline/p1/conf/fe.conf | 4 +-
.../plugins/plugin_curl_requester.groovy | 4 +
.../plugins/plugin_must_contains.groovy | 21 +-
.../account_p0/test_nereids_authentication.groovy | 10 +
.../backup_restore/test_backup_restore_mtmv.groovy | 99 ++
.../test_drop_catalog_recycle_bin.groovy | 108 ++
.../clone_p0/test_clone_missing_version.groovy | 88 ++
.../suites/compaction/test_base_compaction.groovy | 5 +
.../test_lateral_view_in_subquery.groovy | 2 +-
.../correctness_p0/test_table_function.groovy | 2 +-
.../test_union_subquery_groupby.groovy | 2 +-
.../test_create_table_without_distribution.groovy | 8 +-
.../export_p0/export/test_show_export.groovy | 4 +-
.../outfile/csv/test_outfile_csv_array_type.groovy | 28 +-
.../csv/test_outfile_csv_complex_type.groovy | 14 +-
.../outfile/csv/test_outfile_csv_map_type.groovy | 36 +-
.../csv/test_outfile_csv_one_nested_type.groovy | 26 +-
.../outfile/csv/test_outfile_empty_data.groovy | 2 +-
.../orc/test_outfile_orc_one_nested_type.groovy | 26 +-
.../outfile/orc/test_outfile_orc_timestamp.groovy | 2 +-
.../test_outfile_expr_generate_col_name.groovy | 4 +-
.../parquet/test_outfile_parquet_array_type.groovy | 28 +-
.../test_outfile_parquet_complex_type.groovy | 14 +-
.../parquet/test_outfile_parquet_map_type.groovy | 36 +-
.../test_outfile_parquet_one_nested_type.groovy | 24 +-
.../suites/export_p0/test_export_data_types.groovy | 10 +-
.../export_p0/test_export_empty_table.groovy | 269 +---
.../suites/export_p0/test_export_orc.groovy | 2 +-
.../suites/export_p0/test_export_parquet.groovy | 2 +-
.../suites/export_p0/test_export_view.groovy | 2 +-
.../export_p0/test_outfile_file_suffix.groovy | 4 +-
.../export_p0/test_outfile_orc_array_type.groovy | 28 +-
.../export_p0/test_outfile_orc_complex_type.groovy | 14 +-
.../export_p0/test_outfile_orc_map_type.groovy | 36 +-
.../suites/export_p0/test_with_bom.groovy | 8 +-
.../export_p2/test_export_with_parallelism.groovy | 2 +-
.../suites/export_p2/test_export_with_s3.groovy | 2 +-
.../hive/ddl/test_hive_ctas.groovy | 3 +-
.../hive/ddl/test_hive_ddl.groovy | 3 +-
.../hive/ddl/test_hive_show_create_table.groovy | 3 +-
.../hive/ddl/test_hive_write_type.groovy | 3 +-
.../write/test_hive_write_different_path.groovy | 6 +-
.../iceberg/write/test_iceberg_write_insert.groovy | 848 +++++++++++
.../write/test_iceberg_write_partitions.groovy | 228 +++
.../jdbc/test_doris_jdbc_catalog.groovy | 120 +-
.../test_insert_from_tvf_with_common_user.groovy | 2 +-
.../external_table_p0/tvf/test_s3_tvf.groovy | 4 +-
.../tvf/test_s3_tvf_with_resource.groovy | 4 +-
.../test_full_compaciton_run_status.groovy | 5 +
.../test_index_ddl_fault_injection.groovy | 69 +
.../suites/function_p0/test_agg_foreach.groovy | 4 +-
.../insert_p0/test_group_commit_variant.groovy | 30 +-
regression-test/suites/insert_p0/txn_insert.groovy | 52 +
regression-test/suites/insert_p2/txn_insert.groovy | 1 +
.../txn_insert_concurrent_insert_duplicate.groovy | 170 +++
.../txn_insert_concurrent_insert_ud.groovy | 183 +++
.../txn_insert_concurrent_insert_unique.groovy | 170 +++
.../txn_insert_concurrent_insert_update.groovy | 195 +++
.../test_add_drop_index_with_data_arr.groovy | 338 +++++
...test_add_drop_index_with_delete_data_arr.groovy | 273 ++++
.../array_contains/test_char_replace_arr.groovy | 103 ++
.../array_contains/test_compound_arr.groovy | 69 +
.../test_count_on_index_httplogs_arr.groovy | 204 +++
.../test_equal_on_fulltext_arr.groovy | 52 +
.../array_contains/test_index_bkd_null_arr.groovy | 52 +
.../array_contains/test_index_change_2_arr.groovy | 144 ++
.../array_contains/test_index_change_4_arr.groovy | 145 ++
.../array_contains/test_index_change_6_arr.groovy | 149 ++
.../test_index_compaction_dup_keys_arr.groovy | 250 ++++
.../test_index_compaction_null_arr.groovy | 329 +++++
.../test_index_compaction_unique_keys_arr.groovy | 255 ++++
...compaction_with_multi_index_segments_arr.groovy | 410 ++++++
.../array_contains/test_index_delete_arr.groovy | 80 +
.../test_index_empty_string_arr.groovy | 59 +
.../test_index_equal_select_arr.groovy | 247 ++++
.../test_index_match_phrase_edge_arr.groovy | 76 +
.../test_index_match_regexp_arr.groovy | 100 ++
.../array_contains/test_index_null_arr.groovy | 56 +
.../array_contains/test_invalid_param.groovy | 118 ++
.../test_inverted_index_null_arr.groovy | 100 ++
.../array_contains/test_lowercase_arr.groovy | 249 ++++
.../test_parser_with_none_stopwords.groovy | 118 ++
.../inverted_index_p0/test_compound_inlist.groovy | 76 +-
.../load_p0/broker_load/ddl/agg_tbl_basic.sql | 12 +-
.../routine_load/ddl/agg_tbl_basic_create.sql | 12 +-
.../stream_load/ddl/agg_tbl_basic_create.sql | 12 +-
.../load_p0/stream_load/test_json_load.groovy | 26 +
.../suites/load_p0/tvf/ddl/agg_tbl_basic_tvf.sql | 12 +-
.../suites/load_p0/tvf/test_tvf_error_url.groovy | 8 +-
.../broker_load/test_s3_load_parallelism.groovy | 99 --
.../test_s3_load_with_load_parallelism.groovy | 37 +-
.../suites/mtmv_p0/test_commit_mtmv.groovy | 130 ++
.../suites/mtmv_p0/test_truncate_table_mtmv.groovy | 87 ++
.../where_invalid/where_invalid.groovy | 4 +-
.../suites/nereids_p0/aggregate/aggregate.groovy | 15 +
.../nereids_p0/join/test_bitmap_filter.groovy | 4 +-
.../nereids_p0/lateral_view/test_issue_8850.sql | 2 +-
.../test_aggregate_all_functions.groovy | 4 +-
.../bitmap_functions/test_bitmap_function.groovy | 10 +-
.../adjust_nullable/set_operation.groovy | 56 +-
.../column_pruning/window_column_pruning.groovy | 60 +
.../agg_with_roll_up/aggregate_with_roll_up.groovy | 1 -
.../mv/availability/grace_period.groovy | 1 -
.../mv/dimension/dimension_1.groovy | 1 -
.../mv/dimension/dimension_2_3.groovy | 1 -
.../mv/dimension/dimension_2_4.groovy | 1 -
.../mv/dimension/dimension_2_5.groovy | 1 -
.../mv/dimension/dimension_2_6.groovy | 1 -
.../mv/dimension/dimension_2_full_join.groovy | 1 -
.../mv/dimension/dimension_2_inner_join.groovy | 1 -
.../mv/dimension/dimension_2_left_anti_join.groovy | 1 -
.../mv/dimension/dimension_2_left_join.groovy | 1 -
.../mv/dimension/dimension_2_left_semi_join.groovy | 1 -
.../dimension/dimension_2_right_anti_join.groovy | 1 -
.../mv/dimension/dimension_2_right_join.groovy | 1 -
.../dimension/dimension_2_right_semi_join.groovy | 1 -
.../mv/dimension/dimension_self_conn.groovy | 1 -
.../dimension_2_join_agg.groovy | 1 -
.../filter_equal_or_notequal.groovy | 1 -
.../mv_contain_external_table.groovy | 1 -
.../cross_join_list_str_increment_create.groovy | 1 -
.../cross_join_range_date_increment_create.groovy | 1 -
...cross_join_range_number_increment_create.groovy | 1 -
.../full_join_list_str_increment_create.groovy | 1 -
.../full_join_range_date_increment_create.groovy | 1 -
.../full_join_range_number_increment_create.groovy | 1 -
.../inner_join_list_str_increment_create.groovy | 1 -
.../inner_join_range_date_increment_create.groovy | 1 -
...inner_join_range_number_increment_create.groovy | 1 -
...left_anti_join_list_str_increment_create.groovy | 1 -
...ft_anti_join_range_date_increment_create.groovy | 1 -
..._anti_join_range_number_increment_create.groovy | 1 -
.../left_join_list_str_increment_create.groovy | 1 -
.../left_join_range_date_increment_create.groovy | 1 -
.../left_join_range_number_increment_create.groovy | 1 -
...left_semi_join_list_str_increment_create.groovy | 1 -
...ft_semi_join_range_date_increment_create.groovy | 1 -
..._semi_join_range_number_increment_create.groovy | 1 -
...ight_anti_join_list_str_increment_create.groovy | 1 -
...ht_anti_join_range_date_increment_create.groovy | 1 -
..._anti_join_range_number_increment_create.groovy | 1 -
.../right_join_list_str_increment_create.groovy | 1 -
.../right_join_range_date_increment_create.groovy | 1 -
...right_join_range_number_increment_create.groovy | 1 -
...ight_semi_join_list_str_increment_create.groovy | 1 -
...ht_semi_join_range_date_increment_create.groovy | 1 -
..._semi_join_range_number_increment_create.groovy | 1 -
.../self_conn_list_str_increment_create.groovy | 1 -
.../self_conn_range_date_increment_create.groovy | 1 -
.../self_conn_range_number_increment_create.groovy | 1 -
.../mv/join/dphyp_inner/inner_join_dphyp.groovy | 1 -
.../mv/join/dphyp_outer/outer_join_dphyp.groovy | 1 -
.../mv/join/inner/inner_join.groovy | 1 -
.../mv/join/left_outer/outer_join.groovy | 1 -
.../mv/negative/negative_test.groovy | 1 -
.../mv/nested/nested_materialized_view.groovy | 1 -
.../mv/nested_mtmv/nested_mtmv.groovy | 1 -
.../mv/partition_mv_rewrite.groovy | 306 +++-
.../nereids_rules_p0/mv/scan/scan_table.groovy | 1 -
.../partition_curd_union_rewrite.groovy | 1 -
.../mv/union_rewrite/usercase_union_rewrite.groovy | 1 -
.../suites/nereids_syntax_p0/lateral_view.groovy | 2 +-
.../suites/nereids_syntax_p0/runtime_filter.groovy | 16 +
.../tpch/push_filter_window_eqset.groovy | 2 +-
.../test_auto_range_partition.groovy | 3 +-
.../auto_partition/sql/multi_thread_load.groovy | 2 +-
.../sql/stress_test_insert_into.groovy | 2 +-
.../sql/two_instance_correctness.groovy | 45 +
.../suites/point_query_p0/test_point_query.groovy | 5 +-
.../suites/point_query_p0/test_rowstore.groovy | 9 +
.../suites/prepared_stmt_p0/prepared_stmt.groovy | 249 ++--
.../suites/query_p0/join/test_bitmap_filter.groovy | 4 +-
.../join/test_bitmap_filter_nereids.groovy | 4 +-
.../query_p0/lateral_view/lateral_view.groovy | 2 +-
.../query_p0/lateral_view/test_issue_8850.sql | 2 +-
.../query_p0/operator/test_set_operator.groovy | 8 +
.../test_aggregate_all_functions.groovy | 4 +-
.../bitmap_functions/test_bitmap_function.groovy | 20 +-
.../bitmap_functions/test_issue_27409.groovy | 2 +-
.../test_count_distinct_with_case_function.groovy | 4 +-
.../conditional_functions/test_nullif.groovy | 2 +-
.../test_is_ip_address_in_range_function.groovy | 19 +-
.../suites/query_p0/test_data_type_marks.groovy | 4 +-
.../return_binaray/test_return_binaray_hll.groovy | 2 +-
.../test_return_binary_bitmap.groovy | 2 +-
.../query_profile/s3_load_profile_test.groovy | 10 +-
.../suites/statistics/test_agg_complex_type.groovy | 2 +-
regression-test/suites/statistics/test_ddl.groovy | 16 -
.../suites/statistics/test_partition_stats.groovy | 185 +++
.../statistics/test_show_partition_stats.groovy | 92 --
.../suites/variant_p0/column_name.groovy | 23 +-
.../workload_manager_p1/mixed_query_test.groovy | 197 ---
samples/read_bitmap/java/ReadBitmap.java | 2 +-
thirdparty/CHANGELOG.md | 4 +
thirdparty/build-thirdparty.sh | 20 +
thirdparty/vars.sh | 7 +
tools/pipeline-tracing/origin-to-show.py | 47 +-
625 files changed, 23552 insertions(+), 4773 deletions(-)
create mode 100644 be/src/io/fs/obj_storage_client.h
create mode 100644 be/src/io/fs/s3_obj_storage_client.cpp
create mode 100644 be/src/io/fs/s3_obj_storage_client.h
copy fe/fe-core/src/main/java/org/apache/doris/mtmv/MTMVRefreshEnum.java =>
be/src/pipeline/exec/iceberg_table_sink_operator.cpp (50%)
create mode 100644 be/src/pipeline/exec/iceberg_table_sink_operator.h
create mode 100644 be/src/vec/exec/format/table/iceberg/partition_spec.cpp
create mode 100644 be/src/vec/exec/format/table/iceberg/partition_spec.h
create mode 100644
be/src/vec/exec/format/table/iceberg/partition_spec_parser.cpp
create mode 100644 be/src/vec/exec/format/table/iceberg/partition_spec_parser.h
create mode 100644 be/src/vec/exec/format/table/iceberg/schema.cpp
copy be/src/{http/action/pipeline_task_action.h =>
vec/exec/format/table/iceberg/schema.h} (51%)
create mode 100644 be/src/vec/exec/format/table/iceberg/schema_parser.cpp
create mode 100644 be/src/vec/exec/format/table/iceberg/schema_parser.h
rename
regression-test/suites/workload_manager_p1/conf/mixed_query_test_conf.groovy =>
be/src/vec/exec/format/table/iceberg/struct_like.h (54%)
create mode 100644 be/src/vec/exec/format/table/iceberg/types.cpp
create mode 100644 be/src/vec/exec/format/table/iceberg/types.h
create mode 100644
be/src/vec/exec/format/table/iceberg/unbound_partition_spec.cpp
create mode 100644
be/src/vec/exec/format/table/iceberg/unbound_partition_spec.h
copy be/src/vec/sink/{writer/vhive_utils.h => viceberg_table_sink.cpp} (50%)
copy be/src/vec/sink/{writer/vhive_utils.h => viceberg_table_sink.h} (54%)
copy be/src/vec/sink/writer/{vhive_utils.h => iceberg/partition_data.h} (53%)
create mode 100644 be/src/vec/sink/writer/iceberg/partition_transformers.cpp
create mode 100644 be/src/vec/sink/writer/iceberg/partition_transformers.h
copy be/src/vec/sink/writer/{vhive_partition_writer.cpp =>
iceberg/viceberg_partition_writer.cpp} (57%)
create mode 100644 be/src/vec/sink/writer/iceberg/viceberg_partition_writer.h
create mode 100644 be/src/vec/sink/writer/iceberg/viceberg_table_writer.cpp
create mode 100644 be/src/vec/sink/writer/iceberg/viceberg_table_writer.h
rename be/test/runtime/{mem_limit_test.cpp => memory/mem_tracker_test.cpp}
(97%)
create mode 100644 be/test/runtime/memory/thread_mem_tracker_mgr_test.cpp
create mode 100644
be/test/vec/exec/format/table/iceberg/partition_spec_parser_test.cpp
create mode 100644 be/test/vec/exec/format/table/iceberg/schema_parser_test.cpp
create mode 100644 be/test/vec/exec/format/table/iceberg/schema_test.cpp
create mode 100644 be/test/vec/exec/format/table/iceberg/type_test.cpp
copy
fe/{fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> fe-core/src/main/java/org/apache/doris/analysis/ColumnNullableType.java}
(57%)
copy
fe/{fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> fe-core/src/main/java/org/apache/doris/event/DataChangeEvent.java} (71%)
copy
fe/{fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> fe-core/src/main/java/org/apache/doris/event/DropPartitionEvent.java} (71%)
create mode 100644 fe/fe-core/src/main/java/org/apache/doris/event/Event.java
copy
fe/{fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> fe-core/src/main/java/org/apache/doris/event/EventException.java} (71%)
copy
fe/{fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> fe-core/src/main/java/org/apache/doris/event/EventListener.java} (71%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/event/EventProcessor.java
copy
fe/{fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> fe-core/src/main/java/org/apache/doris/event/EventType.java} (70%)
copy
fe/{fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> fe-core/src/main/java/org/apache/doris/event/ReplacePartitionEvent.java}
(71%)
copy fe/fe-core/src/main/java/org/apache/doris/{mtmv/MTMVRefreshEnum.java =>
event/TableEvent.java} (52%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/Placeholder.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/PlaceholderId.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/DropCatalogRecycleBinCommand.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/ExecuteCommand.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/PrepareCommand.java
copy fe/fe-core/src/main/java/org/apache/doris/qe/{PrepareStmtContext.java =>
PreparedStatementContext.java} (56%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/statistics/PartitionColumnStatistic.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/statistics/PartitionColumnStatisticBuilder.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/statistics/PartitionColumnStatisticCacheKey.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/statistics/PartitionColumnStatisticCacheLoader.java
delete mode 100644
fe/fe-core/src/test/java/org/apache/doris/common/util/UtilTest.java
create mode 100644
regression-test/data/external_table_p0/iceberg/write/test_iceberg_write_insert.out
create mode 100644
regression-test/data/external_table_p0/iceberg/write/test_iceberg_write_partitions.out
create mode 100644
regression-test/data/fault_injection_p0/test_index_ddl_fault_injection.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/documents-1000.json
copy regression-test/data/inverted_index_p0/{test_compound_inlist.out =>
array_contains/test_char_replace_arr.out} (60%)
copy
regression-test/data/{fault_injection_p0/test_no_index_null_fault_injection.out
=> inverted_index_p0/array_contains/test_compound_arr.out} (100%)
copy regression-test/data/inverted_index_p0/{test_compound_inlist.out =>
array_contains/test_count_on_index_httplogs_arr.out} (69%)
copy
regression-test/data/{load_p0/broker_load/test_s3_load_with_load_parallelism.out
=> inverted_index_p0/array_contains/test_equal_on_fulltext_arr.out} (76%)
copy regression-test/data/inverted_index_p0/{test_index_null.out =>
array_contains/test_index_bkd_null_arr.out} (100%)
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_index_change_2_arr.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_index_change_4_arr.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_index_change_6_arr.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_index_compaction_dup_keys_arr.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_index_compaction_null_arr.out
copy
regression-test/data/inverted_index_p0/{index_compaction/test_index_compaction_unique_keys.out
=> array_contains/test_index_compaction_unique_keys_arr.out} (100%)
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_index_compaction_with_multi_index_segments_arr.out
copy
regression-test/data/{load_p0/broker_load/test_s3_load_with_load_parallelism.out
=> inverted_index_p0/array_contains/test_index_delete_arr.out} (64%)
copy regression-test/data/{nereids_syntax_p0/type_cast.out =>
inverted_index_p0/array_contains/test_index_empty_string_arr.out} (100%)
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_index_equal_select_arr.out
copy regression-test/data/{point_query_p0/test_rowstore.out =>
inverted_index_p0/array_contains/test_index_match_phrase_edge_arr.out} (55%)
copy regression-test/data/{point_query_p0/test_rowstore.out =>
inverted_index_p0/array_contains/test_index_match_regexp_arr.out} (62%)
rename
regression-test/data/{load_p0/broker_load/test_s3_load_with_load_parallelism.out
=> inverted_index_p0/array_contains/test_index_null_arr.out} (68%)
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_invalid_param.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_inverted_index_null_arr.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_lowercase_arr.out
create mode 100644
regression-test/data/inverted_index_p0/array_contains/test_parser_with_none_stopwords.out
create mode 100644
regression-test/data/load_p0/stream_load/test_special_key_json.json
copy regression-test/data/{load_p1/broker_load/test_s3_load_parallelism.out =>
load_p2/broker_load/test_s3_load_with_load_parallelism.out} (71%)
create mode 100644 regression-test/data/mtmv_p0/test_commit_mtmv.out
rename regression-test/data/{load_p1/broker_load/test_s3_load_parallelism.out
=> mtmv_p0/test_truncate_table_mtmv.out} (54%)
copy regression-test/data/{datatype_p0/date/test_default_current_timestamp.out
=> partition_p1/auto_partition/sql/two_instance_correctness.out} (100%)
copy
fe/fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> regression-test/plugins/plugin_must_contains.groovy (65%)
create mode 100644
regression-test/suites/backup_restore/test_backup_restore_mtmv.groovy
create mode 100644
regression-test/suites/catalog_recycle_bin_p0/test_drop_catalog_recycle_bin.groovy
create mode 100644
regression-test/suites/clone_p0/test_clone_missing_version.groovy
create mode 100644
regression-test/suites/external_table_p0/iceberg/write/test_iceberg_write_insert.groovy
create mode 100644
regression-test/suites/external_table_p0/iceberg/write/test_iceberg_write_partitions.groovy
create mode 100644
regression-test/suites/fault_injection_p0/test_index_ddl_fault_injection.groovy
copy
fe/fe-common/src/main/java/org/apache/doris/common/security/authentication/SimpleAuthenticationConfig.java
=> regression-test/suites/insert_p0/test_group_commit_variant.groovy (52%)
create mode 100644
regression-test/suites/insert_p2/txn_insert_concurrent_insert_duplicate.groovy
create mode 100644
regression-test/suites/insert_p2/txn_insert_concurrent_insert_ud.groovy
create mode 100644
regression-test/suites/insert_p2/txn_insert_concurrent_insert_unique.groovy
create mode 100644
regression-test/suites/insert_p2/txn_insert_concurrent_insert_update.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_add_drop_index_with_data_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_add_drop_index_with_delete_data_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_char_replace_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_compound_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_count_on_index_httplogs_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_equal_on_fulltext_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_bkd_null_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_change_2_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_change_4_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_change_6_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_compaction_dup_keys_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_compaction_null_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_compaction_unique_keys_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_compaction_with_multi_index_segments_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_delete_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_empty_string_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_equal_select_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_match_phrase_edge_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_match_regexp_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_index_null_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_invalid_param.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_inverted_index_null_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_lowercase_arr.groovy
create mode 100644
regression-test/suites/inverted_index_p0/array_contains/test_parser_with_none_stopwords.groovy
delete mode 100644
regression-test/suites/load_p1/broker_load/test_s3_load_parallelism.groovy
rename regression-test/suites/{load_p0 =>
load_p2}/broker_load/test_s3_load_with_load_parallelism.groovy (87%)
create mode 100644 regression-test/suites/mtmv_p0/test_commit_mtmv.groovy
create mode 100644
regression-test/suites/mtmv_p0/test_truncate_table_mtmv.groovy
copy be/src/http/action/pipeline_task_action.h =>
regression-test/suites/nereids_rules_p0/adjust_nullable/set_operation.groovy
(57%)
create mode 100644
regression-test/suites/nereids_rules_p0/column_pruning/window_column_pruning.groovy
create mode 100644
regression-test/suites/partition_p1/auto_partition/sql/two_instance_correctness.groovy
create mode 100644
regression-test/suites/statistics/test_partition_stats.groovy
delete mode 100644
regression-test/suites/statistics/test_show_partition_stats.groovy
delete mode 100644
regression-test/suites/workload_manager_p1/mixed_query_test.groovy
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]