This is an automated email from the ASF dual-hosted git repository.
caiconghui pushed a change to branch bugfix_bitmap
in repository https://gitbox.apache.org/repos/asf/doris.git
from ac7655bea7d fix(core): fix be core due to explode bitmap size exceed
INT_MAX
add 016e2db91ae [fix](fe) cloud replica use one Random object to reduce
memory (#59320)
add 2e5a428b057 [fix](nereids) Interval.equals() should consider timeUnit
(#59316)
add b6a4635d922 [opt](meta-service)add real request ip for FE RPC to MS
(#59107)
add 680bbea6b5b [fix](memtable) fix memtable memory limit waiting threads
count error (#59361)
add c28afa3f793 [opt](complex type) support prune nested column through
lateral view (#58776)
add cf57972ad1a [feat](cloud) Support fdb multi version clients (#59360)
add d1e9f7ef105 [fix](schema scan) Fix NPE for schema scan (#59389)
add e3e0590ab8c [Feature](iceberg) Add manifest-level cache for Iceberg
tables to reduce I/O and parsing overhead (#59056)
add 1f6d752862f [fix](storage-engine) _clean_unused_rowset_metas should
skip rowsets in _unused_rowsets map (#59390)
add 66a7d11b532 [fix](fe) modify tablet cooldownConfLock to reduce memory
(#59356)
add 04157ad6111 [chore](http)httputils execute use getHttpClient function
(#58595)
add 0391e1c877d [Fix](cloud-mow) Fix Fe memory leak due to
`txnLastSignatureMap` (#59385)
add 73fe371b764 [fix](compaction) Fix wrong JSON value used for tablet IDs
in compaction status (#59236)
add 24586570b0f [enhance](job) optimize auto resume rule to adapt VCG
failover (#59421)
add 779bc050e27 [Improvement](Iceberg) Optimize LocationPath.of
performance for Iceberg table queries (#59217)
add ad8e49e07e5 [fix](pipeline)Fix set_operation not correctly setting
shuffled_operator (#59293)
add 37cef80e0cc [opt](profile) change the node name format of
MultiCastDataStreamer (#59422)
add b1303c3aa0f [opt](varbinary) support multi_distinct_count about
varbinary and add conf mapping iceberg uuid (#59406)
add 9a8832866b1 [enhance](paimon)Doris Paimon Scan Metrics Integration
(#59281)
add 36f1a211986 [fix](cloud) Fix fdb lib install dir (#59407)
add 425c698db85 [fix](profile) Fix inaccurate accounting of
memory_used_counter in ExchangeSink (#59374)
add f09e5cce29e [fix](cloud) Not print too much peer read err log (#59354)
add 2823d11102e [Improvement](function) optimize trivial function
deserialize_and_merge_vec (#58882)
add d49d620835b [refine](expr) Use the new execute interface of expr in
some places. (#59315)
add 637725440bb [Chore](shuffle) adjust some local shuffle rules (#59366)
add af4e2dd8473 [enhancement](spilldisk)Cancel query fast when reserver
memory failed and could not find revocable tasks (#59330)
add aa2eb583d70 [Opt](cloud) cache table version for cloud mode (#59339)
add c7b7ad75946 [opt](scanner) Avoid copying columns data when projection
(#58893)
add e74ea4bbaeb [Enhancement][doris-future] Unify regr_sxx/syy/sxy on
AggregateFunctionRegrData (#59224)
add 42a136f26de [fix](txn) fix clean_txn_label racing with recycler in
versioned write mode (#59443)
add c294e376440 [Exec](shuffle) random shuffle firstly use local channel
to improve performance (#59431)
add 13ea84daaa3 [fix](core)be core when
BeConfDataDirReader::get_data_dir_by_file_path (#59204)
add c48244a69f1 [feat](seq mapping) uniq table supports multi-stream
merging through sequence mapping (#54936)
add 886d578d608 [Fix](Compaction) Fix cumulative compaction pick rowsets
to trim by max score after filtering (#59268)
add 23e7e76ca96 [chore](cloud) Add skeleton func for clone chain reader
(#59469)
add bf2669e5bd3 [Chore](bitmap) change BitmapValue CHECK to throw
exception (#59464)
add ef5a3b3458f [Fix](Recycler) Fix recycler OOM by limiting queued delete
tasks (#59331)
add 26fb9885f15 [memorygc](lrucache) do not prune memory if prune is
disabled (#59478)
add 53f8002663d [fix](column) Add back hash functions of ColumnComplex
(#59481)
add 5df1162d884 [test](plan) update tpcds shape check (#59434)
add 28b2d23ecfa [chore](cte) use a better way to get child in enforce
regulator (#59395)
add 9140b21848f [fix] Check rs meta size during cool down progress (#57368)
add 32ef364c52c [fix](block-rule) Skip SQL block rules check for EXPLAIN
statements (#59445)
add 9c36839a311 [Enhancement](parquet)update runtime filter when read next
parquet row group. (#59053)
add 44736cbf470 [opt](inverted index) optimize S3 operations for inverted
index (#59363)
add e9da494a6a5 [minor](log) Add logs for WorkThreadPool (#59503)
add d59dc20be1c [fix](fe) remove deprecated version hash variables to
reduce memory (#59458)
add 4e79e4aa4cd [feat](test) Support recycler progress for docker test
(#59480)
add 1cbe48767dd [enhance](meta-service)add bvar for fdb process status
(#59329)
add d86daef5a8f [Chore](query) add _query_ctx_map_delay_delete (#59262)
add 3ead2ebd16b [Exec] (performance) support stream agg topn (#59446)
add f4a33613d69 [performance][Exec] scanner merge block before projection
(#59492)
add b69e79d3091 [refactor](jni)refactor jni util for safe jni call (#56763)
add 5f9265695bd [Feature](Streaming Job) Extend streaming job to support
Postgres synchronization (#59461)
add 9d34c0416dd [opt](packed-file) Avoid unnecessary HEAD Object requests
when opening an S3 object (#59414)
add a1e482cca31 [opt](sort)use HybridSorter to choose between timsort and
pdqsort (#59207)
add 5b2cbcc7903 [Opt](function) opt of certain time field functions used
in conjunction with FROM_UNIXTIME. (#57941)
add fa40415f8ff [Fix](Variant) Fix variant compaction empty path handling
(#59544)
add d172147f55e [fix](temp-table) not clean temp table temporary until fix
mem leak (#59535)
add 6deea820196 [fix](analyzer) fix some fill up missing slot errors and
make some error hints happy (#58912)
add 7d83f416a1a [fix](cloud)Fix `create dynamic table` race with `insert
overwrite` (#59489)
add bf2e1c2dda9 [opt](distribution) support bucket shuffle for set
operation (#59006)
add 4a45bcbc1a5 [fix](doris compose) fix create storage vault fail (#59553)
add 38e7ffd1a7a [refactor](predicate) Normalize predicates generation
(#59187)
add 6ec35ec5078 [fix](packed-file) use timestamp-only cleanup for packed
slice index (#59369)
add a3252b7194f [Fix](Test) Fix tablet stats case (#59484)
add c9b1819864e [opt](multi-catalog) Optimize file split size. (#58858)
add 5e0c87f1e88 [improve](cloud) Report read/write conflict range (#59437)
add 2cfcc0ff6d2 [Enchancement](sort) do a little optimization for full
sort (#56944)
add e6fe5ccbb3a [opt](analyze) support iceberg external table in analyze
(#59473)
add 33436ac79a1 [fix](packed-file) enable file cache for packed file
(#59575)
add bf57e7545c8 [Feature](iceberg) Support Iceberg JDBC Catalog (#59502)
add e85f8393039 [fix](case) Fix `different_serialize_cloud` case (#59555)
add 21010b91bf8 [fix](topn-lazy-materialize) LazySlotPruning does not pass
nullable attribute of global_row_id when visiting project. (#58722)
add a8a92f90c19 [chore](spill) refactor lambda to function (#59584)
add 0395b50edca [Fix](Exception) Fix potential use-after-free because
`Exception::to_string` is not thread safe (#59558)
add 54d012e3b3b [chore](scan) remove unused code (#59565)
add 52a178a652e [fix](compaction) Check schema version before ordered data
compaction (#59570)
add 4a81f1b95c0 [refactor](predicates) Remove or predicates (#59581)
add 120ea039f40 [enhancement](cloud) retry TXN_MAYBE_COMMITTED and add UT
(#59563)
add f7aa74e62c6 [fix](filecache) reset_range dose not update shadow queue
causing large cache size (#59314)
add 4eb63b9e65c [Enhancement](config) Modify cloud stale rowset recycle
time (#59455)
add ceaca626324 [fix](set) Fix correctness caused by set operation (#59589)
add 43cd66de3f3 [fix](catalog) update the table's last update time after
related operations. (#59387)
add 8f2007818ff [fix](group commit) add wal_max_count_per_table metric
(#59583)
add 1798b228313 [fix](fe) move some variables from Tablet to LocalTablet
which are not used in CloudTablet (#59327)
add ff91a3a41c7 [Opt](log) reduce log in `sendCalcDeleteBitmaptask`
(#59396)
add 0bea482b9fb [fix](pipeline) update license-maven-plugin to 2.1.0
(#58951)
add 50b39d0a03f [Fix](streamingjob) Replay mode no need to clear job
information. (#59597)
add 31ab24b2183 [fix](cloud) Fixed be restart queries not retried (#59566)
add 9a58d8e9c13 [enhance](test) Add retry mechanism for
NoSuchNamespaceException in Iceberg tests (#59536)
add 40191ed2fb3 [Fix](catalog)Resources should be closed when dropping a
Catalog. (#59512)
add 4cc3225f222 Revert "[Enhancement](sql-dialect) Support multiple
sql-converter service urls (#52636)" (#59610)
add cd1794becc4 [chore](ci) branch-2.1 tmp cancel clang-format check
(#59631)
add 4c215b1721e [opt](Arena)Release Arena memory earlier in pipeline
operators. (#59045)
add f1b6e160de8 [test](mtmv) Add ut test for session variable guard when
generate mtmv cache (#58863)
add 774fc26f962 [improve](syntax) compatiable with mysql MOD syntax
(#58432)
add 49becf696ca [fix](case)fix unstable parquet join runtime filter case.
(#59557)
add c771d079a6a [Feature](cte) support recursive cte (#58916)
add 55718e76df7 [feat](job) support show routine load job compute group
(#59540)
add 4a0e4afe833 [regression](hudi) Impl new Hudi Docker environment
(#59401)
add 82bd980a6a5 [Improvement](hash) opt for pack_fixeds (#59410)
add 27bcca76b48 [Feature](func) Support INTERVAL function and fix
EXPORT_SET constant process (#58885)
add 73fbbc97af2 [condition_cache](exec) Fix cast target not count in expr
digest (#59545)
add d4fd912bbb7 [chore](CI) add enable_fetch_rowsets_from_peer_replicas to
cloud be custom config (#59496)
add c69c996ce0a [fix](date time comparison) fix date time compare with low
scale literal (#59630)
add c16527bace4 [fix](restore) Preserve cross-database references when
restoring views (#59580)
add 6ac90f12fcd [fix](agg) fix rule merge_aggregate (#59629)
add 59bd2740247 [refactor](field) Remove nearest type in field (#59488)
add c0ba0cc67f5 [fix](fe) move some variables from Replica to LocalReplica
which are not used in CloudReplica to reduce memory (#59460)
add bd6384e9593 docs:update slack link (#59668)
add b797bb3377f [fix](cloud) Txn lazy committer update the txn commit op
log min_versionstamp (#59448)
add 66620c21ea8 [fix](case) exclude some unstable or fail case (#59674)
add 07045404164 [chore](dep)Upgrade dependencies (#59667)
add 416b60fa632 [refactor](type) Remove nearest type from sum/avg (#59669)
add e3fc71bf36c [fix](recycler) Add recycle state for rs meta to avoid
data loss (#58459)
add 1b8120880f2 [Fix](function) fix skip null value for some date
functions (#59616)
add d535f2b88e4 [enhancement](recycle bin) optimize the recycle bin to
reduce the potential of FE hang (#55753)
add 7f6b3875827 [refactor](predicates) Simplify predicates and profile
(#59625)
add 3070773384f [Feature](function) Support function TIME_FORMAT (#58592)
add 2855863a78b [Fix](rules) fix result wrong of
PushDownAggThroughJoinOnPkFk (#59498)
add 574f0f6e816 [Bug](catalog) fix runtime filter partition pruning error
with binary type (#59564)
add a0deaa902de [chore](ci) migrate nonConcurrent pipeline (#59700)
add 7d5e417563f [fix](fe) move variables in Replica and Tablet to reduce
memory (#59648)
add eb61c26d471 [opt](scanner) set number of file scanner to
max_scanners_concurrency (#59622)
add fce0b463eda [Bug](runtime-filter) use rf_lock to lock
local_state.conjuncts read operator (#59688)
add 8c65fdc8953 [fix](simplify range) no merge compound value with
different references (#59671)
add 85b1956d874 [Fix](streamingjob) modify select backend policy for
streaming job (#59705)
add c18fc263613 [chore](ci) fix skip buildall (#59724)
add 53d1288eb31 [fix](ut) fix get field (#59706)
add a28e4957bc2 [Exec](scan) set not null in parse zone map if zone map
not init (#59529)
add 6e0a6a03659 [opt](fe) modify TabletInvertedIndex to local and cloud to
reduce memory (#59683)
add c7121fd5294 [fix](cloud) Fix brpc::Server::ClearServices() SEGV
(#59717)
add e1e58d1d714 [feature](search) introduce lucene bool mode for search
function (#59394)
add fea543c68ee [Feature](func) Support function
QUANTILE_STATE_TO/FROM_BASE64 (#59664)
add b06c726823f [chore](be) remove all LRU Cache default value (#59556)
add c4c3d143f92 [fix](filecache) add OFFSET column for table
file_cache_info (#59645)
add df7c22509b7 Merge branch 'master' into bugfix_bitmap
No new revisions were added by this update.
Summary of changes:
.asf.yaml | 9 +-
.github/workflows/build-extension.yml | 40 +-
.gitignore | 3 +
.licenserc.yaml | 1 +
CONTRIBUTING.md | 2 +-
CONTRIBUTING_CN.md | 2 +-
LICENSE.txt | 7 +
NOTICE.txt | 30 +
README.md | 4 +-
be/src/agent/task_worker_pool.cpp | 2 +-
.../cloud/cloud_cumulative_compaction_policy.cpp | 31 +-
be/src/cloud/cloud_rowset_writer.cpp | 3 +-
be/src/cloud/cloud_schema_change_job.cpp | 1 +
be/src/cloud/cloud_tablet_mgr.cpp | 4 +-
be/src/cloud/cloud_txn_delete_bitmap_cache.cpp | 4 +-
be/src/cloud/pb_convert.cpp | 36 +
be/src/common/exception.cpp | 8 +
be/src/common/exception.h | 20 +-
be/src/exec/es/es_scroll_parser.cpp | 27 +-
be/src/exec/olap_common.h | 17 +-
be/src/exec/olap_utils.h | 53 +-
.../schema_file_cache_info_scanner.cpp | 23 +-
.../schema_routine_load_job_scanner.cpp | 4 +
be/src/exprs/create_predicate_function.h | 15 +-
be/src/io/cache/block_file_cache.cpp | 26 +-
be/src/io/cache/cached_remote_file_reader.cpp | 18 +-
be/src/io/cache/file_cache_common.h | 2 +
be/src/io/cache/fs_file_cache_storage.cpp | 41 +-
be/src/io/cache/fs_file_cache_storage.h | 4 +
be/src/io/cache/lru_queue_recorder.cpp | 9 +
be/src/io/cache/lru_queue_recorder.h | 3 +-
be/src/io/cache/peer_file_cache_reader.cpp | 3 +-
be/src/io/fs/benchmark/benchmark_factory.hpp | 2 +-
be/src/io/fs/hdfs_file_writer.cpp | 2 +-
be/src/io/fs/local_file_reader.cpp | 15 +
be/src/io/fs/local_file_reader.h | 1 +
be/src/io/fs/packed_file_manager.cpp | 34 +-
be/src/io/fs/packed_file_manager.h | 2 +
be/src/io/fs/packed_file_system.cpp | 10 +-
be/src/olap/accept_null_predicate.h | 3 +-
be/src/olap/bitmap_filter_predicate.h | 4 +-
be/src/olap/bloom_filter_predicate.h | 4 +-
be/src/olap/collection_statistics.cpp | 68 +-
be/src/olap/collection_statistics.h | 12 +-
be/src/olap/column_predicate.h | 9 +-
be/src/olap/compaction.cpp | 27 +-
be/src/olap/comparison_predicate.h | 24 +-
be/src/olap/cumulative_compaction_policy.cpp | 25 +-
be/src/olap/delete_handler.cpp | 73 +-
be/src/olap/in_list_predicate.h | 49 +-
be/src/olap/like_column_predicate.cpp | 4 +-
be/src/olap/like_column_predicate.h | 4 +-
be/src/olap/memtable.cpp | 47 +-
be/src/olap/memtable.h | 3 +
be/src/olap/memtable_memory_limiter.cpp | 1 +
be/src/olap/null_predicate.cpp | 5 +-
be/src/olap/null_predicate.h | 3 +-
be/src/olap/page_cache.h | 11 +-
be/src/olap/predicate_creator.cpp | 65 +-
be/src/olap/predicate_creator.h | 148 +-
be/src/olap/push_handler.cpp | 8 +-
be/src/olap/push_handler.h | 1 +
be/src/olap/rowset/beta_rowset_reader.cpp | 4 +-
be/src/olap/rowset/rowset_meta.cpp | 2 +
be/src/olap/rowset/rowset_meta.h | 9 +-
be/src/olap/rowset/rowset_writer_context.h | 2 +
.../segment_v2/bloom_filter_index_writer.cpp | 2 +
be/src/olap/rowset/segment_v2/column_reader.cpp | 3 +
be/src/olap/rowset/segment_v2/condition_cache.h | 4 +-
.../olap/rowset/segment_v2/inverted_index_cache.h | 17 +-
.../olap/rowset/segment_v2/inverted_index_reader.h | 4 +-
.../segment_v2/variant/variant_column_reader.cpp | 5 +
be/src/olap/rowset/segment_v2/zone_map_index.cpp | 3 +-
be/src/olap/schema.h | 2 +-
be/src/olap/schema_cache.h | 4 +-
be/src/olap/segment_loader.h | 9 +-
be/src/olap/shared_predicate.h | 4 +-
be/src/olap/storage_engine.cpp | 21 +-
be/src/olap/storage_engine.h | 4 +-
be/src/olap/tablet.cpp | 16 +-
be/src/olap/tablet_column_object_pool.h | 5 +-
be/src/olap/tablet_meta.cpp | 14 +-
be/src/olap/tablet_schema.cpp | 98 ++
be/src/olap/tablet_schema.h | 18 +
be/src/olap/tablet_schema_cache.h | 5 +-
be/src/olap/txn_manager.h | 6 +-
be/src/olap/wal/wal_manager.cpp | 9 +-
be/src/pipeline/dependency.h | 6 +
be/src/pipeline/exec/aggregation_sink_operator.cpp | 46 +-
be/src/pipeline/exec/aggregation_sink_operator.h | 2 -
.../pipeline/exec/aggregation_source_operator.cpp | 13 +-
be/src/pipeline/exec/aggregation_source_operator.h | 1 -
be/src/pipeline/exec/analytic_sink_operator.cpp | 16 +-
be/src/pipeline/exec/analytic_sink_operator.h | 1 -
be/src/pipeline/exec/dict_sink_operator.cpp | 18 +-
.../distinct_streaming_aggregation_operator.cpp | 4 +-
.../exec/distinct_streaming_aggregation_operator.h | 4 +-
be/src/pipeline/exec/exchange_sink_buffer.cpp | 2 +-
be/src/pipeline/exec/exchange_sink_buffer.h | 2 +-
be/src/pipeline/exec/exchange_sink_operator.cpp | 36 +-
be/src/pipeline/exec/exchange_sink_operator.h | 1 +
be/src/pipeline/exec/exchange_source_operator.cpp | 8 +-
be/src/pipeline/exec/exchange_source_operator.h | 19 +
be/src/pipeline/exec/file_scan_operator.cpp | 33 +-
be/src/pipeline/exec/file_scan_operator.h | 22 +
be/src/pipeline/exec/hashjoin_build_sink.h | 9 +-
be/src/pipeline/exec/hashjoin_probe_operator.h | 16 +-
.../exec/join/process_hash_table_probe_impl.h | 11 +-
be/src/pipeline/exec/mock_scan_operator.h | 44 +-
.../pipeline/exec/multi_cast_data_stream_sink.cpp | 11 +-
.../exec/nested_loop_join_probe_operator.h | 4 +-
be/src/pipeline/exec/olap_scan_operator.cpp | 56 +-
be/src/pipeline/exec/olap_scan_operator.h | 25 +-
be/src/pipeline/exec/operator.cpp | 22 +-
be/src/pipeline/exec/operator.h | 2 +
.../pipeline/exec/partition_sort_sink_operator.cpp | 13 +-
.../pipeline/exec/partition_sort_sink_operator.h | 1 -
.../exec/partitioned_aggregation_sink_operator.cpp | 112 +-
.../exec/partitioned_aggregation_sink_operator.h | 2 +
.../exec/partitioned_hash_join_sink_operator.cpp | 294 ++--
.../exec/partitioned_hash_join_sink_operator.h | 7 +
.../pipeline/exec/rec_cte_anchor_sink_operator.cpp | 56 +
.../pipeline/exec/rec_cte_anchor_sink_operator.h | 128 ++
be/src/pipeline/exec/rec_cte_scan_operator.h | 89 +
be/src/pipeline/exec/rec_cte_sink_operator.cpp | 55 +
be/src/pipeline/exec/rec_cte_sink_operator.h | 100 ++
be/src/pipeline/exec/rec_cte_source_operator.cpp | 85 +
be/src/pipeline/exec/rec_cte_source_operator.h | 224 +++
be/src/pipeline/exec/repeat_operator.cpp | 12 +-
be/src/pipeline/exec/scan_operator.cpp | 1020 +++++------
be/src/pipeline/exec/scan_operator.h | 83 +-
be/src/pipeline/exec/set_probe_sink_operator.h | 9 +-
be/src/pipeline/exec/set_sink_operator.cpp | 2 +-
be/src/pipeline/exec/set_sink_operator.h | 10 +-
be/src/pipeline/exec/sort_sink_operator.cpp | 5 +-
be/src/pipeline/exec/spill_sort_sink_operator.cpp | 126 +-
be/src/pipeline/exec/spill_sort_sink_operator.h | 2 +
.../pipeline/exec/spill_sort_source_operator.cpp | 173 +-
be/src/pipeline/exec/spill_sort_source_operator.h | 3 +
.../exec/streaming_aggregation_operator.cpp | 270 ++-
.../pipeline/exec/streaming_aggregation_operator.h | 80 +-
be/src/pipeline/exec/union_sink_operator.h | 42 +-
be/src/pipeline/pipeline.h | 2 +-
be/src/pipeline/pipeline_fragment_context.cpp | 277 ++-
be/src/pipeline/pipeline_fragment_context.h | 20 +-
be/src/pipeline/pipeline_task.cpp | 58 +-
be/src/pipeline/query_cache/query_cache.h | 4 +-
be/src/pipeline/rec_cte_shared_state.h | 180 ++
be/src/runtime/cdc_client_mgr.cpp | 20 +-
be/src/runtime/fragment_mgr.cpp | 62 +
be/src/runtime/fragment_mgr.h | 14 +
be/src/runtime/load_channel_mgr.h | 5 +-
be/src/runtime/memory/lru_cache_policy.h | 14 +-
be/src/runtime/memory/mem_tracker_limiter.h | 3 +-
be/src/runtime/primitive_type.h | 144 +-
be/src/runtime/query_context.cpp | 55 +-
be/src/runtime/query_context.h | 28 +-
be/src/runtime/runtime_predicate.cpp | 8 +-
be/src/runtime/runtime_predicate.h | 5 +-
be/src/runtime/runtime_state.cpp | 16 +-
be/src/runtime/runtime_state.h | 25 +-
be/src/runtime/task_execution_context.cpp | 60 +
be/src/runtime/task_execution_context.h | 26 +-
.../workload_group/workload_group_manager.cpp | 388 ++---
.../workload_management/query_task_controller.cpp | 9 +
.../workload_management/query_task_controller.h | 1 +
.../runtime/workload_management/task_controller.h | 2 +-
be/src/runtime_filter/runtime_filter_consumer.h | 15 +-
.../runtime_filter_consumer_helper.cpp | 11 +
.../runtime_filter_consumer_helper.h | 6 +
be/src/runtime_filter/runtime_filter_merger.h | 2 +
be/src/runtime_filter/runtime_filter_mgr.cpp | 43 +-
be/src/runtime_filter/runtime_filter_mgr.h | 35 +-
be/src/service/doris_main.cpp | 2 +-
be/src/service/internal_service.cpp | 51 +
be/src/service/internal_service.h | 10 +
be/src/service/point_query_executor.cpp | 3 +-
be/src/service/point_query_executor.h | 5 +-
be/src/util/bitmap_value.h | 11 +-
be/src/util/doris_metrics.cpp | 4 +-
be/src/util/doris_metrics.h | 2 +-
be/src/util/jni-util.cpp | 556 ++----
be/src/util/jni-util.h | 1205 +++++++++++--
be/src/util/jvm_metrics.cpp | 477 +++---
be/src/util/jvm_metrics.h | 83 +-
be/src/util/obj_lru_cache.cpp | 3 +-
be/src/util/runtime_profile.h | 8 +-
be/src/util/simd/bits.h | 61 +-
be/src/util/work_thread_pool.hpp | 8 +-
.../vec/aggregate_functions/aggregate_function.h | 8 +-
.../aggregate_functions/aggregate_function_avg.cpp | 18 +-
.../aggregate_functions/aggregate_function_avg.h | 4 +-
.../aggregate_function_foreach.h | 4 +-
.../aggregate_function_java_udaf.h | 210 ++-
.../aggregate_functions/aggregate_function_null.h | 89 +-
.../aggregate_function_regr_union.cpp | 3 +
.../aggregate_function_regr_union.h | 91 +-
.../aggregate_functions/aggregate_function_sort.h | 5 +-
.../aggregate_function_state_union.h | 2 +-
.../aggregate_functions/aggregate_function_sum.h | 19 +-
.../aggregate_function_uniq.cpp | 6 +-
.../aggregate_functions/aggregate_function_uniq.h | 9 +-
be/src/vec/columns/column.h | 11 +-
be/src/vec/columns/column_array.cpp | 6 +-
be/src/vec/columns/column_array.h | 2 +-
be/src/vec/columns/column_complex.h | 12 +
be/src/vec/columns/column_const.cpp | 10 +-
be/src/vec/columns/column_const.h | 12 +-
be/src/vec/columns/column_decimal.cpp | 28 +-
be/src/vec/columns/column_decimal.h | 16 +-
be/src/vec/columns/column_dummy.h | 2 +-
be/src/vec/columns/column_map.cpp | 6 +-
be/src/vec/columns/column_map.h | 2 +-
be/src/vec/columns/column_nullable.cpp | 10 +-
be/src/vec/columns/column_nullable.h | 2 +-
be/src/vec/columns/column_string.cpp | 6 +-
be/src/vec/columns/column_string.h | 2 +-
be/src/vec/columns/column_struct.cpp | 6 +-
be/src/vec/columns/column_struct.h | 2 +-
be/src/vec/columns/column_varbinary.cpp | 6 +-
be/src/vec/columns/column_varbinary.h | 5 +-
be/src/vec/columns/column_variant.cpp | 2 +-
be/src/vec/columns/column_vector.cpp | 84 +-
be/src/vec/columns/column_vector.h | 7 +-
be/src/vec/columns/predicate_column.h | 3 +-
be/src/vec/common/field_visitors.h | 64 +-
be/src/vec/common/hash_table/hash_key_type.h | 7 +-
be/src/vec/common/hash_table/hash_map_context.h | 139 +-
be/src/vec/common/schema_util.cpp | 6 +-
be/src/vec/common/sort/heap_sorter.cpp | 9 +-
be/src/vec/common/sort/heap_sorter.h | 4 +-
be/src/vec/common/sort/partition_sorter.cpp | 5 +-
be/src/vec/common/sort/sorter.cpp | 16 +-
be/src/vec/common/sort/sorter.h | 9 +-
be/src/vec/common/sort/topn_sorter.cpp | 2 +-
be/src/vec/common/string_buffer.hpp | 3 +-
be/src/vec/core/column_with_type_and_name.cpp | 5 +-
be/src/vec/core/decimal_comparison.h | 75 +-
be/src/vec/core/field.cpp | 888 +++++-----
be/src/vec/core/field.h | 331 +---
be/src/vec/core/hybrid_sorter.h | 205 +++
be/src/vec/core/sort_block.cpp | 7 +-
be/src/vec/core/sort_block.h | 16 +-
be/src/vec/data_types/convert_field_to_type.cpp | 384 ++++-
be/src/vec/data_types/data_type_date.h | 2 +-
.../vec/data_types/data_type_date_or_datetime_v2.h | 4 +-
be/src/vec/data_types/data_type_date_time.h | 2 +-
be/src/vec/data_types/data_type_decimal.cpp | 2 +-
be/src/vec/data_types/data_type_decimal.h | 20 +-
be/src/vec/data_types/data_type_number_base.cpp | 6 +-
be/src/vec/data_types/data_type_timestamptz.cpp | 2 +-
.../vec/data_types/serde/data_type_map_serde.cpp | 4 +-
.../data_types/serde/data_type_number_serde.cpp | 2 +-
be/src/vec/exec/format/generic_reader.cpp | 294 ----
be/src/vec/exec/format/generic_reader.h | 19 -
be/src/vec/exec/format/json/new_json_reader.cpp | 15 +-
be/src/vec/exec/format/orc/vorc_reader.cpp | 12 +-
be/src/vec/exec/format/parquet/parquet_predicate.h | 14 +-
.../exec/format/parquet/vparquet_group_reader.cpp | 12 +-
.../exec/format/parquet/vparquet_group_reader.h | 9 +
be/src/vec/exec/format/parquet/vparquet_reader.cpp | 105 +-
be/src/vec/exec/format/parquet/vparquet_reader.h | 29 +-
be/src/vec/exec/format/table/hive_reader.cpp | 10 +-
be/src/vec/exec/format/table/hive_reader.h | 6 +-
be/src/vec/exec/format/table/hudi_reader.cpp | 10 +-
be/src/vec/exec/format/table/hudi_reader.h | 6 +-
be/src/vec/exec/format/table/iceberg_reader.cpp | 20 +-
be/src/vec/exec/format/table/iceberg_reader.h | 6 +-
be/src/vec/exec/format/table/paimon_reader.h | 10 +-
.../format/table/trino_connector_jni_reader.cpp | 37 +-
be/src/vec/exec/jni_connector.cpp | 170 +-
be/src/vec/exec/jni_connector.h | 24 +-
be/src/vec/exec/scan/file_scanner.cpp | 85 +-
be/src/vec/exec/scan/file_scanner.h | 3 +-
be/src/vec/exec/scan/olap_scanner.cpp | 40 +-
be/src/vec/exec/scan/scanner.cpp | 48 +-
be/src/vec/exec/scan/scanner.h | 12 +
be/src/vec/exec/scan/scanner_context.cpp | 2 +-
be/src/vec/exec/vjdbc_connector.cpp | 339 ++--
be/src/vec/exec/vjdbc_connector.h | 38 +-
.../exprs/table_function/udf_table_function.cpp | 92 +-
.../vec/exprs/table_function/udf_table_function.h | 23 +-
.../vec/exprs/table_function/vexplode_bitmap.cpp | 6 +-
.../exprs/table_function/vexplode_json_object.cpp | 6 +-
be/src/vec/exprs/vcast_expr.h | 9 +
be/src/vec/exprs/vcondition_expr.cpp | 6 +-
be/src/vec/exprs/vexpr.cpp | 83 +-
be/src/vec/exprs/vexpr.h | 2 +-
be/src/vec/exprs/vexpr_context.cpp | 12 +
be/src/vec/exprs/vexpr_context.h | 1 +
be/src/vec/exprs/vruntimefilter_wrapper.h | 1 +
be/src/vec/functions/binary_arithmetic.h | 70 +-
be/src/vec/functions/date_time_transforms.h | 209 +++
be/src/vec/functions/divide.cpp | 114 +-
be/src/vec/functions/function_bit.cpp | 12 +-
be/src/vec/functions/function_bit_shift.cpp | 8 +-
.../function_date_or_datetime_computation.cpp | 8 +-
.../function_date_or_datetime_computation.h | 148 +-
.../function_date_or_datetime_to_string.cpp | 49 +-
.../function_datetime_string_to_string.cpp | 6 +
be/src/vec/functions/function_hash.cpp | 4 +-
be/src/vec/functions/function_helpers.h | 4 +-
be/src/vec/functions/function_interval.cpp | 125 ++
be/src/vec/functions/function_java_udf.cpp | 61 +-
be/src/vec/functions/function_java_udf.h | 20 +-
be/src/vec/functions/function_jsonb.cpp | 3 +-
.../vec/functions/function_needs_to_handle_null.h | 6 +
be/src/vec/functions/function_quantile_state.cpp | 131 +-
be/src/vec/functions/function_search.cpp | 50 +-
be/src/vec/functions/function_string.h | 2 +-
.../vec/functions/function_time_value_to_field.cpp | 10 +
.../functions/functions_multi_string_position.cpp | 2 +-
.../functions/functions_multi_string_search.cpp | 5 +-
be/src/vec/functions/if.cpp | 6 +-
be/src/vec/functions/int_div.cpp | 8 +-
be/src/vec/functions/math.cpp | 8 +-
be/src/vec/functions/modulo.cpp | 118 +-
be/src/vec/functions/multiply.cpp | 127 +-
be/src/vec/functions/simple_function_factory.h | 2 +
be/src/vec/json/parse2column.cpp | 2 +-
be/src/vec/olap/block_reader.cpp | 169 +-
be/src/vec/olap/block_reader.h | 15 +
be/src/vec/olap/vcollect_iterator.cpp | 3 +-
be/src/vec/runtime/time_value.h | 16 +
be/src/vec/runtime/vdata_stream_recvr.cpp | 2 +-
be/src/vec/runtime/vdatetime_value.cpp | 505 +++---
be/src/vec/runtime/vdatetime_value.h | 21 +
be/src/vec/sink/vdata_stream_sender.cpp | 1 -
.../cloud_cumulative_compaction_policy_test.cpp | 122 ++
.../vec/columns/column_variant_byte_size.out | 4 +-
.../column_variant_update_crc_with_value.out | 2 +-
..._variant_update_crc_with_value.out_with_nullmap | 2 +-
.../column_variant_update_crcs_with_value.out | 2 +-
...variant_update_crcs_with_value.out_with_nullmap | 2 +-
.../column_variant_update_hashes_with_value.out | 2 +-
...riant_update_hashes_with_value.out_with_nullmap | 2 +-
.../column_variant_update_xxHash_with_value.out | 2 +-
...riant_update_xxHash_with_value.out_with_nullmap | 2 +-
.../io/cache/block_file_cache_test_meta_store.cpp | 69 +
be/test/io/cache/lru_queue_test.cpp | 11 +
be/test/io/fs/remote_file_system_test.cpp | 1 -
be/test/olap/block_column_predicate_test.cpp | 74 +-
be/test/olap/collection_statistics_test.cpp | 31 +-
be/test/olap/cumulative_compaction_policy_test.cpp | 1801 +++++++++++++++++++-
be/test/olap/date_bloom_filter_test.cpp | 28 +-
be/test/olap/lru_cache_test.cpp | 4 +-
.../segment_v2/inverted_index_query_param_test.cpp | 8 +-
be/test/olap/test_data/header_without_inc_rs.txt | 4 +-
.../operator/hashjoin_probe_operator_test.cpp | 48 +-
.../operator/scan_normalize_predicate_test.cpp | 117 +-
.../operator/streaming_agg_operator_test.cpp | 4 -
be/test/pipeline/pipeline_task_test.cpp | 200 ++-
be/test/pipeline/thrift_builder.h | 5 +
.../workload_group/workload_group_manager_test.cpp | 4 +-
.../runtime_filter_consumer_test.cpp | 20 +-
be/test/runtime_filter/runtime_filter_mgr_test.cpp | 2 +-
.../runtime_filter/runtime_filter_wrapper_test.cpp | 12 +-
be/test/testutil/mock/mock_runtime_state.h | 2 +
be/test/util/jni_util_test.cpp | 682 ++++++++
be/test/util/simd/bits_test.cpp | 149 +-
.../agg_group_array_intersect_test.cpp | 17 +-
.../aggregate_functions/agg_min_max_by_test.cpp | 8 +-
.../vec/aggregate_functions/agg_min_max_test.cpp | 5 +-
.../vec/aggregate_functions/agg_replace_test.cpp | 7 +-
be/test/vec/aggregate_functions/agg_test.cpp | 2 +-
be/test/vec/columns/column_const_test.cpp | 2 +-
be/test/vec/columns/column_nullable_test.cpp | 6 +-
be/test/vec/columns/column_nullable_test.h | 2 +-
be/test/vec/columns/column_varbinary_test.cpp | 13 +-
be/test/vec/columns/column_variant_test.cpp | 58 +-
be/test/vec/columns/common_column_test.h | 15 +-
be/test/vec/core/block_test.cpp | 6 +-
be/test/vec/core/column_complex_test.cpp | 20 +
be/test/vec/core/column_struct_test.cpp | 6 +-
be/test/vec/core/column_test.cpp | 8 +-
be/test/vec/core/field_test.cpp | 2 +-
be/test/vec/data_types/data_type_array_test.cpp | 5 +-
.../vec/data_types/data_type_datetime_v2_test.cpp | 21 +-
be/test/vec/data_types/data_type_decimal_test.cpp | 18 +-
.../vec/data_types/data_type_timestamptz_test.cpp | 3 +-
.../vec/data_types/data_type_varbinary_test.cpp | 10 +-
.../serde/data_type_serde_arrow_test.cpp | 3 +-
.../vec/data_types/serde/data_type_serde_test.cpp | 36 +-
.../data_types/serde/data_type_to_string_test.cpp | 15 +-
.../format/native/native_reader_writer_test.cpp | 29 +-
.../vec/exec/format/parquet/parquet_expr_test.cpp | 241 +--
.../vec/exec/format/parquet/parquet_read_lines.cpp | 3 +-
.../exec/format/parquet/parquet_reader_test.cpp | 23 +-
.../exec/format/table/hive/hive_reader_test.cpp | 3 +-
.../format/table/iceberg/iceberg_reader_test.cpp | 3 +-
be/test/vec/exec/sort/full_sort_test.cpp | 6 +-
be/test/vec/exec/sort/heap_sorter_test.cpp | 4 +-
be/test/vec/exec/sort/partition_sorter_test.cpp | 6 +-
be/test/vec/exec/sort/sort_test.cpp | 14 +-
be/test/vec/exec/sort/topn_sort_test.cpp | 4 +-
be/test/vec/exec/vgeneric_iterators_test.cpp | 12 +-
be/test/vec/exprs/vexpr_test.cpp | 12 +-
.../vec/function/function_quantile_state_test.cpp | 216 +++
be/test/vec/function/function_search_test.cpp | 441 +++++
be/test/vec/function/function_test_util.cpp | 11 +
be/test/vec/jsonb/convert_field_to_type_test.cpp | 54 +-
be/test/vec/jsonb/serialize_test.cpp | 3 +-
be/test/vec/olap/jsonb_value_test.cpp | 1 +
build.sh | 1 +
cloud/CMakeLists.txt | 75 +-
cloud/cmake/install_fdb.cmake | 280 +++
cloud/src/common/bvars.cpp | 14 +-
cloud/src/common/bvars.h | 14 +-
cloud/src/common/config.h | 13 +-
cloud/src/common/metric.cpp | 189 +-
cloud/src/meta-service/meta_service.cpp | 94 +-
cloud/src/meta-service/meta_service.h | 15 +
cloud/src/meta-service/meta_service_helper.h | 3 +-
cloud/src/meta-service/meta_service_job.cpp | 87 +-
cloud/src/meta-service/meta_service_txn.cpp | 142 +-
cloud/src/meta-service/txn_lazy_committer.cpp | 35 +
cloud/src/meta-store/clone_chain_reader.cpp | 129 ++
cloud/src/meta-store/clone_chain_reader.h | 20 +
cloud/src/meta-store/txn_kv.cpp | 183 +-
cloud/src/meta-store/txn_kv.h | 7 +-
cloud/src/recycler/meta_checker.cpp | 4 +-
cloud/src/recycler/obj_storage_client.cpp | 142 +-
cloud/src/recycler/recycler.cpp | 460 +++--
cloud/src/recycler/recycler.h | 31 +
cloud/test/CMakeLists.txt | 3 +-
cloud/test/meta_server_test.cpp | 2 +
cloud/test/meta_service_job_test.cpp | 1378 ++++++++++++++-
cloud/test/meta_service_test.cpp | 526 +++++-
cloud/test/metric_test.cpp | 137 +-
cloud/test/recycler_batch_delete_test.cpp | 403 +++++
cloud/test/recycler_test.cpp | 7 +-
cloud/test/rpc_kv_bvar_test.cpp | 30 +-
cloud/test/txn_kv_test.cpp | 2 +-
cloud/test/txn_lazy_commit_test.cpp | 425 +----
docker/runtime/doris-compose/cluster.py | 1 +
docker/runtime/doris-compose/database.py | 1 +
.../scripts/create_preinstalled_scripts/run84.hql | 20 +
.../runtime_filter_dim_small/dim_small.parquet | Bin 0 -> 4230 bytes
.../runtime_filter_fact_big/fact_big.parquet | Bin 0 -> 129338 bytes
docker/thirdparties/docker-compose/hudi/README.md | 280 +++
docker/thirdparties/docker-compose/hudi/hadoop.env | 52 -
.../thirdparties/docker-compose/hudi/hudi.env.tpl | 50 +
.../thirdparties/docker-compose/hudi/hudi.yaml.tpl | 355 ++--
.../hudi/scripts/config/base.properties | 25 -
.../hudi/scripts/config/dfs-source.properties | 31 -
.../hudi/scripts/config/hoodie-incr.properties | 34 -
.../hudi/scripts/config/hoodie-schema.avsc | 146 --
.../hudi/scripts/config/kafka-source.properties | 30 -
.../hudi/scripts/config/log4j2.properties | 61 -
.../docker-compose/hudi/scripts/config/schema.avsc | 59 -
.../hudi/scripts/config/spark-defaults.conf | 30 -
.../hudi/01_config_and_database.sql | 11 +
.../hudi/02_create_user_activity_log_tables.sql | 160 ++
.../hudi/03_create_orc_tables.sql | 49 +
.../hudi/04_create_time_travel_tables.sql | 48 +
.../hudi/05_create_partition_tables.sql | 94 +
.../hudi/06_create_type_partition_tables.sql | 169 ++
.../hudi/07_create_schema_change_tables.sql | 169 ++
.../hudi/08_create_full_schema_change_tables.sql | 151 ++
.../hudi/09_create_schema_evolution_tables.sql | 264 +++
.../hudi/10_create_timestamp_table.sql | 39 +
.../hudi/11_create_mtmv_tables.sql | 132 ++
.../docker-compose/hudi/scripts/init.sh | 236 +++
.../docker-compose/hudi/scripts/run_sync_tool.sh | 56 -
.../hudi/scripts/setup_demo_container_adhoc_1.sh | 31 -
.../hudi/scripts/setup_demo_container_adhoc_2.sh | 77 -
.../create_preinstalled_scripts/iceberg/run22.sql | 13 +-
.../postgresql/init/01-create-schema.sql | 1 +
.../postgresql/postgresql-14.yaml.tpl | 8 +
docker/thirdparties/run-thirdparties-docker.sh | 32 +-
docs/ar-SA/README.md | 4 +-
docs/bn-BD/README.md | 4 +-
docs/de-DE/README.md | 4 +-
docs/es-ES/README.md | 4 +-
docs/fa-IR/README.md | 4 +-
docs/fr-FR/README.md | 4 +-
docs/hi-IN/README.md | 4 +-
docs/id-ID/README.md | 4 +-
docs/it-IT/README.md | 4 +-
docs/ja-JP/README.md | 4 +-
docs/ko-KR/README.md | 4 +-
docs/pl-PL/README.md | 4 +-
docs/pt-BR/README.md | 4 +-
docs/ro-RO/README.md | 4 +-
docs/ru-RU/README.md | 4 +-
docs/sl-SI/README.md | 4 +-
docs/th-TH/README.md | 4 +-
docs/tr-TR/README.md | 4 +-
docs/uk-UA/README.md | 4 +-
docs/vi-VN/README.md | 4 +-
docs/zh-CN/README.md | 4 +-
docs/zh-TW/README.md | 4 +-
fe/check/checkstyle/suppressions.xml | 5 +
.../main/java/org/apache/doris/common/Config.java | 13 +-
.../apache/doris/job/cdc/DataSourceConfigKeys.java | 1 +
.../antlr4/org/apache/doris/nereids/DorisLexer.g4 | 2 +
.../antlr4/org/apache/doris/nereids/DorisParser.g4 | 7 +-
.../main/java/org/apache/doris/alter/Alter.java | 9 +-
.../org/apache/doris/alter/CloudRollupJobV2.java | 6 +-
.../apache/doris/alter/CloudSchemaChangeJobV2.java | 7 +-
.../doris/alter/MaterializedViewHandler.java | 6 +
.../java/org/apache/doris/alter/RollupJobV2.java | 2 +-
.../apache/doris/alter/SchemaChangeHandler.java | 192 ++-
.../org/apache/doris/alter/SchemaChangeJobV2.java | 10 +-
.../org/apache/doris/analysis/DescriptorTable.java | 5 +
.../org/apache/doris/analysis/SearchPredicate.java | 24 +
.../java/org/apache/doris/backup/RestoreJob.java | 8 +-
.../doris/catalog/BuiltinAggregateFunctions.java | 6 +
.../doris/catalog/BuiltinScalarFunctions.java | 18 +-
.../apache/doris/catalog/CatalogRecycleBin.java | 341 ++--
.../apache/doris/catalog/CloudTabletStatMgr.java | 7 +-
.../main/java/org/apache/doris/catalog/Env.java | 35 +-
.../java/org/apache/doris/catalog/EnvFactory.java | 12 +-
.../java/org/apache/doris/catalog/FunctionSet.java | 6 +
.../catalog/{Replica.java => LocalReplica.java} | 518 ++----
.../java/org/apache/doris/catalog/LocalTablet.java | 151 ++
...tedIndex.java => LocalTabletInvertedIndex.java} | 198 +--
.../java/org/apache/doris/catalog/OlapTable.java | 68 +-
.../java/org/apache/doris/catalog/Partition.java | 22 -
.../doris/catalog/RecursiveCteTempTable.java | 27 +-
.../org/apache/doris/catalog/RefreshManager.java | 19 +-
.../java/org/apache/doris/catalog/Replica.java | 478 ++----
.../java/org/apache/doris/catalog/SchemaTable.java | 2 +
.../org/apache/doris/catalog/StorageVaultMgr.java | 17 +-
.../main/java/org/apache/doris/catalog/Table.java | 12 -
.../java/org/apache/doris/catalog/TableIf.java | 19 +-
.../org/apache/doris/catalog/TableProperty.java | 87 +
.../main/java/org/apache/doris/catalog/Tablet.java | 117 +-
.../apache/doris/catalog/TabletInvertedIndex.java | 1003 +----------
.../apache/doris/catalog/TemporaryTableMgr.java | 73 +-
.../main/java/org/apache/doris/catalog/View.java | 7 +-
.../doris/clone/DynamicPartitionScheduler.java | 74 +-
.../org/apache/doris/clone/TabletSchedCtx.java | 3 +-
.../cloud/alter/CloudSchemaChangeHandler.java | 4 +-
.../apache/doris/cloud/backup/CloudRestoreJob.java | 7 +-
.../doris/cloud/catalog/CloudEnvFactory.java | 6 +
.../apache/doris/cloud/catalog/CloudPartition.java | 3 +
.../apache/doris/cloud/catalog/CloudReplica.java | 25 +-
.../cloud/catalog/CloudTabletInvertedIndex.java | 133 ++
.../doris/cloud/catalog/CloudTabletRebalancer.java | 4 +-
.../cloud/datasource/CloudInternalCatalog.java | 76 +-
.../doris/cloud/snapshot/CloudSnapshotHandler.java | 6 +-
.../doris/cloud/system/CloudSystemInfoService.java | 16 +-
.../transaction/CloudGlobalTransactionMgr.java | 64 +-
.../doris/common/plugin/CloudPluginDownloader.java | 5 +-
.../apache/doris/common/proc/ReplicasProcNode.java | 2 +-
.../apache/doris/common/proc/TabletsProcDir.java | 2 +-
.../doris/common/profile/SummaryProfile.java | 3 +
.../org/apache/doris/common/util/ColumnsUtil.java | 61 +
.../org/apache/doris/common/util/LocationPath.java | 96 +-
.../apache/doris/common/util/PropertyAnalyzer.java | 138 ++
.../util/UncloseableScheduledExecutorService.java | 153 ++
.../org/apache/doris/datasource/CatalogMgr.java | 4 +-
.../apache/doris/datasource/ExternalCatalog.java | 41 +-
.../apache/doris/datasource/ExternalObjectLog.java | 7 +-
.../org/apache/doris/datasource/ExternalTable.java | 21 +-
.../doris/datasource/FederationBackendPolicy.java | 12 +-
.../apache/doris/datasource/FileQueryScanNode.java | 19 +-
.../org/apache/doris/datasource/FileScanNode.java | 10 +-
.../org/apache/doris/datasource/FileSplitter.java | 230 ++-
.../apache/doris/datasource/InternalCatalog.java | 65 +-
.../apache/doris/datasource/SplitGenerator.java | 2 +-
.../doris/datasource/hive/HMSExternalDatabase.java | 2 +-
.../doris/datasource/hive/HMSExternalTable.java | 18 +-
.../doris/datasource/hive/HiveMetadataOps.java | 4 +-
.../doris/datasource/hive/source/HiveScanNode.java | 78 +-
.../doris/datasource/hudi/source/HudiScanNode.java | 11 +-
.../datasource/iceberg/IcebergExternalCatalog.java | 69 +-
.../iceberg/IcebergExternalCatalogFactory.java | 2 +
.../iceberg/IcebergJdbcExternalCatalog.java | 19 +-
.../datasource/iceberg/IcebergMetadataCache.java | 16 +
.../datasource/iceberg/IcebergMetadataOps.java | 43 +-
.../doris/datasource/iceberg/IcebergUtils.java | 31 +-
.../iceberg/cache/ContentFileEstimator.java | 194 +++
.../iceberg/cache/IcebergManifestCache.java | 91 +
.../iceberg/cache/IcebergManifestCacheLoader.java | 118 ++
.../datasource/iceberg/cache/ManifestCacheKey.java | 58 +
.../iceberg/cache/ManifestCacheValue.java | 65 +
.../datasource/iceberg/source/IcebergScanNode.java | 348 +++-
.../datasource/operations/ExternalMetadataOps.java | 18 +-
.../datasource/paimon/PaimonExternalCatalog.java | 12 +
.../apache/doris/datasource/paimon/PaimonUtil.java | 9 +-
.../paimon/profile/PaimonMetricRegistry.java | 72 +
.../paimon/profile/PaimonScanMetricsReporter.java | 152 ++
.../datasource/paimon/source/PaimonScanNode.java | 66 +-
.../metastore/AbstractIcebergProperties.java | 65 +-
.../metastore/IcebergJdbcMetaStoreProperties.java | 310 ++++
.../metastore/IcebergPropertiesFactory.java | 1 +
.../property/storage/S3PropertyUtils.java | 52 +-
.../doris/datasource/test/TestExternalTable.java | 1 +
.../doris/datasource/tvf/source/TVFScanNode.java | 31 +-
.../doris/httpv2/rest/manager/HttpUtils.java | 2 +-
.../apache/doris/job/common/DataSourceType.java | 3 +-
.../streaming/DataSourceConfigValidator.java | 4 +-
.../insert/streaming/StreamingInsertJob.java | 61 +-
.../streaming/StreamingJobSchedulerTask.java | 2 +-
.../insert/streaming/StreamingMultiTblTask.java | 14 +-
.../org/apache/doris/job/manager/JobManager.java | 4 +-
.../apache/doris/job/offset/jdbc/JdbcOffset.java | 8 +
.../job/offset/jdbc/JdbcSourceOffsetProvider.java | 59 +-
.../apache/doris/job/util/StreamingJobUtils.java | 88 +-
.../load/routineload/KafkaRoutineLoadJob.java | 7 +-
.../doris/load/routineload/RoutineLoadJob.java | 5 +
.../doris/load/routineload/ScheduleRule.java | 10 -
.../org/apache/doris/master/ReportHandler.java | 6 +-
.../org/apache/doris/mtmv/MTMVPartitionUtil.java | 2 +-
.../org/apache/doris/nereids/CascadesContext.java | 41 +-
.../glue/translator/PhysicalPlanTranslator.java | 118 +-
.../glue/translator/RuntimeFilterTranslator.java | 2 +-
.../doris/nereids/parser/LogicalPlanBuilder.java | 12 +-
.../parser/LogicalPlanBuilderForEncryption.java | 19 +-
.../apache/doris/nereids/pattern/MemoPatterns.java | 24 +
.../apache/doris/nereids/pattern/PlanPatterns.java | 70 +-
.../processor/post/RuntimeFilterPruner.java | 9 +
.../post/materialize/LazySlotPruning.java | 1 +
.../processor/pre/PullUpSubqueryAliasToCTE.java | 16 +-
.../properties/ChildOutputPropertyDeriver.java | 72 +
.../properties/ChildrenPropertiesRegulator.java | 110 +-
.../apache/doris/nereids/properties/FuncDeps.java | 51 +-
.../nereids/properties/RequestPropertyDeriver.java | 16 +-
.../org/apache/doris/nereids/rules/RuleSet.java | 6 +
.../org/apache/doris/nereids/rules/RuleType.java | 4 +-
.../AdjustAggregateNullableForEmptySet.java | 9 +
.../doris/nereids/rules/analysis/AnalyzeCTE.java | 167 +-
.../nereids/rules/analysis/BindExpression.java | 199 ++-
.../doris/nereids/rules/analysis/BindRelation.java | 36 +-
.../nereids/rules/analysis/CheckAfterRewrite.java | 8 +-
.../nereids/rules/analysis/CheckAnalysis.java | 93 +-
.../nereids/rules/analysis/CollectRelation.java | 11 +-
.../nereids/rules/analysis/FillUpMissingSlots.java | 292 ++--
.../rules/analysis/FillUpQualifyMissingSlot.java | 4 +-
.../nereids/rules/analysis/NormalizeAggregate.java | 25 +-
.../nereids/rules/analysis/SubExprAnalyzer.java | 4 +-
.../rules/expression/ExpressionOptimization.java | 2 +
.../rules/expression/ExpressionRuleType.java | 1 +
.../rules/expression/rules/RangeInference.java | 32 +-
.../rules/SimplifyComparisonPredicate.java | 48 +-
.../rules/SimplifyTimeFieldFromUnixtime.java | 151 ++
...eChildToPhysicalRecursiveCteRecursiveChild.java | 37 +
...RecursiveCteScanToPhysicalRecursiveCteScan.java | 42 +
.../LogicalRecursiveCteToPhysicalRecursiveCte.java | 39 +
.../rewrite/AccessPathExpressionCollector.java | 17 +-
.../rules/rewrite/AccessPathPlanCollector.java | 152 ++
.../nereids/rules/rewrite/AdjustNullable.java | 48 +
.../doris/nereids/rules/rewrite/CTEInline.java | 44 +-
.../doris/nereids/rules/rewrite/ColumnPruning.java | 55 +
.../nereids/rules/rewrite/EliminateGroupByKey.java | 43 +-
.../nereids/rules/rewrite/MergeAggregate.java | 1 +
.../rewrite/PushDownAggThroughJoinOnPkFk.java | 44 +-
.../nereids/rules/rewrite/SlotTypeReplacer.java | 6 +
.../doris/nereids/stats/StatsCalculator.java | 109 ++
.../trees/copier/LogicalPlanDeepCopier.java | 26 +
.../nereids/trees/expressions/LessThanEqual.java | 2 +-
.../trees/expressions/functions/agg/AnyValue.java | 7 +-
.../trees/expressions/functions/agg/RegrSxx.java | 85 +
.../trees/expressions/functions/agg/RegrSxy.java | 85 +
.../trees/expressions/functions/agg/RegrSyy.java | 85 +
.../executable/DateTimeExtractAndTransform.java | 117 +-
.../functions/executable/NumericArithmetic.java | 38 +
.../expressions/functions/generator/Explode.java | 11 +-
.../generator/ExplodeJsonArrayDouble.java | 3 +-
.../generator/ExplodeJsonArrayDoubleOuter.java | 3 +-
.../functions/generator/ExplodeJsonArrayInt.java | 3 +-
.../generator/ExplodeJsonArrayIntOuter.java | 3 +-
.../functions/generator/ExplodeJsonArrayJson.java | 3 +-
.../generator/ExplodeJsonArrayJsonOuter.java | 3 +-
.../generator/ExplodeJsonArrayString.java | 3 +-
.../generator/ExplodeJsonArrayStringOuter.java | 3 +-
.../functions/generator/ExplodeMap.java | 6 +-
.../functions/generator/ExplodeOuter.java | 10 +-
.../functions/generator/ExplodeSplit.java | 3 +-
.../functions/generator/ExplodeSplitOuter.java | 3 +-
.../functions/generator/PosExplode.java | 13 +-
.../functions/generator/PosExplodeOuter.java | 12 +-
.../expressions/functions/scalar/DateFormat.java | 4 +-
.../HourFromUnixtime.java} | 35 +-
.../expressions/functions/scalar/Interval.java | 61 +
.../MicrosecondFromUnixtime.java} | 37 +-
.../MinuteFromUnixtime.java} | 35 +-
.../QuantileStateFromBase64.java} | 39 +-
.../QuantileStateToBase64.java} | 39 +-
.../trees/expressions/functions/scalar/Search.java | 60 +-
.../functions/scalar/SearchDslParser.java | 761 ++++++++-
.../SecondFromUnixtime.java} | 35 +-
.../scalar/{DateFormat.java => TimeFormat.java} | 33 +-
.../trees/expressions/literal/Interval.java | 5 +
.../trees/expressions/literal/StructLiteral.java | 3 +-
.../trees/expressions/literal/TimeV2Literal.java | 4 +
.../visitor/AggregateFunctionVisitor.java | 15 +
.../expressions/visitor/ExpressionVisitors.java | 3 +
.../expressions/visitor/ScalarFunctionVisitor.java | 40 +
.../apache/doris/nereids/trees/plans/PlanType.java | 6 +
.../trees/plans/algebra/Except.java} | 6 +-
.../trees/plans/algebra/Intersect.java} | 6 +-
.../doris/nereids/trees/plans/algebra/Join.java | 11 -
.../nereids/trees/plans/algebra/RecursiveCte.java | 28 +-
.../nereids/trees/plans/algebra/ShuffleType.java | 12 +-
.../commands/AdminDropClusterSnapshotCommand.java | 6 +-
.../AdminSetAutoClusterSnapshotCommand.java | 2 +
...dminSetClusterSnapshotFeatureSwitchCommand.java | 2 +
.../trees/plans/commands/ExecuteActionCommand.java | 6 +-
.../trees/plans/commands/ExplainCommand.java | 3 +-
.../commands/ShowCreateStorageVaultCommand.java | 5 +-
.../plans/commands/ShowRoutineLoadCommand.java | 1 +
.../plans/commands/ShowStorageVaultCommand.java | 5 +-
.../plans/commands/UpdateMvByPartitionCommand.java | 3 +-
.../trees/plans/commands/info/CreateTableInfo.java | 5 +-
.../plans/commands/insert/HiveInsertExecutor.java | 7 +-
.../worker/LoadBalanceScanWorkerSelector.java | 4 +-
.../worker/job/UnassignedJobBuilder.java | 15 +-
.../worker/job/UnassignedRecursiveCteScanJob.java | 65 +
.../job/UnassignedScanBucketOlapTableJob.java | 43 +-
.../nereids/trees/plans/logical/LogicalCTE.java | 27 +-
.../nereids/trees/plans/logical/LogicalExcept.java | 3 +-
.../trees/plans/logical/LogicalIntersect.java | 3 +-
.../trees/plans/logical/LogicalRecursiveCte.java | 284 +++
.../logical/LogicalRecursiveCteRecursiveChild.java | 117 ++
.../plans/logical/LogicalRecursiveCteScan.java | 87 +
.../trees/plans/logical/LogicalSubQueryAlias.java | 22 +
.../trees/plans/physical/AbstractPhysicalJoin.java | 3 +-
.../trees/plans/physical/PhysicalExcept.java | 3 +-
.../trees/plans/physical/PhysicalIntersect.java | 3 +-
...hysicalUnion.java => PhysicalRecursiveCte.java} | 141 +-
.../PhysicalRecursiveCteRecursiveChild.java | 121 ++
.../plans/physical/PhysicalRecursiveCteScan.java | 85 +
.../trees/plans/physical/PhysicalSetOperation.java | 30 +
.../trees/plans/physical/PhysicalUnion.java | 11 +
.../nereids/trees/plans/visitor/PlanVisitor.java | 22 +
.../trees/plans/visitor/RelationVisitor.java | 10 +
.../doris/nereids/util/DateTimeFormatterUtils.java | 425 +++++
.../org/apache/doris/nereids/util/JoinUtils.java | 3 +-
.../org/apache/doris/nereids/util/PlanUtils.java | 6 +
.../java/org/apache/doris/persist/EditLog.java | 22 +-
.../apache/doris/persist/TruncateTableInfo.java | 9 +-
.../org/apache/doris/persist/gson/GsonUtils.java | 15 +-
.../org/apache/doris/planner/DistributionMode.java | 57 +
.../org/apache/doris/planner/HashJoinNode.java | 34 -
.../org/apache/doris/planner/PlanFragment.java | 17 +-
.../org/apache/doris/planner/RecursiveCteNode.java | 86 +
.../apache/doris/planner/RecursiveCteScanNode.java | 121 ++
.../org/apache/doris/planner/SetOperationNode.java | 14 +
.../plugin/dialect/HttpDialectConverterPlugin.java | 9 +
.../doris/plugin/dialect/HttpDialectUtils.java | 268 +--
.../java/org/apache/doris/qe/SessionVariable.java | 88 +-
.../java/org/apache/doris/qe/StmtExecutor.java | 11 +-
.../org/apache/doris/qe/cache/CacheAnalyzer.java | 2 +-
.../doris/qe/runtime/ThriftPlansBuilder.java | 145 +-
.../org/apache/doris/service/FrontendOptions.java | 6 +
.../apache/doris/service/FrontendServiceImpl.java | 15 +-
.../apache/doris/statistics/AnalysisManager.java | 27 +-
.../doris/statistics/StatisticsAutoCollector.java | 9 +-
.../doris/statistics/util/StatisticsUtil.java | 40 +-
.../org/apache/doris/system/SystemInfoService.java | 5 +-
.../org/apache/doris/task/CreateReplicaTask.java | 23 +-
.../java/org/apache/iceberg/DeleteFileIndex.java | 906 ++++++++++
.../client/builder/SdkDefaultClientBuilder.java | 724 ++++++++
.../doris/alter/SchemaChangeHandlerTest.java | 155 ++
.../org/apache/doris/backup/BackupHandlerTest.java | 3 +-
.../org/apache/doris/backup/CatalogMocker.java | 42 +-
.../doris/catalog/CatalogRecycleBinTest.java | 839 +++++++++
.../org/apache/doris/catalog/CatalogTestUtil.java | 12 +-
.../org/apache/doris/catalog/CreateTableTest.java | 43 +-
.../org/apache/doris/catalog/CreateViewTest.java | 24 +
.../org/apache/doris/catalog/OlapTableTest.java | 122 ++
.../org/apache/doris/catalog/RefreshTableTest.java | 16 +-
.../java/org/apache/doris/catalog/ReplicaTest.java | 12 +-
.../java/org/apache/doris/catalog/TabletTest.java | 34 +-
.../doris/clone/ClusterLoadStatisticsTest.java | 19 +-
.../org/apache/doris/clone/DecommissionTest.java | 3 +-
.../org/apache/doris/clone/DiskRebalanceTest.java | 3 +-
.../java/org/apache/doris/clone/RebalanceTest.java | 3 +-
.../org/apache/doris/clone/RebalancerTestUtil.java | 7 +-
.../org/apache/doris/clone/TabletHealthTest.java | 3 +-
.../doris/clone/TabletReplicaTooSlowTest.java | 3 +-
.../org/apache/doris/clone/TabletSchedCtxTest.java | 11 +-
.../doris/cloud/cache/CacheHotspotManagerTest.java | 3 +-
.../doris/cluster/DecommissionBackendTest.java | 3 +-
.../doris/cluster/SystemInfoServiceTest.java | 3 +-
.../apache/doris/common/PropertyAnalyzerTest.java | 95 ++
.../apache/doris/common/util/LocationPathTest.java | 40 +
.../org/apache/doris/common/util/UnitTestUtil.java | 10 +-
.../doris/cooldown/CooldownConfHandlerTest.java | 5 +-
.../apache/doris/datasource/FileSplitterTest.java | 216 +++
.../paimon/source/PaimonScanNodeTest.java | 17 +
.../metastore/AbstractIcebergPropertiesTest.java | 4 +-
.../IcebergJdbcMetaStorePropertiesTest.java | 83 +
.../storage/S3ConnectorPropertiesUtilsTest.java | 12 +
.../apache/doris/external/hms/HmsCatalogTest.java | 15 +-
.../org/apache/doris/http/DorisHttpTestCase.java | 19 +-
.../apache/doris/nereids/DistributeHintTest.java | 2 +-
.../doris/nereids/mv/IdStatisticsMapTest.java | 11 +
.../org/apache/doris/nereids/mv/MTMVCacheTest.java | 132 ++
.../nereids/mv/MtmvCacheNewConnectContextTest.java | 13 +-
.../doris/nereids/mv/MvTableIdIsLongTest.java | 1 +
.../nereids/mv/OptimizeGetAvailableMvsTest.java | 9 +
.../mv/PointQueryShouldNotMvRewriteTest.java | 5 +-
.../doris/nereids/parser/EncryptSQLTest.java | 66 +-
.../nereids/postprocess/RuntimeFilterTest.java | 29 +
.../ChildrenPropertiesRegulatorTest.java | 41 +-
.../nereids/rules/analysis/AnalyzeCTETest.java | 219 +++
.../rules/analysis/FillUpMissingSlotsTest.java | 71 +-
.../nereids/rules/expression/FoldConstantTest.java | 12 +-
.../rules/expression/SimplifyRangeTest.java | 10 +
.../SimplifyTimeFieldFromUnixtimeTest.java | 86 +
.../rules/SimplifyComparisonPredicateTest.java | 36 +-
.../doris/nereids/rules/rewrite/CTEInlineTest.java | 84 +
.../nereids/rules/rewrite/ColumnPruningTest.java | 30 +
.../nereids/rules/rewrite/MergeAggregateTest.java | 124 ++
.../rules/rewrite/PruneNestedColumnTest.java | 141 ++
.../functions/generator/ExplodeOuterTest.java | 14 +-
.../functions/generator/ExplodeTest.java | 12 +-
.../functions/generator/PosExplodeOuterTest.java | 10 +-
.../functions/generator/PosExplodeTest.java | 8 +-
.../functions/scalar/SearchDslParserTest.java | 348 ++++
.../trees/expressions/literal/IntervalTest.java | 24 +-
.../trees/plans/CreateTableCommandTest.java | 7 -
.../org/apache/doris/nereids/util/TestHelper.java | 46 +
.../doris/planner/FederationBackendPolicyTest.java | 4 +-
.../apache/doris/plugin/HttpDialectUtilsTest.java | 360 +---
.../org/apache/doris/qe/HmsQueryCacheTest.java | 12 +-
.../statistics/StatisticsAutoCollectorTest.java | 2 +-
.../java/org/apache/doris/task/AgentTaskTest.java | 2 +-
fe/pom.xml | 13 +-
fs_brokers/cdc_client/build.sh | 2 +-
fs_brokers/cdc_client/pom.xml | 5 +
.../apache/doris/cdcclient/common/Constants.java | 2 +
.../org/apache/doris/cdcclient/common/Env.java | 81 +-
.../cdcclient/controller/ClientController.java | 16 +-
.../doris/cdcclient/model/rest/RestResponse.java | 2 +
.../cdcclient/service/PipelineCoordinator.java | 115 +-
.../doris/cdcclient/sink/DorisBatchStreamLoad.java | 3 +
.../deserialize/DebeziumJsonDeserializer.java | 43 +-
.../doris/cdcclient/source/factory/DataSource.java | 3 +-
.../source/factory/SourceReaderFactory.java | 4 +-
.../source/reader/JdbcIncrementalSourceReader.java | 730 ++++++++
.../cdcclient/source/reader/SourceReader.java | 31 +-
.../cdcclient/source/reader/SplitRecords.java | 21 +-
.../source/reader/mysql/MySqlSourceReader.java | 278 ++-
.../reader/postgres/PostgresSourceReader.java | 388 +++++
.../apache/doris/cdcclient/utils/ConfigUtil.java | 164 +-
.../source/PostgresConnectionPoolFactory.java | 58 +
gensrc/proto/cloud.proto | 1 +
gensrc/proto/internal_service.proto | 42 +
gensrc/proto/olap_file.proto | 20 +
gensrc/thrift/AgentService.thrift | 1 +
gensrc/thrift/Exprs.thrift | 14 +-
gensrc/thrift/FrontendService.thrift | 1 +
gensrc/thrift/PaloInternalService.thrift | 10 +-
gensrc/thrift/PlanNodes.thrift | 30 +-
gensrc/thrift/Types.thrift | 5 +
regression-test/conf/regression-conf.groovy | 12 +-
.../backup_restore/test_seq_map_backup_restore.out | 52 +
.../data/datatype_p0/date/test_from_unixtime.out | 70 +
.../sql-functions/doc_date_functions_test.out | 107 ++
.../external_table_p0/hudi/test_hudi_catalog.out | 13 +
.../hudi/test_hudi_full_schema_change.out | 1065 ++++++++++++
.../hudi/test_hudi_incremental.out | 343 ++++
.../data/external_table_p0/hudi/test_hudi_meta.out | 35 +
.../data/external_table_p0/hudi/test_hudi_mtmv.out | 101 ++
.../hudi/test_hudi_olap_rewrite_mtmv.out | 44 +
.../hudi/test_hudi_orc_tables.out} | 10 +-
.../hudi/test_hudi_partition_prune.out | 385 +++++
.../hudi}/test_hudi_rewrite_mtmv.out | 0
.../test_hudi_runtime_filter_partition_pruning.out | 0
.../hudi/test_hudi_schema_change.out | 27 +
.../hudi/test_hudi_schema_evolution.out | 161 ++
.../external_table_p0/hudi/test_hudi_snapshot.out | 401 +++++
.../external_table_p0/hudi/test_hudi_timestamp.out | 31 +
.../hudi/test_hudi_timetravel.out | 121 ++
.../iceberg/test_iceberg_jdbc_catalog.out | 42 +
.../iceberg/test_iceberg_manifest_cache.out | 21 +
.../iceberg/test_iceberg_varbinary.out | 9 +
.../jdbc/test_pg_jdbc_catalog.out | 2 +
.../data/function_p0/test_interval_function.out | 244 +++
.../cdc/test_streaming_mysql_job_exclude.out | 14 +-
...sql_job.out => test_streaming_postgres_job.out} | 0
.../cdc/test_streaming_postgres_job_all_type.out | 39 +
...de.out => test_streaming_postgres_job_priv.out} | 3 +-
.../agg_function/test_regr_sxx.out | 34 +
.../agg_function/test_regr_sxy.out | 34 +
.../agg_function/test_regr_syy.out | 34 +
.../{Map.out => nereids_scalar_fn_map.out} | 8 +
.../data/nereids_p0/join/test_outer_join.out | 5 +
.../operator/test_arithmetic_operators.out | 10 +
.../agg_join_pkfk/agg_join_pkfk.out | 36 +
.../test_having_with_aggregate_function.out | 4 +-
.../infer_set_operator_distinct.out | 154 +-
.../data/nereids_syntax_p0/analyze_agg.out | 190 +++
.../data/nereids_syntax_p0/analyze_repeat.out | 101 ++
.../data/query_p0/cache/condition_cache.out | 68 +-
.../bucket_shuffle_set_operation.out | 119 ++
.../test_quantile_state_function.out | 37 +
.../string_functions/test_string_function.out | 15 +
.../data/rec_cte_p0/rec_cte/rec_cte.out | 953 +++++++++++
.../rec_cte_from_ck_doc/rec_cte_from_ck_doc.out | 29 +
.../rec_cte_from_duckdb_doc.out | 30 +
.../rec_cte_from_mysql_doc.out | 42 +
.../test_seq_map_value_add.out} | 8 +-
.../test_seq_map_value_drop.out} | 9 +-
regression-test/data/search/test_search_escape.out | 46 +
.../data/search/test_search_lucene_mode.out | 86 +
.../tpcds_sf100/noStatsRfPrune/query17.out | 2 +-
.../tpcds_sf100/noStatsRfPrune/query24.out | 2 +-
.../tpcds_sf100/noStatsRfPrune/query25.out | 2 +-
.../tpcds_sf100/noStatsRfPrune/query29.out | 2 +-
.../tpcds_sf100/noStatsRfPrune/query38.out | 81 +-
.../tpcds_sf100/noStatsRfPrune/query39.out | 22 +-
.../tpcds_sf100/noStatsRfPrune/query40.out | 2 +-
.../tpcds_sf100/noStatsRfPrune/query49.out | 6 +-
.../tpcds_sf100/noStatsRfPrune/query5.out | 13 +-
.../tpcds_sf100/noStatsRfPrune/query50.out | 2 +-
.../tpcds_sf100/noStatsRfPrune/query64.out | 4 +-
.../tpcds_sf100/noStatsRfPrune/query72.out | 4 +-
.../tpcds_sf100/noStatsRfPrune/query75.out | 6 +-
.../tpcds_sf100/noStatsRfPrune/query78.out | 6 +-
.../tpcds_sf100/noStatsRfPrune/query80.out | 6 +-
.../tpcds_sf100/noStatsRfPrune/query85.out | 2 +-
.../tpcds_sf100/noStatsRfPrune/query87.out | 81 +-
.../tpcds_sf100/noStatsRfPrune/query93.out | 2 +-
.../tpcds_sf100/no_stats_shape/query17.out | 2 +-
.../tpcds_sf100/no_stats_shape/query24.out | 2 +-
.../tpcds_sf100/no_stats_shape/query25.out | 2 +-
.../tpcds_sf100/no_stats_shape/query29.out | 2 +-
.../tpcds_sf100/no_stats_shape/query38.out | 81 +-
.../tpcds_sf100/no_stats_shape/query39.out | 22 +-
.../tpcds_sf100/no_stats_shape/query40.out | 2 +-
.../tpcds_sf100/no_stats_shape/query49.out | 6 +-
.../tpcds_sf100/no_stats_shape/query5.out | 13 +-
.../tpcds_sf100/no_stats_shape/query50.out | 2 +-
.../tpcds_sf100/no_stats_shape/query64.out | 4 +-
.../tpcds_sf100/no_stats_shape/query72.out | 4 +-
.../tpcds_sf100/no_stats_shape/query75.out | 6 +-
.../tpcds_sf100/no_stats_shape/query78.out | 6 +-
.../tpcds_sf100/no_stats_shape/query80.out | 6 +-
.../tpcds_sf100/no_stats_shape/query85.out | 2 +-
.../tpcds_sf100/no_stats_shape/query87.out | 81 +-
.../tpcds_sf100/no_stats_shape/query93.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query14.out | 4 +-
.../shape_check/tpcds_sf100/rf_prune/query17.out | 4 +-
.../shape_check/tpcds_sf100/rf_prune/query18.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query24.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query25.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query29.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query35.out | 44 +-
.../shape_check/tpcds_sf100/rf_prune/query38.out | 81 +-
.../shape_check/tpcds_sf100/rf_prune/query39.out | 22 +-
.../shape_check/tpcds_sf100/rf_prune/query40.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query49.out | 6 +-
.../shape_check/tpcds_sf100/rf_prune/query5.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query50.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query54.out | 36 +-
.../shape_check/tpcds_sf100/rf_prune/query56.out | 22 +-
.../shape_check/tpcds_sf100/rf_prune/query60.out | 44 +-
.../shape_check/tpcds_sf100/rf_prune/query64.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query72.out | 4 +-
.../shape_check/tpcds_sf100/rf_prune/query75.out | 99 +-
.../shape_check/tpcds_sf100/rf_prune/query78.out | 6 +-
.../shape_check/tpcds_sf100/rf_prune/query80.out | 6 +-
.../shape_check/tpcds_sf100/rf_prune/query85.out | 2 +-
.../shape_check/tpcds_sf100/rf_prune/query87.out | 81 +-
.../shape_check/tpcds_sf100/rf_prune/query91.out | 12 +-
.../shape_check/tpcds_sf100/rf_prune/query93.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query14.out | 4 +-
.../data/shape_check/tpcds_sf100/shape/query17.out | 4 +-
.../data/shape_check/tpcds_sf100/shape/query18.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query24.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query25.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query29.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query35.out | 42 +-
.../data/shape_check/tpcds_sf100/shape/query38.out | 81 +-
.../data/shape_check/tpcds_sf100/shape/query39.out | 22 +-
.../data/shape_check/tpcds_sf100/shape/query40.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query49.out | 6 +-
.../data/shape_check/tpcds_sf100/shape/query5.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query50.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query54.out | 36 +-
.../data/shape_check/tpcds_sf100/shape/query56.out | 22 +-
.../data/shape_check/tpcds_sf100/shape/query60.out | 44 +-
.../data/shape_check/tpcds_sf100/shape/query64.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query72.out | 4 +-
.../data/shape_check/tpcds_sf100/shape/query75.out | 99 +-
.../data/shape_check/tpcds_sf100/shape/query78.out | 6 +-
.../data/shape_check/tpcds_sf100/shape/query80.out | 6 +-
.../data/shape_check/tpcds_sf100/shape/query85.out | 2 +-
.../data/shape_check/tpcds_sf100/shape/query87.out | 81 +-
.../data/shape_check/tpcds_sf100/shape/query91.out | 12 +-
.../data/shape_check/tpcds_sf100/shape/query93.out | 2 +-
.../tpcds_sf1000/bs_downgrade_shape/query54.out | 36 +-
.../data/shape_check/tpcds_sf1000/hint/query17.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query25.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query29.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query38.out | 81 +-
.../data/shape_check/tpcds_sf1000/hint/query39.out | 22 +-
.../data/shape_check/tpcds_sf1000/hint/query40.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query49.out | 6 +-
.../data/shape_check/tpcds_sf1000/hint/query5.out | 13 +-
.../data/shape_check/tpcds_sf1000/hint/query50.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query54.out | 36 +-
.../data/shape_check/tpcds_sf1000/hint/query64.out | 4 +-
.../data/shape_check/tpcds_sf1000/hint/query69.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query72.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query75.out | 99 +-
.../data/shape_check/tpcds_sf1000/hint/query78.out | 6 +-
.../data/shape_check/tpcds_sf1000/hint/query80.out | 6 +-
.../data/shape_check/tpcds_sf1000/hint/query81.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query85.out | 2 +-
.../data/shape_check/tpcds_sf1000/hint/query87.out | 81 +-
.../data/shape_check/tpcds_sf1000/hint/query93.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query17.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query24.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query25.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query29.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query38.out | 81 +-
.../shape_check/tpcds_sf1000/shape/query39.out | 22 +-
.../shape_check/tpcds_sf1000/shape/query40.out | 14 +-
.../shape_check/tpcds_sf1000/shape/query49.out | 6 +-
.../data/shape_check/tpcds_sf1000/shape/query5.out | 13 +-
.../shape_check/tpcds_sf1000/shape/query50.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query54.out | 36 +-
.../shape_check/tpcds_sf1000/shape/query64.out | 4 +-
.../shape_check/tpcds_sf1000/shape/query69.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query72.out | 30 +-
.../shape_check/tpcds_sf1000/shape/query75.out | 99 +-
.../shape_check/tpcds_sf1000/shape/query78.out | 14 +-
.../shape_check/tpcds_sf1000/shape/query80.out | 6 +-
.../shape_check/tpcds_sf1000/shape/query85.out | 2 +-
.../shape_check/tpcds_sf1000/shape/query87.out | 81 +-
.../shape_check/tpcds_sf1000/shape/query93.out | 2 +-
.../runtime_filter/test_pushdown_setop.out | 32 +-
.../data/unique_seq_map_p0/test_unique_seq_map.out | 48 +
.../test_variant_compaction_empty_path_bug.out | 80 +
regression-test/framework/pom.xml | 5 +
.../org/apache/doris/regression/suite/Suite.groovy | 18 +-
.../doris/regression/suite/SuiteCluster.groovy | 4 +
.../pipeline/cloud_p0/conf/be_custom.conf | 2 +
regression-test/pipeline/common/teamcity-utils.sh | 2 +-
.../pipeline/external/conf/regression-conf.groovy | 9 +
.../pipeline/nonConcurrent/conf/be.conf | 2 +
.../nonConcurrent/conf/regression-conf.groovy | 5 +
regression-test/plugins/plugin_planner.groovy | 86 +
.../test_backup_restore_with_view.groovy | 153 ++
.../test_seq_map_backup_restore.groovy | 176 ++
.../test_ingest_seq_map_binlog.groovy | 114 ++
.../cloud_p0/cache/test_file_cache_info.groovy | 5 +
.../different_serialize.groovy} | 14 +-
...eate_partition_and_insert_overwrite_race.groovy | 92 +
.../query_retry/test_retry_be_restart.groovy | 114 ++
.../test_function_signature_all_types.groovy | 2 +-
.../datatype_p0/date/test_from_unixtime.groovy | 96 +-
.../sql-functions/doc_date_functions_test.groovy | 164 +-
.../suites/empty_relation/eliminate_empty.groovy | 4 +
.../hive/test_external_sql_block_rule.groovy | 130 +-
.../hive/test_hive_compress_type.groovy | 2 +-
.../hive/test_parquet_join_runtime_filter.groovy | 175 ++
.../hudi/test_hudi_catalog.groovy | 62 +
.../hudi/test_hudi_full_schema_change.groovy | 114 ++
.../hudi/test_hudi_incremental.groovy | 95 ++
.../external_table_p0/hudi/test_hudi_meta.groovy | 94 +
.../external_table_p0/hudi/test_hudi_mtmv.groovy | 277 +++
.../hudi/test_hudi_olap_rewrite_mtmv.groovy | 121 ++
.../hudi/test_hudi_orc_tables.groovy | 54 +
.../hudi/test_hudi_partition_prune.groovy | 367 ++++
.../hudi/test_hudi_rewrite_mtmv.groovy | 180 ++
...st_hudi_runtime_filter_partition_pruning.groovy | 209 +++
.../hudi/test_hudi_schema_change.groovy | 81 +
.../hudi/test_hudi_schema_evolution.groovy | 126 ++
.../hudi/test_hudi_snapshot.groovy | 109 ++
.../hudi/test_hudi_timestamp.groovy | 88 +
.../hudi/test_hudi_timetravel.groovy | 86 +
.../iceberg_and_internal_nested_namespace.groovy | 44 +-
.../iceberg/iceberg_branch_tag_operate.groovy | 13 +-
.../iceberg/iceberg_schema_change_ddl.groovy | 7 +
.../iceberg/test_iceberg_jdbc_catalog.groovy | 316 ++++
.../iceberg/test_iceberg_manifest_cache.groovy | 119 ++
.../iceberg/test_iceberg_sql_block_rule.groovy | 156 ++
.../iceberg/test_iceberg_varbinary.groovy | 12 +
.../paimon/test_paimon_sql_block_rule.groovy | 141 ++
.../test_external_table_update_time.groovy | 61 +
.../function_p0/test_interval_function.groovy | 267 +++
.../test_inverted_index_collection_stats.groovy | 77 +
.../cdc/test_streaming_mysql_job.groovy | 2 +-
.../cdc/test_streaming_mysql_job_all_type.groovy | 2 +-
.../test_streaming_mysql_job_create_alter.groovy | 2 +-
.../cdc/test_streaming_mysql_job_dup.groovy | 2 +-
.../cdc/test_streaming_mysql_job_exclude.groovy | 106 +-
.../cdc/test_streaming_mysql_job_priv.groovy | 2 +-
.../cdc/test_streaming_mysql_job_restart_fe.groovy | 2 +-
...b.groovy => test_streaming_postgres_job.groovy} | 88 +-
.../test_streaming_postgres_job_all_type.groovy | 143 ++
...oovy => test_streaming_postgres_job_dup.groovy} | 45 +-
.../cdc/test_streaming_postgres_job_priv.groovy | 150 ++
.../test_routine_load_job_info_system_table.groovy | 5 +
.../routine_load/test_show_routine_load.groovy | 21 +
.../agg_function/test_regr_sxx.groovy | 107 ++
.../agg_function/test_regr_sxy.groovy | 106 ++
.../agg_function/test_regr_syy.groovy | 107 ++
.../{Map.groovy => nereids_scalar_fn_map.groovy} | 21 +
.../nereids_p0/aggregate/agg_error_msg.groovy | 8 +-
.../suites/nereids_p0/aggregate/aggregate.groovy | 2 +-
.../suites/nereids_p0/join/test_outer_join.groovy | 29 +-
.../operator/test_arithmetic_operators.groovy | 3 +
.../test_date_function_v2.groovy | 4 +-
.../agg_join_pkfk/agg_join_pkfk.groovy | 63 +
.../constant_propagation.groovy | 2 +-
.../test_having_with_aggregate_function.groovy | 13 +-
.../infer_set_operator_distinct.groovy | 3 +
.../union_all_compensate.groovy | 6 +-
.../partition_curd_union_rewrite.groovy | 6 +-
.../suites/nereids_syntax_p0/analyze_agg.groovy | 116 +-
.../suites/nereids_syntax_p0/analyze_repeat.groovy | 178 ++
.../order_by_bind_priority.groovy | 4 +-
.../nereids_tpch_p0/tpch/push_topn_to_agg.groovy | 5 +-
.../suites/query_p0/cache/condition_cache.groovy | 667 ++++----
.../grouping_sets/test_grouping_sets.groovy | 2 +-
.../suites/query_p0/runtimefilterV2/rfv2.groovy | 3 +
.../bucket_shuffle_set_operation.groovy | 130 ++
.../test_quantile_state_function.groovy | 82 +
.../string_functions/test_string_function.groovy | 1 +
.../suites/rec_cte_p0/rec_cte/rec_cte.groovy | 271 +++
.../rec_cte_from_ck_doc/rec_cte_from_ck_doc.groovy | 144 ++
.../rec_cte_from_duckdb_doc.groovy | 185 ++
.../rec_cte_from_mysql_doc.groovy | 140 ++
.../column_attribute_null_test.groovy | 94 +
.../recursive_cte/complex_rec_cte_test.groovy | 478 ++++++
.../create_and_insert_select_test.groovy | 140 ++
.../suites/recursive_cte/mtmv_and_cte_test.groovy | 88 +
.../suites/recursive_cte/mv_and_cte_test.groovy | 88 +
.../suites/recursive_cte/no_data_test.groovy | 77 +
.../recursive_cte/recursive_100_number_test.groovy | 106 ++
.../recursive_cte_exception_test.groovy | 216 +++
.../same_data_type_recursive_test.groovy | 430 +++++
.../schema_change_p0/test_seq_map_value_add.groovy | 272 +++
.../test_seq_map_value_drop.groovy | 77 +
.../test_seq_map_value_modify.groovy | 43 +
.../test_seq_map_value_rename.groovy | 47 +
.../test_search_default_field_operator.groovy | 48 +-
.../suites/search/test_search_escape.groovy | 189 ++
.../test_search_inverted_is_null_pushdown.groovy | 74 +
.../suites/search/test_search_lucene_mode.groovy | 250 +++
.../suites/shape_check/tpcds_sf100/load.groovy | 510 +++---
.../suites/shape_check/tpcds_sf1000/load.groovy | 501 +++---
.../sql_block_rule_p0/test_sql_block_rule.groovy | 6 +-
.../lazy_materialize/global_rowid_nullable.groovy | 105 ++
.../unique_seq_map_p0/test_unique_seq_map.groovy | 566 ++++++
.../ddl/orders_seq_map_create.sql | 20 +
.../unique_seq_map_p2/ddl/orders_seq_map_load.sql | 6 +
.../suites/unique_seq_map_p2/three/load.groovy | 66 +
.../test_variant_compaction_empty_path_bug.groovy | 142 ++
1148 files changed, 54365 insertions(+), 15181 deletions(-)
create mode 100644 be/src/pipeline/exec/rec_cte_anchor_sink_operator.cpp
create mode 100644 be/src/pipeline/exec/rec_cte_anchor_sink_operator.h
create mode 100644 be/src/pipeline/exec/rec_cte_scan_operator.h
create mode 100644 be/src/pipeline/exec/rec_cte_sink_operator.cpp
create mode 100644 be/src/pipeline/exec/rec_cte_sink_operator.h
create mode 100644 be/src/pipeline/exec/rec_cte_source_operator.cpp
create mode 100644 be/src/pipeline/exec/rec_cte_source_operator.h
create mode 100644 be/src/pipeline/rec_cte_shared_state.h
create mode 100644 be/src/runtime/task_execution_context.cpp
create mode 100644 be/src/vec/core/hybrid_sorter.h
delete mode 100644 be/src/vec/exec/format/generic_reader.cpp
create mode 100644 be/src/vec/functions/function_interval.cpp
create mode 100644 be/test/util/jni_util_test.cpp
create mode 100644 be/test/vec/function/function_quantile_state_test.cpp
create mode 100644 cloud/cmake/install_fdb.cmake
create mode 100644 cloud/test/recycler_batch_delete_test.cpp
create mode 100644
docker/thirdparties/docker-compose/hive/scripts/create_preinstalled_scripts/run84.hql
create mode 100644
docker/thirdparties/docker-compose/hive/scripts/preinstalled_data/parquet_table/runtime_filter_dim_small/dim_small.parquet
create mode 100644
docker/thirdparties/docker-compose/hive/scripts/preinstalled_data/parquet_table/runtime_filter_fact_big/fact_big.parquet
create mode 100644 docker/thirdparties/docker-compose/hudi/README.md
delete mode 100644 docker/thirdparties/docker-compose/hudi/hadoop.env
create mode 100644 docker/thirdparties/docker-compose/hudi/hudi.env.tpl
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/base.properties
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/dfs-source.properties
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/hoodie-incr.properties
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/hoodie-schema.avsc
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/kafka-source.properties
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/log4j2.properties
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/schema.avsc
delete mode 100644
docker/thirdparties/docker-compose/hudi/scripts/config/spark-defaults.conf
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/01_config_and_database.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/02_create_user_activity_log_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/03_create_orc_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/04_create_time_travel_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/05_create_partition_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/06_create_type_partition_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/07_create_schema_change_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/08_create_full_schema_change_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/09_create_schema_evolution_tables.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/10_create_timestamp_table.sql
create mode 100644
docker/thirdparties/docker-compose/hudi/scripts/create_preinstalled_scripts/hudi/11_create_mtmv_tables.sql
create mode 100755 docker/thirdparties/docker-compose/hudi/scripts/init.sh
delete mode 100755
docker/thirdparties/docker-compose/hudi/scripts/run_sync_tool.sh
delete mode 100755
docker/thirdparties/docker-compose/hudi/scripts/setup_demo_container_adhoc_1.sh
delete mode 100755
docker/thirdparties/docker-compose/hudi/scripts/setup_demo_container_adhoc_2.sh
copy fe/fe-core/src/main/java/org/apache/doris/catalog/{Replica.java =>
LocalReplica.java} (55%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/catalog/LocalTablet.java
copy
fe/fe-core/src/main/java/org/apache/doris/catalog/{TabletInvertedIndex.java =>
LocalTabletInvertedIndex.java} (88%)
copy
regression-test/suites/nereids_rules_p0/fill_up_missing_slots/test_having_with_aggregate_function.groovy
=>
fe/fe-core/src/main/java/org/apache/doris/catalog/RecursiveCteTempTable.java
(61%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/cloud/catalog/CloudTabletInvertedIndex.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/common/util/ColumnsUtil.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/common/util/UncloseableScheduledExecutorService.java
copy regression-test/plugins/plugin_planner.groovy =>
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/IcebergJdbcExternalCatalog.java
(64%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/cache/ContentFileEstimator.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/cache/IcebergManifestCache.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/cache/IcebergManifestCacheLoader.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/cache/ManifestCacheKey.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/cache/ManifestCacheValue.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/profile/PaimonMetricRegistry.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/profile/PaimonScanMetricsReporter.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/property/metastore/IcebergJdbcMetaStoreProperties.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/expression/rules/SimplifyTimeFieldFromUnixtime.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/implementation/LogicalRecursiveCteRecursiveChildToPhysicalRecursiveCteRecursiveChild.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/implementation/LogicalRecursiveCteScanToPhysicalRecursiveCteScan.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/implementation/LogicalRecursiveCteToPhysicalRecursiveCte.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/RegrSxx.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/RegrSxy.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/RegrSyy.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{generator/ExplodeJsonArrayInt.java
=> scalar/HourFromUnixtime.java} (61%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Interval.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{generator/ExplodeJsonArrayInt.java
=> scalar/MicrosecondFromUnixtime.java} (60%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{generator/ExplodeJsonArrayInt.java
=> scalar/MinuteFromUnixtime.java} (61%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{generator/ExplodeJsonArrayStringOuter.java
=> scalar/QuantileStateFromBase64.java} (56%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{generator/ExplodeJsonArrayInt.java
=> scalar/QuantileStateToBase64.java} (56%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/{generator/ExplodeJsonArrayInt.java
=> scalar/SecondFromUnixtime.java} (61%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{DateFormat.java
=> TimeFormat.java} (73%)
copy fe/fe-core/src/main/java/org/apache/doris/{job/common/DataSourceType.java
=> nereids/trees/plans/algebra/Except.java} (87%)
copy fe/fe-core/src/main/java/org/apache/doris/{job/common/DataSourceType.java
=> nereids/trees/plans/algebra/Intersect.java} (86%)
copy
regression-test/suites/nereids_rules_p0/fill_up_missing_slots/test_having_with_aggregate_function.groovy
=>
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/algebra/RecursiveCte.java
(62%)
copy
fs_brokers/cdc_client/src/main/java/org/apache/doris/cdcclient/source/factory/DataSource.java
=>
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/algebra/ShuffleType.java
(80%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/distribute/worker/job/UnassignedRecursiveCteScanJob.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalRecursiveCte.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalRecursiveCteRecursiveChild.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalRecursiveCteScan.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/{PhysicalUnion.java
=> PhysicalRecursiveCte.java} (65%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalRecursiveCteRecursiveChild.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalRecursiveCteScan.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/planner/DistributionMode.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/planner/RecursiveCteNode.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/planner/RecursiveCteScanNode.java
create mode 100644
fe/fe-core/src/main/java/org/apache/iceberg/DeleteFileIndex.java
create mode 100644
fe/fe-core/src/main/java/software/amazon/awssdk/core/client/builder/SdkDefaultClientBuilder.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/catalog/CatalogRecycleBinTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/FileSplitterTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/datasource/property/metastore/IcebergJdbcMetaStorePropertiesTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/mv/MTMVCacheTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/expression/SimplifyTimeFieldFromUnixtimeTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/CTEInlineTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/MergeAggregateTest.java
copy
regression-test/suites/nereids_rules_p0/fill_up_missing_slots/test_having_with_aggregate_function.groovy
=>
fe/fe-core/src/test/java/org/apache/doris/nereids/trees/expressions/literal/IntervalTest.java
(62%)
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/util/TestHelper.java
create mode 100644
fs_brokers/cdc_client/src/main/java/org/apache/doris/cdcclient/source/reader/JdbcIncrementalSourceReader.java
create mode 100644
fs_brokers/cdc_client/src/main/java/org/apache/doris/cdcclient/source/reader/postgres/PostgresSourceReader.java
create mode 100644
fs_brokers/cdc_client/src/main/java/org/apache/flink/cdc/connectors/postgres/source/PostgresConnectionPoolFactory.java
create mode 100644
regression-test/data/backup_restore/test_seq_map_backup_restore.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_catalog.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_full_schema_change.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_incremental.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_meta.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_mtmv.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_olap_rewrite_mtmv.out
copy
regression-test/data/{job_p0/streaming_job/cdc/test_streaming_mysql_job_exclude.out
=> external_table_p0/hudi/test_hudi_orc_tables.out} (56%)
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_partition_prune.out
copy regression-test/data/{external_table_p2/hudi/hudi_mtmv =>
external_table_p0/hudi}/test_hudi_rewrite_mtmv.out (100%)
copy regression-test/data/{external_table_p2 =>
external_table_p0}/hudi/test_hudi_runtime_filter_partition_pruning.out (100%)
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_schema_change.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_schema_evolution.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_snapshot.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_timestamp.out
create mode 100644
regression-test/data/external_table_p0/hudi/test_hudi_timetravel.out
create mode 100644
regression-test/data/external_table_p0/iceberg/test_iceberg_jdbc_catalog.out
create mode 100644
regression-test/data/external_table_p0/iceberg/test_iceberg_manifest_cache.out
create mode 100644 regression-test/data/function_p0/test_interval_function.out
copy
regression-test/data/job_p0/streaming_job/cdc/{test_streaming_mysql_job.out =>
test_streaming_postgres_job.out} (100%)
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_all_type.out
copy
regression-test/data/job_p0/streaming_job/cdc/{test_streaming_mysql_job_exclude.out
=> test_streaming_postgres_job_priv.out} (91%)
create mode 100644
regression-test/data/nereids_function_p0/agg_function/test_regr_sxx.out
create mode 100644
regression-test/data/nereids_function_p0/agg_function/test_regr_sxy.out
create mode 100644
regression-test/data/nereids_function_p0/agg_function/test_regr_syy.out
rename regression-test/data/nereids_function_p0/scalar_function/{Map.out =>
nereids_scalar_fn_map.out} (99%)
create mode 100644
regression-test/data/nereids_rules_p0/agg_join_pkfk/agg_join_pkfk.out
create mode 100644 regression-test/data/nereids_syntax_p0/analyze_repeat.out
create mode 100644
regression-test/data/query_p0/set_operations/bucket_shuffle_set_operation.out
create mode 100644
regression-test/data/query_p0/sql_functions/quantile_state_functions/test_quantile_state_function.out
create mode 100644 regression-test/data/rec_cte_p0/rec_cte/rec_cte.out
create mode 100644
regression-test/data/rec_cte_p0/rec_cte_from_ck_doc/rec_cte_from_ck_doc.out
create mode 100644
regression-test/data/rec_cte_p0/rec_cte_from_duckdb_doc/rec_cte_from_duckdb_doc.out
create mode 100644
regression-test/data/rec_cte_p0/rec_cte_from_mysql_doc/rec_cte_from_mysql_doc.out
copy
regression-test/data/{job_p0/streaming_job/cdc/test_streaming_mysql_job_exclude.out
=> schema_change_p0/test_seq_map_value_add.out} (58%)
copy
regression-test/data/{job_p0/streaming_job/cdc/test_streaming_mysql_job_exclude.out
=> schema_change_p0/test_seq_map_value_drop.out} (62%)
create mode 100644 regression-test/data/search/test_search_escape.out
create mode 100644 regression-test/data/search/test_search_lucene_mode.out
create mode 100644
regression-test/data/unique_seq_map_p0/test_unique_seq_map.out
create mode 100644
regression-test/data/variant_p0/test_variant_compaction_empty_path_bug.out
create mode 100644
regression-test/suites/backup_restore/test_seq_map_backup_restore.groovy
create mode 100644
regression-test/suites/ccr_syncer_p0/test_ingest_seq_map_binlog.groovy
rename
regression-test/suites/cloud_p0/{diffrent_serialize/diffrent_serialize.groovy
=> different_serialize/different_serialize.groovy} (81%)
create mode 100644
regression-test/suites/cloud_p0/partition/test_create_partition_and_insert_overwrite_race.groovy
create mode 100644
regression-test/suites/cloud_p0/query_retry/test_retry_be_restart.groovy
create mode 100644
regression-test/suites/external_table_p0/hive/test_parquet_join_runtime_filter.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_catalog.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_full_schema_change.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_incremental.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_meta.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_mtmv.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_olap_rewrite_mtmv.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_orc_tables.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_partition_prune.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_rewrite_mtmv.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_runtime_filter_partition_pruning.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_schema_change.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_schema_evolution.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_snapshot.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_timestamp.groovy
create mode 100644
regression-test/suites/external_table_p0/hudi/test_hudi_timetravel.groovy
create mode 100644
regression-test/suites/external_table_p0/iceberg/test_iceberg_jdbc_catalog.groovy
create mode 100644
regression-test/suites/external_table_p0/iceberg/test_iceberg_manifest_cache.groovy
create mode 100644
regression-test/suites/external_table_p0/iceberg/test_iceberg_sql_block_rule.groovy
create mode 100644
regression-test/suites/external_table_p0/paimon/test_paimon_sql_block_rule.groovy
create mode 100644
regression-test/suites/external_table_p0/test_external_table_update_time.groovy
create mode 100644
regression-test/suites/function_p0/test_interval_function.groovy
create mode 100644
regression-test/suites/inverted_index_p0/test_inverted_index_collection_stats.groovy
copy
regression-test/suites/job_p0/streaming_job/cdc/{test_streaming_mysql_job.groovy
=> test_streaming_postgres_job.groovy} (65%)
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_all_type.groovy
copy
regression-test/suites/job_p0/streaming_job/cdc/{test_streaming_mysql_job_dup.groovy
=> test_streaming_postgres_job_dup.groovy} (63%)
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_priv.groovy
create mode 100644
regression-test/suites/nereids_function_p0/agg_function/test_regr_sxx.groovy
create mode 100644
regression-test/suites/nereids_function_p0/agg_function/test_regr_sxy.groovy
create mode 100644
regression-test/suites/nereids_function_p0/agg_function/test_regr_syy.groovy
rename regression-test/suites/nereids_function_p0/scalar_function/{Map.groovy
=> nereids_scalar_fn_map.groovy} (97%)
create mode 100644
regression-test/suites/nereids_rules_p0/agg_join_pkfk/agg_join_pkfk.groovy
create mode 100644
regression-test/suites/nereids_syntax_p0/analyze_repeat.groovy
create mode 100644
regression-test/suites/query_p0/set_operations/bucket_shuffle_set_operation.groovy
create mode 100644
regression-test/suites/query_p0/sql_functions/quantile_state_functions/test_quantile_state_function.groovy
create mode 100644 regression-test/suites/rec_cte_p0/rec_cte/rec_cte.groovy
create mode 100644
regression-test/suites/rec_cte_p0/rec_cte_from_ck_doc/rec_cte_from_ck_doc.groovy
create mode 100644
regression-test/suites/rec_cte_p0/rec_cte_from_duckdb_doc/rec_cte_from_duckdb_doc.groovy
create mode 100644
regression-test/suites/rec_cte_p0/rec_cte_from_mysql_doc/rec_cte_from_mysql_doc.groovy
create mode 100644
regression-test/suites/recursive_cte/column_attribute_null_test.groovy
create mode 100644
regression-test/suites/recursive_cte/complex_rec_cte_test.groovy
create mode 100644
regression-test/suites/recursive_cte/create_and_insert_select_test.groovy
create mode 100644
regression-test/suites/recursive_cte/mtmv_and_cte_test.groovy
create mode 100644 regression-test/suites/recursive_cte/mv_and_cte_test.groovy
create mode 100644 regression-test/suites/recursive_cte/no_data_test.groovy
create mode 100644
regression-test/suites/recursive_cte/recursive_100_number_test.groovy
create mode 100644
regression-test/suites/recursive_cte/recursive_cte_exception_test.groovy
create mode 100644
regression-test/suites/recursive_cte/same_data_type_recursive_test.groovy
create mode 100644
regression-test/suites/schema_change_p0/test_seq_map_value_add.groovy
create mode 100644
regression-test/suites/schema_change_p0/test_seq_map_value_drop.groovy
create mode 100644
regression-test/suites/schema_change_p0/test_seq_map_value_modify.groovy
create mode 100644
regression-test/suites/schema_change_p0/test_seq_map_value_rename.groovy
create mode 100644 regression-test/suites/search/test_search_escape.groovy
create mode 100644
regression-test/suites/search/test_search_inverted_is_null_pushdown.groovy
create mode 100644 regression-test/suites/search/test_search_lucene_mode.groovy
create mode 100644
regression-test/suites/topn_optimize/lazy_materialize/global_rowid_nullable.groovy
create mode 100644
regression-test/suites/unique_seq_map_p0/test_unique_seq_map.groovy
create mode 100644
regression-test/suites/unique_seq_map_p2/ddl/orders_seq_map_create.sql
create mode 100644
regression-test/suites/unique_seq_map_p2/ddl/orders_seq_map_load.sql
create mode 100644 regression-test/suites/unique_seq_map_p2/three/load.groovy
create mode 100644
regression-test/suites/variant_p0/test_variant_compaction_empty_path_bug.groovy
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]