This is an automated email from the ASF dual-hosted git repository.
dataroaring pushed a change to branch mor_value_predicate_pushdown_control
in repository https://gitbox.apache.org/repos/asf/doris.git
from dbfbb499d23 [feature](scan) Add read_mor_as_dup_tables session
variable to read MOR tables without merge
add 14c7b204dcb [fix](predicate) Avoid recomputing predicates (#60484)
add 705ca19d56c [fix](agg) Fix local shuffle before agg (#60494)
add 2b0b87be27e [fix](inverted index) Fix empty string MATCH on keyword
index returning wrong results (#60500)
add e33e2b05e4f [chore](ci)Delete sonar cloud (#60517)
add f39bb99174e [fix](build) fix duplicate symbol errors when compiling BE
UT with Clang (#60504)
add 019adf8431c [fix](nereids)
PhysicalDictionarySink.resetLogicalProperties() does not reset logical
properties properly (#60495)
add b633fbe899a [enhance](memtable) support dynamic modification of flush
thread pool size (#60423)
add e1a7abee9b4 [enhance](load) only set brokerLoadBatchSize when
enableMemtableOnSinkNode is true (#60301)
add d655b4bd76c [Improve](StreamingJob) add max_filter_ratio and strict
mode for mysql/pg streaming job (#60473)
add cbcbb04107a [fix](workload policy)query time based be policy not work
due to wrong finish_time_ (#60456)
add acc2a8fb213 [regression-test](variant) disable doc mode in
test_variant_count_on_index_fault_injection (#60518)
add 6031d3741db [fix](nereids)EliminateGroupByKeyByUniform should replace
exprId for alias (#60020)
add 5660f111cd6 [fix](translator) fix set operation compute wrong result
(#60525)
add 5275e0e386b [Feature](join) support LEFT_SEMI_DIRECT_RETURN_OPT
(#59832)
add e010d8ddbca [enhancement](filecache) add filesystem leak cleaner
(#59269)
add 00b4c7fd7a2 [Improve](StreamingJob) add more metrics to observe the
streaming job (#60493)
add 4624f23cb0b [fix](case) Fix some docker case run in ci (#60087)
add 539a1a4277a [fix](topn) fix AcceptNullPredicate adding back all null
rows instead of only those in original bitmap (#60537)
add f26b21d5ce4 [fix](test) fix p2 export cases (#60333)
add 3af779561eb [fix](test) Remove wrapper_field dependency from unit
tests (#60530)
add 2711e4cd3f7 [chore](be) remove some unused code (#60585)
add 3c106751336 [fix](test) replace hardcoded IP with variable in group
commit redirect test (#60573)
add 6285f1b33c1 [fix](jni) fix JNI logging by migrating to log4j2 with
proper configuration (#60584)
add 3afa26723d9 [chore](thirdparty) Upgrade snappy and xxhash (#60519)
add f47fef71c6d [Fix](func) fix element_at return err when short-circuit
evaluation passes empty input (#60570)
add c44ef2b3336 [util](column)Use ColumnView to automatically handle
Nullable and Const. (#60575)
add 738b7826d3b [feat](cloud) Enable split config by default (#60491)
add dca4439859c [fix](cloud) Add error detail in tablet key get failure
message (#60492)
add 7082e74704a [Improve](streaming job) support postgres partition table
sync (#60560)
add 6bf54a8ebda [Enhancement](Recycler) Add bvar metrics for operation
logs (#60520)
add 198aa59b8b3 [Fix](udf) fix frontends udf return rows incompatible with
show frontends command (#60211)
add 95cfae9ff33 [Enhancement](test) Add tests for Python UDF (#60499)
add 4815b16b8e1 [Fix](Agg) Fix the problem that add_batch cannot handle
rows with null value correctly (#60398)
add d18bd5c5b8d [Feature](function) Support more INTERVAL time-unit
(#60347)
add 32fd98ea66d [Fix](regression-test) fix low wal disk test cast failure
issues (#60408)
add afb1da46867 [Fix](RestCatalog)When vendor credentials are configured
at the catalog level, S3-compatible storage must also support temporary
credentials (#60232)
add 3ad74c0c930 [feature](variant) schema template auto cast (#60362)
add d95d6476a58 [Improvement](serialize) use streamvbyte_encode in
DataTypeFixedLengthObject::serialize (#60526)
add ed35cd8143d [fix](s3)Use anonymous credentials for S3-compatible
storage when credentials are absent (#60443)
add 555138ba154 [opt](build) add download-prebuild-thirdparty.sh (#60349)
add 09cd7950dec [compile](fix) thirdparty compile under clang (#60359)
add 6d1688b0260 [fix](compile) fix MacOS compile backend failed (#60582)
add 5cad9034602 [fix](test) fix unstable p2 cases (#60621)
add 2a179353fdb [test](hive-writer) Fix side-effect of
test_hive_staging_dir test. (#60599)
add 78a7b220908 [Fix](TabletHotspot) Fix race in
`TabletHotspot::get_top_n_hot_partition` (#60607)
add 853f5b138f0 [Bug](rec-cte) reset _require_bucket_distribution in
PipelineFragmentContext::rebuild (#60618)
add 5eddc6ce2be [opt](variant) Optimize VARIANT doc mode load/compaction
and add benchmarks (#60511)
add 33d9168431a [fix](cloud) Fix SingleFlight deadlock in
CloudTabletMgr::get_tablet during warmup (#60622)
add 32ec896ec15 [fix](agg) Fix grouping function handling and
repeatSlotIdList calculation in DecomposeRepeatWithPreAggregation (#60091)
add a48802b3913 [feat](nereids)support choosing physical plan containing
specific group IDs (#60603)
add 3bf3bc2ec69 [fix](datetime) throw exception for date_floor/ceil
instead of return NULL (#60633)
add 22a2d5a64bc [Fix](dictionary) Fix empty InsertIntoDictionaryCommand
originSql (#60631)
add f6af3e84929 [Fix](datetime) fix %f (microseconds) format specifier in
str_to_date (#60632)
add 0b60272414a [Optimize](NestedLoopJoin) if the build side is small,
iterate the build side first. (#60179)
add 26e98e92fb4 [regression](streamingjob) add log for pg case (#60624)
add 1227bc79e48 [Chore](Variant) set enable_variant_schema_auto_cast
default true and enhance tests (#60628)
add 939b1f9097b [refactor](search) Refactor SearchDslParser to
single-phase ANTLR parsing (#60635)
add 0ec2d7aa82e [opt](profile) change some metrics' level in profile
(#60294)
add 2658f896441 [chore](thirdparty) Integrate paimon-cpp into thirdparty
build system (#60296)
add 0a7e8673cf6 [fix](nereids) Fix incorrect isDomain parsing in SET
PASSWORD statement (#60565)
add 4f8e66165df [fix](expr)Ensure short-circuit expressions never receive
a count of 0 (#60594)
add 5446faac8d1 [bugfix](k8s) fix log output for K8S environment in cloud
and add unit tests (#60490)
add 46f373cea0d [bugfix](k8s) fix Log4jConfig class loading before
Config.init in console mode (#60531)
add f36d2319277 [fix](cloud) Fix misleading CommittedVersion display in
show partitions (#60623)
add 8f5f928797f [opt](nereids)pass ConnectContext to
canUseNereidsDistributePlanner method instead of call ConnectContext.get()
(#60529)
add 8ade19fa8d2 [fix](iceberg) fix unstable iceberg case (#60646)
add 2c851489101 [refactor](paimon) Per-catalog Paimon metadata cache with
two-level table+snapshot structure (#60478)
add 799057112d5 [fix](cloud) Fix warmup inflight count not decremented on
early return (#60480)
add a277f74a366 [enhance](variant) add condition cache for variant type
(#60532)
add b01fef51ed3 [refactor](scan) extract scanner profile update logic and
update on eos (#60615)
add 961f70ef6fd [Chore](runtime-filter) replace DCHECK/CHECK with Error
Status or Exceptions (#60563)
add d489a79648a (tools) Add show_segment_data operation to meta_tool
(#60608)
add 3266935ff06 [fix](parquet)fix parquet reader lazy materialization
cannot filter. (#60474)
add 98ca2566d0e [Enhancement](file-cache) Add fine-grained control for
compaction file cache (#60609)
add 1cdd04ce32e [opt](txn) Per-transaction locking and parallel publish
for DatabaseTransactionMgr (#59990)
add fa24ad1b896 [improve](log) Add segment file info when bitshuffle page
corruption detected (#60547)
add a013e7e0595 [enhance](auth)Hidden the token info during StreamLoad in
BE info (#60656)
add 6f56efbe679 [fix](regression) Fix case :
test_routine_load_adaptive_param (#60673)
add 71139d705e2 [fix](move-memtable) fix StreamWrite EINVAL error when
report tablet load info (#60688)
add 52fa0e79d98 [fix](regression-case) Fix routineload case :
test_routine_load_timeout_value (#60664)
add 73e75231cce [refine](function)In functions, ensure that an empty input
column returns an empty column. (#60660)
add e66fe271bef [Feature](execution) support adjuct filter order by cost
(#60079)
add 66282a5b77e [fix](cloud) add metrics for FE to MS rpc (#60574)
add 1f5d7c335c8 [fix](function) Fix array_join to handle non-constant
columns. (#60612)
add 4e61e0bcfae [conf](passthrough) add ForcePassthrough SessionVariable
(#60671)
add 8229f6645f6 [opt](deps) change paimon-cpp download to tag (#60694)
add d3a5d6bd272 [fix](filecache) fix disk size calculation in
block_file_cache_factory (#60644)
add 00bdff9381f [fix](cloud) Fix CloudRowsetWriter vtable use-after-free
in delete bitmap task (#60528)
add 77ef840d863 [fix](client) Handle empty S3 list page with more results
in concurrent deletion scenario (#60332)
add b2f30e8602b [feat](libhdfs3) support dfs.client.use.datanode.hostname
for libhdfs3 (#59915)
add 025af0cdf86 [Feature](paimon) Refactor Paimon system tables to use
native table execution path (#60556)
add 71fb9849e57 [Opt](cloud) Add segment prefetcher (#59482)
add e13d3147985 [feat](maxcompute) support create/drop table operations
(#60702)
add c5606c5eb5b [fix](thirdparty) add Thrift_VERSION fallback in
paimon-cpp arrow patch (#60711)
add 5699e269ca4 [Feature](func) Support function PREVIOUS_DAY (#60680)
add 97eb6307ac2 [opt](optimizer)force join commute optimize even
memoMaxGroupExpressionSize exceed (#58746)
add c422f2a78f1 [fix](compile) tmp work around (#60725)
add 90ffecd7fb9 [Exec](performance) change colocate execution parallel num
(#60677)
add c137bd2088a [fix](runtime) Clear query_ctx_map_delay_delete in
FragmentMgr::stop() to avoid UB (#60718)
add 6f2b7dac320 [fix](cte) unnest subquery before RewriteCteChildren
(#60717)
add eccb882b7c6 [fix](custom analyzer) Fix basic and icu tokenizer can not
be customized (#60506)
add 73404dfe9ec [opt](nereids) support order by clause in create table
(#60684)
add 67019ff97ed [fix](topnFilter)Fix TopN filter probe expressions to wrap
nullable slots when pushed through outer joins. (#59074)
add 5cbe1b49e32 [feature](cloud) Support compaction read-write separation
for cloud mode (#60310)
add 148908f02b6 [Feature](aggregation) support aggregate_function_null_v2
(#60228)
add f7d49d589a5 [Chore](build) fix conflict field id (#60743)
add d563436cf4a [feature](geo) support 3 spatial functions: ST_Distance,
ST_GeometryType, ST_Length (#60170)
add 5a373695d2b [feat](tvf) Support INSERT INTO TVF to export query
results to local/HDFS/S3 files (#60719)
add 9de1c1ceef0 [opt](cloud) Prioritize scheduling the most recently
active tablets in cloud (#59539)
add 598861d2ad9 [fix](compile) fix compile backend on MacOS failed (#60723)
add 588ed1e6c85 [fix](txn) Set transaction status to COMMITTED only after
commit info is fully populated (#60749)
add 0c7d9e72bab [feat](inverted index) skip .nrm generation for
non-tokenized indexes (#60722)
add 4128eb41d2d [fix](search) Make AND/OR/NOT operators case-sensitive in
search DSL (#59747)
add 83562990ff4 [opt](variant) unify doc writer pipeline and index writes
(#60668)
add b5b09c24691 [Enhancement](func) Add fold constant for PREVIOUS_DAY
(#60755)
add c02eedaef86 [fix](local exchange) Do global shuffle for shuffled
join/set operator (#60758)
add 587aecb03c7 [fix](schemachange) fix IndexChangeJob stuck on
WAITING_TXN due to exception (#60754)
add 116fffc2969 [feat](jni-writer) Support JNI-based write framework for
custom writers (#60756)
add 93b174a340c [fix](cloud) Fix disable_auto_compaction property not
taking effect in cloud mode (#60544)
add 48fc0ae2bf8 [Fix](keywords) add composite time units to nonReserved
(#60775)
add b4509371589 [refactor](search) Refactor SearchDslParser to
single-phase ANTLR parsing and fix ES compatibility issues (#60654)
add 9a9b3b27171 [fix](search) Upgrade query type for variant subcolumns
with analyzer-based indexes (#60782)
add f77e7b5f1a8 [fix](search) Fix MATCH_ALL_DOCS query failing in
multi-field search mode (#60784)
add 203a15ce21e [fix](paimon) install paimon-cpp arrow static deps into
isolated dir (#60730)
add 7dcca9db48c [feat](paimon) integrate paimon-cpp reader (#60676)
add 6cd22c9fdcc [feat](search) Support field-grouped query syntax
field:(term1 OR term2) (#60786)
add a396f34e380 [feature](iceberg) support insert into iceberg table with
sort-order (#60540)
add ec31a80c7ff [fix](function)width_bucket did not enforce that the
fourth argument must be a constant. (#60643)
add 001358e8860 [fix](core)Fix a DCHECK failure when short-circuit
evaluation and array_map are used together. (#60693)
add 0fded79654f [fix](local exchange) Fix BUCKET_HASH_SHUFFLE partition
expr (#60764)
add 816e31beccf [fix](cloud) Fix auto-start functionality when
encountering TVF and external queries (#59963)
add 48894b90f61 [fix](cloud) Fix NPE in group commit when backend belongs
to a different cluster (#60652)
add b96933086d1 [bugfix](k8s) fix fe.out not generated when start_fe.sh
--console (#60522)
add b076ae972e9 [feat](query_v2) Add PrefixQuery, PhrasePrefixQuery and
UnionPostings support (#60701)
add 170e2936b77 [fix](iterator) Use explicit output schema in
new_merge_iterator and new_union_iterator (#60772)
add b1fe567275f [feat](audit log) add queue_time_ms in audit_log (#60418)
add 729b9f85b6a [fix](search) Add searcher cache reuse and DSL result
cache for search() function (#60790)
add 7ee1bc437f0 [fix](search) Fix wildcard query on variant subcolumns
returning empty results (#60793)
add ee7bfe38940 [fix](search) Validate mode parameter in search() DSL
options (#60785)
add 579dd1013b5 [Feature] Add FE constant folding for cosine_similarity
and standardize test patterns (#60403)
add fd5c837cffd [feat](authentication): add fe-authentication modules
(api/spi/handler/plugins) (#60407)
add 7a50e54a499 [chore](backup) remove AbstractBackupTableRefClause
(#60801)
add 0744fe7ff86 [fix](load) fix quorum success invalid in
move-memtable-on-sink load path (#60681)
add be0d8e552ef [fix](ann range search) range search prepare failed on
NULL literal (#60564)
add 3e5257f9fa6 [Fix](DDL) Make autoBucket flag modifiable and add
testcases for ALTER TABLE BUCKETS (#60651)
add acc243383ca [feature](bm25) support score range filter pushdown
(min_score semantics) (#60100)
add ca983a83cab [Improvement] add zlib_crc32_fixed (#60735)
add 98a29334989 [feat](maxcompute) Support INSERT INTO for MaxCompute
external catalog tables (#60769)
add 7a26847955d [chore](type) remove useless code in PartialAggType
(#60818)
add eff59f423f3 [fix](search) Use FE-provided analyzer key for multi-index
columns in search() (#60798)
add 1cde086c55d [fix](search) Fix implicit conjunction incorrectly
modifying preceding term in lucene mode (#60814)
add 9111b8fd4f2 [Opt](load) Support using `AES_ENCRYPT` with internal
custom ENCRYPTKEY in stream load and routine load (#60503)
add 8e003e69e00 [Opt](warmup) Limit the download rate of warmup task
(#60180)
add 4c78bad6acc [refactor](zonemap) Refactor zonemap to_string (#60587)
add c20d38dd9fd [Enhancement](udf) SHOW FULL FUNCTION display more
information (#60690)
add 6c07a1c910f [Fix](func) Fixing microsecond_from_unixtime decimal arg
type to DECIMAL(18, 6) (#60829)
add 09bc20fac28 [chore](type) optimize code of AggStateType (#60824)
add 15e32e2c1d7 [feat](doris-catalog) doris cross-cluster insert (#60557)
add 554073e4ca0 [chore](codebase) add code owner for variant dir (#60842)
add 1f2edf39b64 [chore](ci) update mvn to 3.9 (#60827)
add d7ae57000ee [Improvement](memcpy) use assume_aligned to hint aligned
memcpy (#60695)
add 888a0460093 [Fix](regexp) make dot match newline in regexp_fn by
default (#60831)
add e8bc244aa56 [Enhancement](pyudf) add helper command to show more py
info (#60751)
add 53104945146 [fix](local shuffle) fix bucket shuffle + set operation +
local shuffle compute wrong result (#60823)
add 3bf910c795e [Enhancement](pyudf) Support MemTracker in PythonUdf
(#60655)
add 65bb169f9fc [fix](agg) Fix distinct streaming agg (#60851)
add 06bd06c9629 [fix](storage vault) fix Azure Storage Vault endpoint
always using HTTP instead of HTTPS (#60854)
add 1fa90382a8d [opt](jindofs) update jindofs to 6.10.4 and add DlfFileIO
(#60856)
add c37acc1c301 [Fix](nereids) Fix session variable not take effect for
partial update in multi-statement batch (#60803)
add 8961fff814f [fix](auth) delete command improperly detects the LOAD
permission of non target tables (#60837)
add ba816e78acc [Bug](distinct) Fixes off-by-one error in aggregation
limit check (#60828)
add 8eff3d1a908 [fix](cloud) Fix packed file write path bypassing
encryption (#60629)
add e9a016487ba [test](analysis) add comprehensive unit tests for
Expr.toSql() (#60849)
add 0bfacc2b38c Merge branch 'master' into
mor_value_predicate_pushdown_control
No new revisions were added by this update.
Summary of changes:
.github/CODEOWNERS | 1 +
.github/workflows/build-thirdparty.yml | 45 +-
.github/workflows/sonarcloud.yml | 158 --
.licenserc.yaml | 2 +
be/CMakeLists.txt | 135 +-
be/cmake/thirdparty.cmake | 15 +
be/src/agent/be_exec_version_manager.cpp | 16 +-
be/src/agent/be_exec_version_manager.h | 8 +-
be/src/cloud/cloud_cluster_info.cpp | 201 +++
be/src/cloud/cloud_cluster_info.h | 78 +-
be/src/cloud/cloud_meta_mgr.cpp | 39 +-
be/src/cloud/cloud_meta_mgr.h | 6 +
be/src/cloud/cloud_rowset_writer.cpp | 35 +-
be/src/cloud/cloud_tablet.cpp | 10 +
be/src/cloud/cloud_tablet.h | 20 +
be/src/cloud/cloud_tablet_hotspot.cpp | 1 +
be/src/cloud/cloud_tablet_hotspot.h | 2 +
be/src/cloud/cloud_tablet_mgr.cpp | 9 +-
be/src/cloud/config.cpp | 18 +
be/src/cloud/config.h | 21 +
be/src/common/config.cpp | 70 +-
be/src/common/config.h | 72 +-
be/src/exec/rowid_fetcher.h | 1 +
be/src/exec/tablet_info.cpp | 4 +
be/src/exec/tablet_info.h | 4 +
be/src/geo/geo_types.cpp | 371 +++++
be/src/geo/geo_types.h | 26 +-
be/src/http/http_request.cpp | 13 +-
be/src/http/utils.cpp | 1 +
be/src/io/cache/block_file_cache.cpp | 3 +
be/src/io/cache/block_file_cache_downloader.cpp | 48 +-
be/src/io/cache/block_file_cache_factory.cpp | 14 +-
be/src/io/cache/cache_block_meta_store.cpp | 27 +
be/src/io/cache/cache_block_meta_store.h | 3 +
be/src/io/cache/cached_remote_file_reader.cpp | 103 +-
be/src/io/cache/cached_remote_file_reader.h | 15 +-
be/src/io/cache/fs_file_cache_storage.cpp | 771 ++++++++-
be/src/io/cache/fs_file_cache_storage.h | 69 +-
be/src/io/fs/file_writer.h | 4 +
be/src/io/fs/packed_file_writer.h | 3 +
be/src/io/fs/s3_file_reader.cpp | 3 +
be/src/olap/accept_null_predicate.h | 17 +-
be/src/olap/bitmap_filter_predicate.h | 11 +-
be/src/olap/block_column_predicate.cpp | 8 +-
be/src/olap/block_column_predicate.h | 6 +-
be/src/olap/collection_similarity.cpp | 96 +-
be/src/olap/collection_similarity.h | 22 +-
be/src/olap/column_mapping.h | 4 +-
be/src/olap/column_predicate.h | 46 +-
be/src/olap/compaction.cpp | 33 +
be/src/olap/comparison_predicate.h | 52 +-
be/src/olap/field.h | 148 --
be/src/olap/in_list_predicate.h | 24 +-
be/src/olap/memtable_flush_executor.cpp | 29 +-
be/src/olap/memtable_flush_executor.h | 3 +
be/src/olap/null_predicate.h | 14 +-
be/src/olap/olap_common.h | 1 +
be/src/olap/row_cursor.cpp | 92 +-
be/src/olap/row_cursor.h | 80 +-
be/src/olap/rowset/beta_rowset_reader.cpp | 13 +-
be/src/olap/rowset/beta_rowset_reader.h | 10 +
be/src/olap/rowset/beta_rowset_writer.cpp | 17 +-
be/src/olap/rowset/beta_rowset_writer.h | 3 +-
be/src/olap/rowset/rowset_meta.cpp | 8 +-
be/src/olap/rowset/rowset_meta.h | 7 +
be/src/olap/rowset/rowset_writer_context.h | 30 +-
be/src/olap/rowset/segment_v2/bitshuffle_page.h | 8 +-
be/src/olap/rowset/segment_v2/column_reader.cpp | 414 ++---
be/src/olap/rowset/segment_v2/column_reader.h | 62 +-
be/src/olap/rowset/segment_v2/column_writer.cpp | 12 +-
be/src/olap/rowset/segment_v2/column_writer.h | 6 +-
be/src/olap/rowset/segment_v2/index_file_reader.h | 1 +
.../rowset/segment_v2/indexed_column_reader.cpp | 5 +
.../inverted_index/analyzer/analyzer.cpp | 6 +-
.../inverted_index/query_v2/all_query/all_query.h | 49 +-
.../boolean_query/occur_boolean_weight.cpp | 7 +-
.../phrase_prefix_query/phrase_prefix_query.h | 92 ++
.../phrase_prefix_query/phrase_prefix_weight.h | 110 ++
.../prefix_query.h} | 33 +-
.../query_v2/prefix_query/prefix_weight.h | 160 ++
.../query_v2/regexp_query/regexp_weight.h | 4 +-
.../inverted_index/query_v2/union_postings.h | 117 ++
.../rowset/segment_v2/inverted_index_iterator.cpp | 2 +-
.../rowset/segment_v2/inverted_index_query_type.h | 4 +
.../rowset/segment_v2/inverted_index_reader.cpp | 7 +-
.../olap/rowset/segment_v2/inverted_index_reader.h | 62 +-
.../rowset/segment_v2/inverted_index_writer.cpp | 8 +-
be/src/olap/rowset/segment_v2/ordinal_page_index.h | 3 +-
be/src/olap/rowset/segment_v2/page_io.cpp | 4 +
be/src/olap/rowset/segment_v2/segment.cpp | 2 +-
be/src/olap/rowset/segment_v2/segment_iterator.cpp | 143 +-
be/src/olap/rowset/segment_v2/segment_iterator.h | 2 +
.../olap/rowset/segment_v2/segment_prefetcher.cpp | 262 +++
be/src/olap/rowset/segment_v2/segment_prefetcher.h | 154 ++
be/src/olap/rowset/segment_v2/segment_writer.cpp | 20 +-
.../variant/hierarchical_data_iterator.cpp | 33 +
.../variant/hierarchical_data_iterator.h | 5 +
.../segment_v2/variant/variant_column_reader.cpp | 10 +
.../segment_v2/variant/variant_column_reader.h | 5 +
.../variant/variant_column_writer_impl.cpp | 780 +++++++--
.../variant/variant_column_writer_impl.h | 37 +-
.../rowset/segment_v2/vertical_segment_writer.cpp | 20 +-
be/src/olap/rowset/segment_v2/zone_map_index.cpp | 179 +-
be/src/olap/rowset/segment_v2/zone_map_index.h | 37 +-
be/src/olap/schema_change.cpp | 69 +-
be/src/olap/shared_predicate.h | 13 +-
be/src/olap/tablet_reader.cpp | 14 -
be/src/olap/tablet_reader.h | 2 -
be/src/olap/tablet_schema.cpp | 18 +-
be/src/olap/tablet_schema.h | 2 +-
be/src/olap/types.h | 219 ---
be/src/olap/wrapper_field.cpp | 112 --
be/src/olap/wrapper_field.h | 107 --
be/src/pipeline/dependency.h | 10 +-
be/src/pipeline/exec/aggregation_sink_operator.cpp | 13 +-
be/src/pipeline/exec/aggregation_sink_operator.h | 4 +-
.../pipeline/exec/aggregation_source_operator.cpp | 3 -
.../distinct_streaming_aggregation_operator.cpp | 4 +-
.../exec/distinct_streaming_aggregation_operator.h | 10 +-
be/src/pipeline/exec/hashjoin_build_sink.cpp | 11 +
be/src/pipeline/exec/hashjoin_build_sink.h | 12 +
be/src/pipeline/exec/hashjoin_probe_operator.cpp | 13 +-
be/src/pipeline/exec/hashjoin_probe_operator.h | 18 +-
.../pipeline/exec/iceberg_table_sink_operator.cpp | 2 +-
.../pipeline/exec/join/process_hash_table_probe.h | 5 +
.../exec/join/process_hash_table_probe_impl.h | 20 +
...ator.cpp => maxcompute_table_sink_operator.cpp} | 4 +-
.../pipeline/exec/maxcompute_table_sink_operator.h | 86 +
.../exec/nested_loop_join_build_operator.cpp | 14 +-
.../exec/nested_loop_join_build_operator.h | 2 +-
.../exec/nested_loop_join_probe_operator.cpp | 435 +++--
.../exec/nested_loop_join_probe_operator.h | 47 +-
be/src/pipeline/exec/olap_scan_operator.cpp | 36 +-
be/src/pipeline/exec/olap_scan_operator.h | 1 +
be/src/pipeline/exec/operator.cpp | 25 +-
be/src/pipeline/exec/operator.h | 8 +-
.../exec/partitioned_hash_join_probe_operator.h | 3 +
.../exec/partitioned_hash_join_sink_operator.h | 3 +
be/src/pipeline/exec/scan_operator.cpp | 15 +-
be/src/pipeline/exec/set_probe_sink_operator.h | 4 +
be/src/pipeline/exec/set_sink_operator.h | 4 +
.../exec/spill_iceberg_table_sink_operator.cpp | 196 +++
.../exec/spill_iceberg_table_sink_operator.h | 93 ++
.../exec/streaming_aggregation_operator.cpp | 1 -
.../pipeline/exec/streaming_aggregation_operator.h | 5 +-
...nk_operator.cpp => tvf_table_sink_operator.cpp} | 7 +-
be/src/pipeline/exec/tvf_table_sink_operator.h | 87 +
be/src/pipeline/pipeline_fragment_context.cpp | 79 +-
be/src/pipeline/pipeline_fragment_context.h | 11 +-
be/src/runtime/exec_env.h | 6 +
be/src/runtime/exec_env_init.cpp | 65 +-
be/src/runtime/fragment_mgr.cpp | 17 +
be/src/runtime/load_stream.cpp | 4 +
be/src/runtime/primitive_type.h | 8 +-
be/src/runtime/runtime_state.h | 38 +
be/src/runtime/user_function_cache.h | 2 +
be/src/runtime/workload_group/workload_group.cpp | 29 +
be/src/runtime/workload_group/workload_group.h | 3 +
.../workload_group/workload_group_manager.cpp | 7 +
.../workload_group/workload_group_manager.h | 2 +
.../runtime/workload_management/task_controller.h | 11 +-
be/src/runtime_filter/runtime_filter.cpp | 5 +-
be/src/runtime_filter/runtime_filter.h | 15 +-
be/src/runtime_filter/runtime_filter_consumer.cpp | 32 +-
be/src/runtime_filter/runtime_filter_consumer.h | 4 +-
be/src/runtime_filter/runtime_filter_mgr.cpp | 11 +-
be/src/runtime_filter/runtime_filter_producer.cpp | 21 +-
be/src/runtime_filter/runtime_filter_producer.h | 11 +
.../runtime_filter_producer_helper.cpp | 39 +-
.../runtime_filter_producer_helper.h | 2 +
.../runtime_filter_producer_helper_cross.h | 7 +-
be/src/runtime_filter/runtime_filter_selectivity.h | 36 +-
be/src/runtime_filter/runtime_filter_wrapper.cpp | 109 +-
be/src/runtime_filter/runtime_filter_wrapper.h | 18 +
be/src/service/backend_service.cpp | 16 +
be/src/service/backend_service.h | 5 +
be/src/service/doris_main.cpp | 4 +
be/src/tools/meta_tool.cpp | 604 ++++++-
be/src/udf/python/python_env.cpp | 96 ++
be/src/udf/python/python_env.h | 18 +
be/src/udf/python/python_server.cpp | 142 +-
be/src/udf/python/python_server.h | 29 +-
be/src/udf/python/python_server.py | 18 +
be/src/util/concurrency_stats.cpp | 130 ++
be/src/util/concurrency_stats.h | 127 ++
be/src/util/hash_util.hpp | 75 +-
.../vec/aggregate_functions/aggregate_function.h | 58 +-
.../aggregate_function_array_agg.h | 15 -
.../aggregate_functions/aggregate_function_avg.h | 32 +-
.../aggregate_function_bitmap.h | 11 -
.../aggregate_function_bitmap_agg.h | 22 -
.../aggregate_functions/aggregate_function_count.h | 60 +-
.../aggregate_functions/aggregate_function_map.h | 20 -
.../aggregate_function_map_v2.h | 20 -
.../aggregate_function_min_max.h | 54 +-
.../aggregate_functions/aggregate_function_null.h | 4 +-
...unction_null.h => aggregate_function_null_v2.h} | 350 ++--
.../aggregate_functions/aggregate_function_sort.h | 2 +-
.../aggregate_functions/aggregate_function_sum.h | 27 +-
.../aggregate_function_uniq_distribute_key.h | 12 +-
be/src/vec/aggregate_functions/helpers.h | 93 +-
be/src/vec/columns/column.h | 7 +
be/src/vec/columns/column_decimal.cpp | 11 +-
be/src/vec/columns/column_execute_util.h | 101 ++
be/src/vec/columns/column_nothing.h | 2 +-
be/src/vec/columns/column_nullable.cpp | 10 +
be/src/vec/columns/column_nullable.h | 1 +
be/src/vec/columns/column_string.cpp | 14 -
be/src/vec/columns/column_string.h | 17 +-
be/src/vec/columns/column_variant.cpp | 70 +-
be/src/vec/columns/column_variant.h | 4 +-
be/src/vec/columns/column_vector.cpp | 46 +-
be/src/vec/columns/column_vector.h | 1 +
be/src/vec/columns/predicate_column.h | 22 +
be/src/vec/columns/subcolumn_tree.h | 4 +-
be/src/vec/common/cow.h | 7 +-
be/src/vec/common/field_visitors.h | 29 +
be/src/vec/common/hash_table/hash_map_context.h | 41 +-
be/src/vec/common/memcpy_small.h | 8 +-
be/src/vec/common/sort/sorter.cpp | 6 +-
be/src/vec/common/sort/sorter.h | 6 +-
be/src/vec/common/variant_util.cpp | 339 +++-
be/src/vec/common/variant_util.h | 9 +-
be/src/vec/core/field.h | 26 +
be/src/vec/data_types/data_type_factory.hpp | 4 +-
.../data_types/data_type_fixed_length_object.cpp | 91 +-
.../vec/data_types/data_type_fixed_length_object.h | 2 +-
be/src/vec/data_types/data_type_string.h | 2 +-
.../data_types/serde/data_type_bitmap_serde.cpp | 4 +-
.../vec/data_types/serde/data_type_bitmap_serde.h | 4 +-
.../serde/data_type_date_or_datetime_serde.cpp | 11 +-
.../serde/data_type_date_or_datetime_serde.h | 6 +-
.../serde/data_type_datetimev2_serde.cpp | 10 +-
.../data_types/serde/data_type_datetimev2_serde.h | 6 +-
.../data_types/serde/data_type_datev2_serde.cpp | 12 +-
.../vec/data_types/serde/data_type_datev2_serde.h | 6 +-
.../data_types/serde/data_type_decimal_serde.cpp | 30 +-
.../vec/data_types/serde/data_type_decimal_serde.h | 6 +-
.../vec/data_types/serde/data_type_hll_serde.cpp | 4 +-
be/src/vec/data_types/serde/data_type_hll_serde.h | 4 +-
.../vec/data_types/serde/data_type_ipv4_serde.cpp | 9 +-
be/src/vec/data_types/serde/data_type_ipv4_serde.h | 6 +-
.../vec/data_types/serde/data_type_ipv6_serde.cpp | 9 +-
be/src/vec/data_types/serde/data_type_ipv6_serde.h | 6 +-
.../vec/data_types/serde/data_type_jsonb_serde.h | 2 +-
.../data_types/serde/data_type_nullable_serde.cpp | 11 +-
.../data_types/serde/data_type_nullable_serde.h | 6 +-
.../data_types/serde/data_type_number_serde.cpp | 29 +-
.../vec/data_types/serde/data_type_number_serde.h | 8 +-
.../serde/data_type_quantilestate_serde.cpp | 4 +-
.../serde/data_type_quantilestate_serde.h | 4 +-
be/src/vec/data_types/serde/data_type_serde.cpp | 6 +
be/src/vec/data_types/serde/data_type_serde.h | 16 +-
.../data_types/serde/data_type_string_serde.cpp | 19 +-
.../vec/data_types/serde/data_type_string_serde.h | 13 +-
.../vec/data_types/serde/data_type_time_serde.cpp | 4 +-
be/src/vec/data_types/serde/data_type_time_serde.h | 4 +-
.../serde/data_type_timestamptz_serde.cpp | 9 +-
.../data_types/serde/data_type_timestamptz_serde.h | 6 +-
be/src/vec/exec/format/csv/csv_reader.cpp | 2 +-
.../exec/format/parquet/vparquet_group_reader.cpp | 7 +-
be/src/vec/exec/format/table/paimon_cpp_reader.cpp | 319 ++++
be/src/vec/exec/format/table/paimon_cpp_reader.h | 95 ++
.../exec/format/table/paimon_doris_file_system.cpp | 664 ++++++++
.../exec/format/table/paimon_doris_file_system.h | 14 +-
be/src/vec/exec/format/table/paimon_jni_reader.cpp | 13 +-
.../format/table/paimon_predicate_converter.cpp | 659 ++++++++
.../exec/format/table/paimon_predicate_converter.h | 90 ++
.../format/table/paimon_sys_table_jni_reader.cpp | 60 -
be/src/vec/exec/format/table/parquet_utils.cpp | 33 +
be/src/vec/exec/format/table/parquet_utils.h | 5 +
be/src/vec/exec/format/text/text_reader.cpp | 2 +-
be/src/vec/exec/scan/file_scanner.cpp | 43 +-
be/src/vec/exec/scan/file_scanner.h | 3 +-
be/src/vec/exec/scan/meta_scanner.cpp | 8 -
be/src/vec/exec/scan/olap_scanner.cpp | 2 -
be/src/vec/exec/scan/scanner.cpp | 2 +
be/src/vec/exec/scan/scanner_scheduler.cpp | 34 +-
.../exprs/lambda_function/varray_map_function.cpp | 4 +-
be/src/vec/exprs/score_runtime.h | 22 +
be/src/vec/exprs/short_circuit_evaluation_expr.cpp | 79 +-
be/src/vec/exprs/vcolumn_ref.h | 2 +
be/src/vec/exprs/vcompound_pred.h | 8 +
be/src/vec/exprs/vectorized_agg_fn.cpp | 11 +-
be/src/vec/exprs/vectorized_agg_fn.h | 3 -
be/src/vec/exprs/vectorized_fn_call.cpp | 123 +-
be/src/vec/exprs/vectorized_fn_call.h | 1 +
be/src/vec/exprs/vexpr.h | 8 +
be/src/vec/exprs/vexpr_context.cpp | 9 +
be/src/vec/exprs/vexpr_context.h | 11 +-
be/src/vec/exprs/vliteral.h | 2 +
be/src/vec/exprs/vruntimefilter_wrapper.h | 2 +
be/src/vec/exprs/vsearch.cpp | 14 +-
be/src/vec/exprs/vsearch.h | 5 +
be/src/vec/exprs/vslot_ref.cpp | 3 -
be/src/vec/exprs/vslot_ref.h | 2 +
.../functions/array/function_array_distance.cpp | 18 +
.../vec/functions/array/function_array_distance.h | 6 +
.../vec/functions/array/function_array_element.h | 7 -
be/src/vec/functions/array/function_array_join.h | 126 +-
be/src/vec/functions/date_format_type.h | 148 ++
be/src/vec/functions/date_time_transforms.h | 47 +
be/src/vec/functions/datetime_errors.h | 32 +-
be/src/vec/functions/function.h | 14 +
be/src/vec/functions/function_const.h | 3 +-
.../function_date_or_datetime_computation.cpp | 64 +-
.../function_date_or_datetime_computation.h | 680 ++++----
.../function_date_or_datetime_to_string.cpp | 22 +
be/src/vec/functions/function_regexp.cpp | 1 +
be/src/vec/functions/function_search.cpp | 359 ++++-
be/src/vec/functions/function_search.h | 22 +-
be/src/vec/functions/function_width_bucket.cpp | 3 +-
be/src/vec/functions/functions_comparison.h | 2 +
be/src/vec/functions/functions_geo.cpp | 532 +++---
be/src/vec/functions/match.cpp | 13 +-
be/src/vec/json/json_parser.h | 1 -
be/src/vec/olap/vgeneric_iterators.cpp | 63 +-
be/src/vec/olap/vgeneric_iterators.h | 50 +-
be/src/vec/runtime/vcsv_transformer.h | 4 +-
be/src/vec/runtime/vdatetime_value.cpp | 35 +-
.../runtime/vfile_format_transformer_factory.cpp | 108 ++
.../runtime/vfile_format_transformer_factory.h} | 35 +-
be/src/vec/runtime/vjni_format_transformer.cpp | 162 ++
be/src/vec/runtime/vjni_format_transformer.h | 77 +
be/src/vec/runtime/vorc_transformer.cpp | 209 ++-
be/src/vec/runtime/vorc_transformer.h | 12 +-
be/src/vec/runtime/vparquet_transformer.cpp | 73 +-
be/src/vec/runtime/vparquet_transformer.h | 6 +-
be/src/vec/sink/vrow_distribution.cpp | 30 +-
.../writer/iceberg/viceberg_partition_writer.cpp | 56 +-
.../writer/iceberg/viceberg_partition_writer.h | 29 +-
.../vec/sink/writer/iceberg/viceberg_sort_writer.h | 352 ++++
.../sink/writer/iceberg/viceberg_table_writer.cpp | 68 +-
.../sink/writer/iceberg/viceberg_table_writer.h | 21 +-
.../writer/iceberg/vpartition_writer_base.h} | 62 +-
.../writer/maxcompute/vmc_partition_writer.cpp | 85 +
.../writer/maxcompute/vmc_partition_writer.h} | 53 +-
.../sink/writer/maxcompute/vmc_table_writer.cpp | 208 +++
.../vec/sink/writer/maxcompute/vmc_table_writer.h | 100 ++
be/src/vec/sink/writer/vfile_result_writer.cpp | 6 +
be/src/vec/sink/writer/vtablet_writer_v2.cpp | 4 +-
be/src/vec/sink/writer/vtvf_table_writer.cpp | 172 ++
be/src/vec/sink/writer/vtvf_table_writer.h | 87 +
be/test/cloud/cloud_cluster_info_test.cpp | 280 ++++
be/test/cloud/cloud_tablet_test.cpp | 267 +++
be/test/common/config_on_update_test.cpp | 147 ++
be/test/common/logconfig_test.cpp | 264 +++
be/test/geo/geo_types_test.cpp | 534 ++++++
.../io/cache/block_file_cache_downloader_test.cpp | 240 +++
.../io/cache/block_file_cache_test_meta_store.cpp | 178 +-
.../fs_file_cache_storage_leak_cleaner_test.cpp | 718 +++++++++
be/test/olap/accept_null_predicate_test.cpp | 38 +
be/test/olap/block_column_predicate_test.cpp | 60 +-
be/test/olap/collection_similarity_test.cpp | 541 +++++++
be/test/olap/compaction_file_cache_test.cpp | 403 +++++
be/test/olap/delete_bitmap_calculator_test.cpp | 2 +-
be/test/olap/memtable_flush_executor_test.cpp | 123 ++
be/test/olap/metadata_adder_test.cpp | 13 +-
be/test/olap/olap_type_test.cpp | 16 +-
be/test/olap/row_cursor_test.cpp | 40 -
.../segment_v2/column_reader_writer_test.cpp | 45 +
.../occur_boolean_query_real_index_test.cpp | 9 +-
.../query_v2/occur_boolean_query_test.cpp | 18 +-
.../query_v2/phrase_prefix_query_test.cpp | 475 ++++++
.../inverted_index/query_v2/prefix_query_test.cpp | 339 ++++
.../query_v2/regexp_wildcard_lowercase_test.cpp | 228 +++
.../query_v2/union_postings_test.cpp | 366 +++++
.../segment_v2/inverted_index_array_test.cpp | 2 +
.../segment_v2/inverted_index_writer_test.cpp | 185 +++
.../search_function_query_cache_test.cpp | 207 +++
.../rowset/segment_v2/segment_corruption_test.cpp | 2 +-
.../variant_column_writer_reader_test.cpp | 394 ++++-
.../olap/rowset/segment_v2/variant_util_test.cpp | 235 ++-
.../olap/rowset/segment_v2/zone_map_index_test.cpp | 560 ++++++-
be/test/olap/tablet_schema_helper.cpp | 10 +-
be/test/olap/tablet_schema_helper.h | 4 +-
be/test/olap/variant_doc_mode_compaction_test.cpp | 499 ++++++
be/test/runtime/user_function_cache_test.cpp | 347 ++++
be/test/runtime/workload_sched_policy_test.cpp | 41 +
.../runtime_filter_selectivity_test.cpp | 69 +-
be/test/udf/python/python_env_test.cpp | 706 ++++++++
be/test/udf/python/python_server_test.cpp | 594 +++++++
be/test/udf/python/python_udf_meta_test.cpp | 447 +++++
be/test/udf/python/python_udf_runtime_test.cpp | 448 +++++
be/test/util/crc32c_test.cpp | 401 +++++
be/test/util/key_util_test.cpp | 2 +-
.../vec/aggregate_functions/agg_function_test.h | 12 -
.../vec/aggregate_functions/agg_min_max_test.cpp | 13 +-
be/test/vec/columns/column_execute_util_test.cpp | 164 ++
be/test/vec/columns/column_variant_test.cpp | 39 +-
.../vec/data_types/data_type_agg_state_test.cpp | 2 +-
.../vec/data_types/data_type_datetime_v1_test.cpp | 4 +-
.../vec/data_types/data_type_datetime_v2_test.cpp | 6 +-
be/test/vec/data_types/data_type_decimal_test.cpp | 30 +-
.../data_type_fixed_length_object_test.cpp | 7 +-
be/test/vec/data_types/data_type_jsonb_test.cpp | 2 +-
be/test/vec/data_types/data_type_number_test.cpp | 12 +-
be/test/vec/data_types/data_type_string_test.cpp | 2 +-
be/test/vec/data_types/from_string_test.cpp | 205 +--
.../data_types/serde/data_type_serde_csv_test.cpp | 32 +-
.../data_type_serde_fixed_length_object_test.cpp | 15 +-
.../data_types/serde/data_type_serde_map_test.cpp | 4 +-
.../serde/data_type_serde_string_test.cpp | 2 +-
.../serde/data_type_serde_struct_test.cpp | 2 +-
.../data_types/serde/data_type_serde_text_test.cpp | 29 +-
.../exec/format/table/paimon_cpp_reader_test.cpp | 95 ++
be/test/vec/exec/sort/full_sort_test.cpp | 4 +-
be/test/vec/exec/vgeneric_iterators_test.cpp | 17 +-
be/test/vec/exprs/score_runtime_test.cpp | 259 +++
.../function_array_cosine_similarity_test.cpp | 159 ++
be/test/vec/function/function_search_test.cpp | 119 +-
be/test/vec/function/function_time_test.cpp | 668 ++++++++
bin/start_fe.sh | 2 +-
build.sh | 8 +-
cloud/script/start.sh | 4 +-
cloud/src/common/bvars.cpp | 40 +
cloud/src/common/bvars.h | 23 +
cloud/src/common/config.h | 2 +-
cloud/src/common/logging.cpp | 72 +-
cloud/src/meta-service/meta_service.cpp | 35 +-
cloud/src/meta-service/meta_service_resource.cpp | 13 +
cloud/src/meta-service/meta_service_txn.cpp | 70 +
cloud/src/recycler/recycler.cpp | 40 +
cloud/src/recycler/recycler.h | 25 +-
cloud/src/recycler/recycler_operation_log.cpp | 90 +-
cloud/src/recycler/s3_obj_client.cpp | 17 +-
cloud/test/CMakeLists.txt | 1 +
cloud/test/compaction_rw_separation_test.cpp | 181 +++
cloud/test/log_test.cpp | 205 +++
cloud/test/recycler_operation_log_test.cpp | 478 ++++++
cloud/test/s3_accessor_client_test.cpp | 13 +-
cloud/test/schema_kv_test.cpp | 167 +-
common/cpp/private_member_accessor.hpp | 109 ++
.../create_preinstalled_scripts/iceberg/run26.sql | 73 +
.../create_preinstalled_scripts/paimon/run11.sql | 63 +
fe/.idea/vcs.xml | 24 +-
.../doris/common/classloader/ScannerLoader.java | 68 +-
.../org/apache/doris/common/jni/JniWriter.java | 99 ++
.../java-common/src/main/resources/log4j2.xml | 63 +
.../{max-compute-scanner => java-writer}/pom.xml | 34 +-
.../apache/doris/writer/LocalFileJniWriter.java | 117 ++
.../src/main/resources/package.xml | 0
.../pom.xml | 9 +-
.../doris/maxcompute/MaxComputeColumnValue.java | 0
.../doris/maxcompute/MaxComputeJniScanner.java | 0
.../doris/maxcompute/MaxComputeJniWriter.java | 631 ++++++++
.../src/main/resources/package.xml | 3 +-
.../doris/paimon/PaimonSysTableJniScanner.java | 191 ---
.../java/org/apache/doris/paimon/PaimonUtils.java | 14 +-
fe/be-java-extensions/pom.xml | 3 +-
.../doris/trinoconnector/TrinoConnectorCache.java | 15 +-
.../trinoconnector/TrinoConnectorPluginLoader.java | 29 +-
.../fe-authentication-api/README.md | 127 ++
fe/fe-authentication/fe-authentication-api/pom.xml | 57 +
.../authentication/AuthenticationBinding.java | 142 ++
.../authentication/AuthenticationException.java} | 34 +-
.../authentication/AuthenticationIntegration.java | 262 +++
.../authentication/AuthenticationRequest.java | 242 +++
.../doris/authentication/AuthenticationResult.java | 241 +++
.../doris/authentication/BasicPrincipal.java | 262 +++
.../doris/authentication/CredentialType.java} | 33 +-
.../org/apache/doris/authentication/Principal.java | 99 ++
.../AuthenticationExceptionTest.java | 103 ++
.../AuthenticationIntegrationTest.java | 255 +++
.../authentication/AuthenticationRequestTest.java | 261 +++
.../authentication/AuthenticationResultTest.java | 153 ++
.../doris/authentication/BasicPrincipalTest.java | 266 +++
.../fe-authentication-handler/pom.xml | 81 +
.../handler/AuthenticationOutcome.java | 119 ++
.../handler/AuthenticationPluginManager.java | 283 ++++
.../handler/AuthenticationService.java | 198 +++
.../authentication/handler/BindingRegistry.java | 153 ++
.../authentication/handler/BindingResolver.java | 150 ++
.../handler/IntegrationRegistry.java | 137 ++
.../handler/AuthenticationOutcomeTest.java | 187 +++
.../handler/AuthenticationPluginManagerTest.java | 525 ++++++
.../handler/AuthenticationServiceTest.java | 535 ++++++
.../handler/BindingRegistryTest.java | 266 +++
.../handler/BindingResolverTest.java | 409 +++++
.../handler/IntegrationRegistryTest.java | 166 ++
.../fe-authentication-plugin-ldap/README.md | 163 ++
.../fe-authentication-plugin-ldap/pom.xml | 84 +
.../plugin/ldap/LdapAuthenticationPlugin.java | 242 +++
.../ldap/LdapAuthenticationPluginFactory.java} | 28 +-
.../authentication/plugin/ldap/LdapClient.java | 270 ++++
....authentication.spi.AuthenticationPluginFactory | 18 +
.../ldap/LdapAuthenticationPluginFactoryTest.java | 76 +
.../LdapAuthenticationPluginIntegrationTest.java | 516 ++++++
.../plugin/ldap/LdapAuthenticationPluginTest.java | 684 ++++++++
.../authentication/plugin/ldap/LdapClientTest.java | 265 +++
.../authentication/plugin/ldap/TestUtils.java | 70 +
.../src/test/resources/test-ldap-data.ldif | 77 +
.../fe-authentication-plugin-password/README.md | 264 +++
.../fe-authentication-plugin-password/pom.xml | 95 ++
.../password/PasswordAuthenticationPlugin.java | 319 ++++
.../PasswordAuthenticationPluginFactory.java} | 33 +-
.../plugin/password/PasswordHasher.java | 202 +++
....authentication.spi.AuthenticationPluginFactory | 18 +
.../PasswordAuthenticationPluginFactoryTest.java | 70 +
.../password/PasswordAuthenticationPluginTest.java | 614 +++++++
.../plugin/password/PasswordHasherTest.java | 512 ++++++
.../fe-authentication-plugins}/pom.xml | 35 +-
.../fe-authentication-spi/README.md | 144 ++
.../fe-authentication-spi}/pom.xml | 45 +-
.../authentication/spi/AuthenticationPlugin.java | 146 ++
.../spi/AuthenticationPluginFactory.java | 62 +
.../spi/AuthenticationPluginContractTest.java | 200 +++
.../AuthenticationPluginFactoryContractTest.java | 144 ++
.../pom.xml | 35 +-
.../main/java/org/apache/doris/common/Config.java | 71 +-
.../apache/doris/job/cdc/DataSourceConfigKeys.java | 4 +
...RecordRequest.java => CommitOffsetRequest.java} | 26 +-
.../doris/job/cdc/request/FetchRecordRequest.java | 12 -
.../job/cdc/request/JobBaseRecordRequest.java | 4 -
.../doris/job/cdc/request/WriteRecordRequest.java | 13 +-
.../antlr4/org/apache/doris/nereids/DorisLexer.g4 | 17 +-
.../antlr4/org/apache/doris/nereids/DorisParser.g4 | 41 +-
.../org/apache/doris/nereids/search/SearchLexer.g4 | 6 +-
.../apache/doris/nereids/search/SearchParser.g4 | 15 +-
.../src/main/java/org/apache/doris/DorisFE.java | 19 +-
.../org/apache/doris/alter/IndexChangeJob.java | 3 +
.../analysis/AbstractBackupTableRefClause.java | 96 --
.../org/apache/doris/analysis/DateLiteral.java | 4 +-
.../java/org/apache/doris/analysis/KeysDesc.java | 46 +-
.../org/apache/doris/analysis/SearchPredicate.java | 31 +
.../apache/doris/blockrule/SqlBlockRuleMgr.java | 3 +
.../org/apache/doris/catalog/AzureResource.java | 4 +-
.../doris/catalog/BuiltinScalarFunctions.java | 32 +
.../doris/catalog/BuiltinTableValuedFunctions.java | 2 -
.../org/apache/doris/catalog/DistributionInfo.java | 10 +-
.../main/java/org/apache/doris/catalog/Env.java | 30 +-
.../java/org/apache/doris/catalog/EnvFactory.java | 4 +-
.../apache/doris/catalog/HashDistributionInfo.java | 10 -
.../org/apache/doris/catalog/InternalSchema.java | 2 +
.../java/org/apache/doris/catalog/OlapTable.java | 9 +-
.../doris/catalog/RandomDistributionInfo.java | 5 -
.../java/org/apache/doris/catalog/TableIf.java | 66 +-
.../main/java/org/apache/doris/catalog/Tablet.java | 2 +
.../catalog/TabletSlidingWindowAccessStats.java | 555 +++++++
.../org/apache/doris/catalog/TempPartitions.java | 16 +
.../apache/doris/cloud/catalog/CloudPartition.java | 6 +
.../apache/doris/cloud/catalog/CloudTablet.java | 4 +-
.../doris/cloud/catalog/CloudTabletRebalancer.java | 595 +++++--
.../apache/doris/cloud/rpc/MetaServiceProxy.java | 200 ++-
.../doris/cloud/system/CloudSystemInfoService.java | 212 ++-
.../transaction/CloudGlobalTransactionMgr.java | 16 +
.../org/apache/doris/common/GlobRegexUtil.java | 152 ++
.../java/org/apache/doris/common/Log4jConfig.java | 4 +-
.../apache/doris/common/QuotaExceedException.java | 4 +
.../doris/common/proc/FrontendsProcNode.java | 16 +-
.../apache/doris/common/proc/ReplicasProcNode.java | 16 +-
.../apache/doris/common/proc/TabletsProcDir.java | 16 +-
.../doris/common/profile/RuntimeProfile.java | 3 +-
.../doris/common/profile/SummaryProfile.java | 12 +
.../apache/doris/datasource/CatalogProperty.java | 2 +-
.../doris/datasource/CatalogScopedCacheMgr.java} | 32 +-
.../apache/doris/datasource/ExternalCatalog.java | 1 -
.../doris/datasource/ExternalMetaCacheMgr.java | 133 +-
.../doris/datasource/ExternalSchemaCache.java | 13 +-
.../apache/doris/datasource/InternalCatalog.java | 6 +-
.../doris/datasource/doris/FeServiceClient.java | 617 ++++++-
.../datasource/doris/RemoteDorisExternalTable.java | 5 +-
.../doris/datasource/doris/RemoteOlapTable.java | 24 +
.../doris/datasource/hive/HMSExternalTable.java | 13 +-
.../datasource/iceberg/IcebergExternalCatalog.java | 70 +-
.../datasource/iceberg/IcebergExternalTable.java | 41 +-
.../datasource/iceberg/IcebergMetadataCache.java | 135 +-
.../datasource/iceberg/IcebergMetadataOps.java | 41 +-
.../datasource/iceberg/IcebergTransaction.java | 12 +-
.../doris/datasource/iceberg/IcebergUtils.java | 14 +-
.../iceberg/cache/ContentFileEstimator.java | 194 ---
.../iceberg/cache/IcebergManifestCache.java | 27 +-
.../iceberg/cache/ManifestCacheValue.java | 20 +-
.../iceberg/helper/IcebergWriterHelper.java | 56 +-
.../datasource/iceberg/source/IcebergScanNode.java | 9 +-
.../doris/datasource/maxcompute/MCTransaction.java | 181 +++
.../maxcompute/MaxComputeExternalCatalog.java | 11 +
.../maxcompute/MaxComputeMetadataOps.java | 562 +++++++
.../datasource/maxcompute/McStructureHelper.java | 77 +
.../doris/datasource/metacache/CacheSpec.java | 152 ++
.../operations/ExternalMetadataOperations.java | 8 +
.../datasource/paimon/PaimonExternalCatalog.java | 23 +
.../datasource/paimon/PaimonExternalTable.java | 58 +-
.../datasource/paimon/PaimonMetadataCache.java | 152 +-
.../datasource/paimon/PaimonMetadataCacheMgr.java | 51 -
.../datasource/paimon/PaimonSnapshotCacheKey.java | 60 -
.../datasource/paimon/PaimonSysExternalTable.java | 245 +++
.../datasource/paimon/PaimonTableCacheValue.java | 61 +
.../apache/doris/datasource/paimon/PaimonUtil.java | 90 ++
.../doris/datasource/paimon/PaimonUtils.java | 64 +
.../datasource/paimon/source/PaimonScanNode.java | 90 +-
.../datasource/paimon/source/PaimonSource.java | 35 +-
.../datasource/paimon/source/PaimonSplit.java | 42 +-
.../metastore/AbstractIcebergProperties.java | 20 +
.../storage/AbstractS3CompatibleProperties.java | 12 +
.../datasource/property/storage/COSProperties.java | 8 +-
.../property/storage/MinioProperties.java | 8 +-
.../datasource/property/storage/OBSProperties.java | 8 +-
.../datasource/property/storage/OSSProperties.java | 9 +-
.../datasource/property/storage/S3Properties.java | 10 +-
.../doris/datasource/systable/IcebergSysTable.java | 62 +-
.../doris/datasource/systable/NativeSysTable.java | 62 +
.../doris/datasource/systable/PaimonSysTable.java | 84 +-
.../datasource/systable/PartitionsSysTable.java | 17 +-
.../datasource/systable/SupportedSysTables.java | 44 -
.../apache/doris/datasource/systable/SysTable.java | 56 +-
.../datasource/systable/SysTableResolver.java | 186 +++
.../doris/datasource/systable/TvfSysTable.java | 88 +
.../apache/doris/dictionary/DictionaryManager.java | 10 +-
.../doris/httpv2/rest/StreamingJobAction.java | 17 +-
.../apache/doris/indexpolicy/IndexPolicyMgr.java | 6 +
.../AbstractInsertOverwriteManager.java | 45 +
.../insertoverwrite/InsertOverwriteManager.java | 23 +-
.../doris/insertoverwrite/InsertOverwriteUtil.java | 54 +-
.../RemoteInsertOverwriteManager.java | 93 ++
.../streaming/DataSourceConfigValidator.java | 16 +-
.../insert/streaming/StreamingInsertJob.java | 101 +-
.../streaming/StreamingJobSchedulerTask.java | 1 +
.../insert/streaming/StreamingJobStatistic.java | 3 +
.../insert/streaming/StreamingMultiTblTask.java | 41 +-
.../apache/doris/job/util/StreamingJobUtils.java | 5 +-
.../org/apache/doris/load/GroupCommitManager.java | 14 +-
.../apache/doris/load/loadv2/BrokerLoadJob.java | 17 +
.../apache/doris/load/loadv2/LoadLoadingTask.java | 4 +-
.../doris/load/routineload/KafkaTaskInfo.java | 4 +-
.../doris/load/routineload/RoutineLoadJob.java | 2 +
.../java/org/apache/doris/metric/CloudMetrics.java | 49 +
.../org/apache/doris/metric/MetricCalculator.java | 35 +
.../java/org/apache/doris/metric/MetricRepo.java | 133 ++
.../org/apache/doris/nereids/NereidsPlanner.java | 147 +-
.../analyzer/UnboundMaxComputeTableSink.java | 117 ++
.../nereids/analyzer/UnboundTVFTableSink.java | 133 ++
.../doris/nereids/analyzer/UnboundTableSink.java | 6 +-
.../nereids/analyzer/UnboundTableSinkCreator.java | 14 +-
.../doris/nereids/errors/QueryPlanningErrors.java | 8 +-
.../glue/translator/ExpressionTranslator.java | 18 +-
.../glue/translator/PhysicalPlanTranslator.java | 91 +-
.../doris/nereids/jobs/cascades/ApplyRuleJob.java | 2 +-
.../doris/nereids/jobs/executor/Rewriter.java | 259 +--
.../doris/nereids/jobs/rewrite/RewriteJob.java | 14 +-
.../nereids/jobs/scheduler/SimpleJobScheduler.java | 14 +-
.../doris/nereids/load/NereidsLoadUtils.java | 32 +
.../doris/nereids/parser/LogicalPlanBuilder.java | 115 +-
.../processor/post/TopnFilterPushDownVisitor.java | 32 +-
.../pre/TurnOffPageCacheForInsertIntoSelect.java | 8 +
.../properties/ChildOutputPropertyDeriver.java | 96 +-
.../properties/ChildrenPropertiesRegulator.java | 160 +-
.../nereids/properties/RequestPropertyDeriver.java | 24 +-
.../org/apache/doris/nereids/rules/RuleSet.java | 4 +
.../org/apache/doris/nereids/rules/RuleType.java | 4 +
.../doris/nereids/rules/analysis/BindRelation.java | 31 +-
.../doris/nereids/rules/analysis/BindSink.java | 158 +-
.../nereids/rules/analysis/CheckAfterRewrite.java | 22 +-
.../nereids/rules/analysis/CollectRelation.java | 5 +
.../rules/analysis/DatetimeFunctionBinder.java | 54 +
.../nereids/rules/analysis/ExpressionAnalyzer.java | 115 ++
.../nereids/rules/analysis/UserAuthentication.java | 17 +-
.../mv/AbstractMaterializedViewAggregateRule.java | 3 +-
.../rules/expression/ExpressionRewrite.java | 9 +
...puteTableSinkToPhysicalMaxComputeTableSink.java | 48 +
.../LogicalOlapScanToPhysicalOlapScan.java | 1 +
.../LogicalTVFTableSinkToPhysicalTVFTableSink.java | 46 +
.../implementation/SplitAggWithoutDistinct.java | 5 +-
.../rules/rewrite/CheckMatchExpression.java | 13 +-
.../rewrite/DecomposeRepeatWithPreAggregation.java | 124 +-
.../rewrite/EliminateGroupByKeyByUniform.java | 2 +-
.../nereids/rules/rewrite/ExprIdRewriter.java | 59 +-
.../rewrite/PushDownScoreTopNIntoOlapScan.java | 176 +-
.../rewrite/PushDownVectorTopNIntoOlapScan.java | 2 +-
.../trees/copier/LogicalPlanDeepCopier.java | 17 +-
.../trees/expressions/ComparisonPredicate.java | 18 +
.../trees/expressions/ExpressionEvaluator.java | 2 +
.../functions/AggCombinerFunctionBuilder.java | 5 +-
.../functions/agg/AggregateFunction.java | 2 +-
.../functions/combinator/StateCombinator.java | 22 +-
.../functions/executable/ArrayArithmetic.java | 88 +
.../functions/executable/DateTimeArithmetic.java | 497 +++++-
.../executable/DateTimeExtractAndTransform.java | 97 ++
.../functions/executable/TimeRoundSeries.java | 4 +-
...condFromUnixtime.java => CosineSimilarity.java} | 42 +-
.../{MicrosecondFromUnixtime.java => DayHour.java} | 35 +-
...icrosecondFromUnixtime.java => DayHourSub.java} | 51 +-
...secondFromUnixtime.java => DayMicrosecond.java} | 35 +-
...ondFromUnixtime.java => DayMicrosecondAdd.java} | 52 +-
...ondFromUnixtime.java => DayMicrosecondSub.java} | 52 +-
...MicrosecondFromUnixtime.java => DayMinute.java} | 35 +-
...rosecondFromUnixtime.java => DayMinuteAdd.java} | 51 +-
...rosecondFromUnixtime.java => DayMinuteSub.java} | 51 +-
...MicrosecondFromUnixtime.java => DaySecond.java} | 35 +-
...rosecondFromUnixtime.java => DaySecondSub.java} | 51 +-
.../expressions/functions/scalar/ElementAt.java | 8 +-
...econdFromUnixtime.java => HourMicrosecond.java} | 35 +-
...ndFromUnixtime.java => HourMicrosecondAdd.java} | 52 +-
...ndFromUnixtime.java => HourMicrosecondSub.java} | 52 +-
...icrosecondFromUnixtime.java => HourMinute.java} | 35 +-
...osecondFromUnixtime.java => HourMinuteAdd.java} | 51 +-
...osecondFromUnixtime.java => HourMinuteSub.java} | 51 +-
...icrosecondFromUnixtime.java => HourSecond.java} | 35 +-
...osecondFromUnixtime.java => HourSecondAdd.java} | 51 +-
...osecondFromUnixtime.java => HourSecondSub.java} | 51 +-
.../functions/scalar/MicrosecondFromUnixtime.java | 8 +
...ondFromUnixtime.java => MinuteMicrosecond.java} | 35 +-
.../functions/scalar/MinuteMicrosecondAdd.java | 85 +
.../functions/scalar/MinuteMicrosecondSub.java | 85 +
...rosecondFromUnixtime.java => MinuteSecond.java} | 35 +-
...econdFromUnixtime.java => MinuteSecondSub.java} | 51 +-
...crosecondFromUnixtime.java => PreviousDay.java} | 40 +-
.../functions/scalar/SearchDslParser.java | 1705 ++++++++++++--------
...ondFromUnixtime.java => SecondMicrosecond.java} | 35 +-
.../functions/scalar/SecondMicrosecondSub.java | 88 +
...icrosecondFromUnixtime.java => StDistance.java} | 36 +-
...secondFromUnixtime.java => StGeometryType.java} | 29 +-
...{MicrosecondFromUnixtime.java => StLength.java} | 30 +-
.../expressions/functions/scalar/WidthBucket.java | 13 +
...MicrosecondFromUnixtime.java => YearMonth.java} | 28 +-
...rosecondFromUnixtime.java => YearMonthAdd.java} | 51 +-
...rosecondFromUnixtime.java => YearMonthSub.java} | 51 +-
.../expressions/functions/table/PaimonMeta.java | 70 -
.../trees/expressions/literal/Interval.java | 17 +-
.../expressions/visitor/ScalarFunctionVisitor.java | 178 +-
.../visitor/TableValuedFunctionVisitor.java | 5 -
.../apache/doris/nereids/trees/plans/PlanType.java | 9 +
.../doris/nereids/trees/plans/ScoreRangeInfo.java | 79 +
.../doris/nereids/trees/plans/algebra/Repeat.java | 60 +-
.../trees/plans/commands/DeleteFromCommand.java | 53 +-
.../trees/plans/commands/DescribeCommand.java | 44 +-
.../trees/plans/commands/SetOptionsCommand.java | 4 +
.../trees/plans/commands/ShowFrontendsCommand.java | 6 +-
.../trees/plans/commands/ShowFunctionsCommand.java | 146 +-
.../plans/commands/ShowPythonPackagesCommand.java | 183 +++
.../plans/commands/ShowPythonVersionsCommand.java | 140 ++
.../trees/plans/commands/ShowTabletIdCommand.java | 15 +-
.../trees/plans/commands/info/CreateMTMVInfo.java | 2 +-
.../trees/plans/commands/info/CreateTableInfo.java | 155 +-
.../trees/plans/commands/info/SetPassVarOp.java | 4 +
.../trees/plans/commands/info/SortFieldInfo.java | 67 +
.../commands/insert/AbstractInsertExecutor.java | 5 +
.../insert/BaseExternalTableInsertExecutor.java | 10 +-
.../commands/insert/InsertIntoTVFCommand.java | 209 +++
.../commands/insert/InsertIntoTableCommand.java | 89 +-
.../insert/InsertOverwriteTableCommand.java | 81 +-
.../trees/plans/commands/insert/InsertUtils.java | 36 +-
.../commands/insert/MCInsertCommandContext.java | 84 +
.../plans/commands/insert/MCInsertExecutor.java | 84 +
.../plans/commands/insert/OlapInsertExecutor.java | 10 +-
.../commands/insert/RemoteOlapInsertExecutor.java | 318 ++++
.../job/UnassignedScanBucketOlapTableJob.java | 36 +
.../trees/plans/logical/LogicalAggregate.java | 80 +-
.../plans/logical/LogicalMaxComputeTableSink.java | 149 ++
.../trees/plans/logical/LogicalOlapScan.java | 61 +-
.../trees/plans/logical/LogicalOlapTableSink.java | 12 +-
.../nereids/trees/plans/logical/LogicalRepeat.java | 35 +-
.../trees/plans/logical/LogicalTVFTableSink.java | 135 ++
.../plans/physical/PhysicalDictionarySink.java | 2 +-
.../physical/PhysicalLazyMaterializeOlapScan.java | 1 +
.../physical/PhysicalMaxComputeTableSink.java | 142 ++
.../trees/plans/physical/PhysicalOlapScan.java | 26 +-
.../plans/physical/PhysicalOlapTableSink.java | 10 +-
.../trees/plans/physical/PhysicalTVFTableSink.java | 157 ++
.../trees/plans/visitor/CommandVisitor.java | 10 +
.../nereids/trees/plans/visitor/SinkVisitor.java | 32 +
.../apache/doris/nereids/types/AggStateType.java | 37 +-
.../org/apache/doris/nereids/types/DataType.java | 3 +-
.../apache/doris/nereids/types/DataTypeUtils.java} | 38 +-
.../apache/doris/nereids/types/PartialAggType.java | 25 +-
.../apache/doris/nereids/types/VariantField.java | 33 +
.../apache/doris/nereids/types/VariantType.java | 17 +
.../org/apache/doris/nereids/util/DateUtils.java | 4 +-
.../apache/doris/nereids/util/RelationUtil.java | 18 +-
.../java/org/apache/doris/persist/EditLog.java | 68 +-
.../java/org/apache/doris/planner/DataSink.java | 3 +
.../org/apache/doris/planner/IcebergTableSink.java | 46 +-
.../apache/doris/planner/MaxComputeTableSink.java | 113 ++
.../org/apache/doris/planner/OlapScanNode.java | 11 +-
.../apache/doris/planner/RemoteOlapTableSink.java | 82 +
.../org/apache/doris/planner/TVFTableSink.java | 206 +++
.../java/org/apache/doris/plugin/AuditEvent.java | 7 +
.../org/apache/doris/plugin/audit/AuditLoader.java | 1 +
.../java/org/apache/doris/qe/AuditLogHelper.java | 12 +
.../main/java/org/apache/doris/qe/Coordinator.java | 31 +
.../java/org/apache/doris/qe/SessionVariable.java | 138 +-
.../org/apache/doris/qe/runtime/LoadProcessor.java | 5 +
.../apache/doris/service/FrontendServiceImpl.java | 767 ++++++++-
.../doris/statistics/util/StatisticsUtil.java | 20 +
.../FrontendsDisksTableValuedFunction.java | 11 +
.../FrontendsTableValuedFunction.java | 16 +-
.../tablefunction/PaimonTableValuedFunction.java | 174 --
.../doris/tablefunction/TableValuedFunctionIf.java | 2 -
.../doris/transaction/DatabaseTransactionMgr.java | 363 +++--
...nsactionType.java => MCTransactionManager.java} | 21 +-
.../doris/transaction/PublishVersionDaemon.java | 20 +-
.../transaction/TransactionManagerFactory.java | 5 +
.../apache/doris/transaction/TransactionType.java | 3 +-
.../org/apache/doris/analysis/ExprToSqlTest.java | 1019 ++++++++++++
.../apache/doris/analysis/SearchPredicateTest.java | 136 ++
.../apache/doris/catalog/AzureResourceTest.java | 55 +
.../java/org/apache/doris/catalog/FakeEditLog.java | 11 +
.../TabletSlidingWindowAccessStatsTest.java | 224 +++
.../doris/cloud/catalog/CloudPartitionTest.java | 10 +
.../cloud/catalog/CloudTabletRebalancerTest.java | 241 +++
.../doris/cloud/rpc/MetaServiceProxyTest.java | 4 +-
.../org/apache/doris/common/GenericPoolTest.java | 12 +
.../org/apache/doris/common/GlobRegexUtilTest.java | 113 ++
.../org/apache/doris/common/Log4jConfigTest.java | 76 +
.../doris/datasource/paimon/PaimonUtilTest.java | 57 +
.../paimon/source/PaimonScanNodeTest.java | 58 +
.../property/storage/COSPropertiesTest.java | 4 +
.../property/storage/OBSPropertyTest.java | 4 +
.../property/storage/OSSPropertiesTest.java | 4 +
.../property/storage/S3PropertiesTest.java | 25 +
.../doris/datasource/systable/SysTableTest.java | 33 +-
.../doris/load/loadv2/LoadLoadingTaskTest.java | 57 +
.../translator/PhysicalPlanTranslatorTest.java | 2 +-
.../doris/nereids/parser/SetPasswordParseTest.java | 128 ++
.../postprocess/MergeProjectPostProcessTest.java | 2 +-
.../PushDownFilterThroughProjectTest.java | 4 +-
.../nereids/postprocess/TopNRuntimeFilterTest.java | 53 +
.../ExpressionAnalyzerVariantAutoCastTest.java | 322 ++++
.../rules/analysis/NormalizeRepeatTest.java | 4 +
.../nereids/rules/expression/FoldConstantTest.java | 13 +
.../DecomposeRepeatWithPreAggregationTest.java | 172 +-
.../nereids/rules/rewrite/ExprIdRewriterTest.java | 278 ++++
.../PushDownFilterThroughAggregationTest.java | 5 +-
.../trees/copier/LogicalPlanDeepCopierTest.java | 2 +
.../functions/scalar/SearchDslParserTest.java | 1321 ++++++++++++++-
.../doris/nereids/trees/plans/PlanEqualsTest.java | 6 +-
.../nereids/trees/plans/algebra/RepeatTest.java | 206 +++
.../commands/ShowBuiltinFunctionsCommandTest.java | 9 +-
.../plans/commands/ShowFrontendsCommandTest.java | 62 +-
.../plans/commands/ShowFunctionsCommandTest.java | 31 +-
.../commands/ShowGlobalFunctionsCommandTest.java | 41 +-
.../insert/InsertIntoTableCommandTest.java | 173 ++
.../doris/nereids/types/VariantFieldMatchTest.java | 365 +++++
.../org/apache/doris/nereids/util/PlanChecker.java | 8 +
.../doris/nereids/util/TypeCoercionMatrixTest.java | 60 +-
.../apache/doris/qe/AuditEventProcessorTest.java | 2 +
.../org/apache/doris/qe/HmsQueryCacheTest.java | 8 +-
.../doris/qe/LocalShuffleWithBucketJoinTest.java | 4 +-
.../apache/doris/qe/NereidsCoordinatorTest.java | 2 +-
.../apache/doris/utframe/MockedBackendFactory.java | 12 +
fe/fe-extension-loader/README.md | 403 +++++
.../pom.xml | 48 +-
.../extension/loader/ChildFirstClassLoader.java | 84 +
.../doris/extension/loader/ClassLoadingPolicy.java | 84 +
.../loader/DirectoryPluginRuntimeManager.java | 406 +++++
.../apache/doris/extension/loader/LoadFailure.java | 71 +
.../apache/doris/extension/loader/LoadReport.java | 59 +
.../doris/extension/loader/PluginHandle.java | 84 +
.../doris/extension/loader/PluginLoader.java | 87 +
.../doris/extension/loader/package-info.java | 36 +
fe/fe-extension-spi/README.md | 204 +++
.../pom.xml | 31 +-
.../org/apache/doris/extension/spi/Plugin.java} | 29 +-
.../apache/doris/extension/spi/PluginContext.java} | 29 +-
.../doris/extension/spi/PluginException.java} | 18 +-
.../apache/doris/extension/spi/PluginFactory.java} | 46 +-
.../apache/doris/extension/spi/package-info.java} | 35 +-
fe/pom.xml | 12 +-
.../connection/PostgresReplicationConnection.java | 932 +++++++++++
.../cdcclient/service/PipelineCoordinator.java | 10 +-
.../doris/cdcclient/sink/DorisBatchStreamLoad.java | 31 +-
.../doris/cdcclient/sink/HttpPutBuilder.java | 9 +-
.../apache/doris/cdcclient/sink/LoadStatistic.java | 28 +-
.../reader/postgres/PostgresSourceReader.java | 12 +-
gensrc/proto/cloud.proto | 18 +
gensrc/thrift/BackendService.thrift | 19 +
gensrc/thrift/DataSinks.thrift | 65 +
gensrc/thrift/Descriptors.thrift | 2 +
gensrc/thrift/Exprs.thrift | 3 +
gensrc/thrift/FrontendService.thrift | 193 +++
gensrc/thrift/PaloInternalService.thrift | 15 +-
gensrc/thrift/PlanNodes.thrift | 11 +-
.../data/alter_p0/test_alter_column_char.out | 22 +
.../ann_range_search_nullable_literal.out | 54 +
.../data/audit/test_audit_log_behavior.out | 1 +
.../basic-elements/data-types/map-md.out | 4 +
.../data/export_p2/test_export_max_file_size.out | 1105 ++-----------
.../iceberg/write/test_iceberg_write_stats2.out | 33 +
.../paimon/paimon_data_system_table.out | 155 ++
.../paimon/paimon_system_table.out | 96 +-
...st_insert_remote_doris_as_olap_table_select.out | 81 +
.../tvf/insert/test_insert_into_hdfs_tvf.out | 134 ++
.../tvf/insert/test_insert_into_local_tvf.out | 134 ++
.../tvf/insert/test_insert_into_s3_tvf.out | 134 ++
.../maxcompute/test_max_compute_create_table.out | 34 +
.../maxcompute/write/test_mc_write_ctas.out | 26 +
.../maxcompute/write/test_mc_write_insert.out | 20 +
.../maxcompute/write/test_mc_write_large_data.out | 46 +
.../maxcompute/write/test_mc_write_partitions.out | 32 +
.../write/test_mc_write_static_partitions.out | 43 +
.../maxcompute/write/test_mc_write_types.out | 61 +
.../analyzer/test_custom_analyzer.out | 9 +
.../test_bm25_score_range_filter.out | 33 +
.../inverted_index_p0/test_empty_string_match.out | 26 +
.../data/inverted_index_p0/test_omit_norms.out | 29 +
.../cdc/test_streaming_mysql_job_errormsg.out} | 4 +-
.../cdc/test_streaming_postgres_job_partition.out | 10 +
.../test_routine_load_with_aes_encrypt.out | 22 +
.../stream_load/test_stream_load_aes_encrypt.csv | 3 +
.../test_stream_load_with_aes_encrypt.out | 17 +
.../nereids_p0/repeat/test_repeat_output_slot.out | 11 +-
.../datetime_functions/test_add_sub_union_type.out | 810 ++++++++++
.../datetime_functions/test_date_function.out | 26 +-
.../spatial_functions/test_gis_function.out | 225 +++
.../decompose_repeat/decompose_repeat.out | 207 ++-
.../infer_set_operator_distinct.out | 154 +-
.../distribute/set_operation_colocate.out | 456 ++++++
.../test_table_name_with_dollar.out} | 10 +-
.../test_python_udaf_complex.out | 73 +
.../test_python_udf_business_logic.out | 56 +
.../test_python_udf_external_api.out | 13 +
.../test_python_udf_nlp_chinese.out | 53 +
.../test_python_udtf_complex.out | 97 ++
.../data/query_p0/join/test_left_join1.out | 6 +
.../test_array_distance_functions.out | 58 +
.../array_functions/test_array_functions.out | 10 +
.../test_short_circuit_evaluation.out | 7 +
.../test_dateadd_with_other_timeunit.out | 97 ++
.../string_functions/test_previous_day.out | 185 +++
.../test_string_function_regexp.out | 45 +
.../data/search/test_search_dsl_operators.out | 45 +
regression-test/data/search/test_search_escape.out | 9 -
.../data/search/test_search_lucene_mode.out | 4 +
.../search/test_search_multi_analyzer_lucene.out | 55 +
.../data/search/test_search_multi_field.out | 16 +-
.../data/search/test_search_regexp_lowercase.out | 39 +
.../test_search_variant_dual_index_reader.out | 23 +
.../test_search_variant_subcolumn_analyzer.out | 30 +
.../data/search/test_search_variant_wildcard.out | 42 +
.../shape_check/tpcds_sf1000/shape/query72.out | 30 +-
.../runtime_filter/test_pushdown_setop.out | 32 +-
.../test_partial_update_multi_stmt.out | 25 +
regression-test/data/variant_p0/multi_var.out | 36 +
.../predefine/test_schema_template_auto_cast.out | 342 ++++
.../org/apache/doris/regression/Config.groovy | 8 +-
.../org/apache/doris/regression/suite/Suite.groovy | 37 +-
.../pipeline/cloud_p0/conf/be_custom.conf | 4 +-
.../pipeline/cloud_p1/conf/be_custom.conf | 4 +-
regression-test/pipeline/performance/compile.sh | 4 +-
.../suites/account_p0/test_set_password.groovy | 69 +
.../suites/alter_p0/test_alter_column_char.groovy | 57 +
.../ann_range_search_nullable_literal.groovy | 237 +++
.../suites/audit/test_audit_log_queue_time.groovy | 129 ++
.../auth_call/test_dml_delete_table_auth.groovy | 81 +-
.../test_modify_distribution_buckets.groovy | 474 ++++++
.../cloud_p0/auth/test_set_default_cluster.groovy | 2 +-
.../test_active_tablet_priority_scheduling.groovy | 263 +++
...est_balance_use_compute_group_properties.groovy | 9 +-
.../test_balance_warm_up_task_abnormal.groovy | 13 +-
...test_cloud_alter_disable_auto_compaction.groovy | 193 +++
.../test_compaction_cluster_takeover.groovy | 264 +++
.../test_compaction_rw_separation.groovy | 158 ++
.../test_compaction_rw_separation_disabled.groovy | 151 ++
.../test_compaction_rw_separation_force.groovy | 161 ++
.../cloud_p0/multi_cluster/test_auto_start.groovy | 53 +
.../suites/cloud_p0/multi_cluster/test_tvf.groovy | 2 +-
.../test_clean_tablet_when_drop_force_table.groovy | 9 +-
.../compaction/test_compaction_uniq_keys_ck.groovy | 2 +-
.../test_compaction_uniq_keys_row_store_ck.groovy | 2 +-
...test_compaction_uniq_keys_with_delete_ck.groovy | 2 +-
.../compaction/test_full_compaction_ck.groovy | 2 +-
.../test_vertical_compaction_uniq_keys_ck.groovy | 2 +-
.../datatype_p0/date/test_from_unixtime.groovy | 1 +
.../basic-elements/data-types/map-md.groovy | 24 +-
.../sql-functions/doc_date_functions_test.groovy | 4 +-
.../export_p2/test_export_max_file_size.groovy | 140 +-
.../test_outfile_orc_max_file_size.groovy | 95 +-
.../suites/export_p2/test_outfile_p2.groovy | 72 -
.../hive/test_hive_compress_type.groovy | 21 +-
.../hive/test_orc_lazy_mat_profile.groovy | 310 ++++
.../hive/test_parquet_lazy_mat_profile.groovy | 604 +++++++
.../hive/write/test_hive_staging_dir.groovy | 3 -
.../iceberg/test_iceberg_manifest_cache.groovy | 5 +-
.../iceberg/test_iceberg_sys_table.groovy | 29 +-
.../iceberg/test_iceberg_table_cache.groovy | 2 +-
.../iceberg/test_iceberg_table_meta_cache.groovy | 18 +-
.../iceberg/write/test_iceberg_create_table.groovy | 26 +
.../iceberg/write/test_iceberg_write_stats2.groovy | 118 ++
.../paimon/paimon_data_system_table.groovy | 168 ++
.../paimon/paimon_system_table.groovy | 123 +-
.../paimon/test_paimon_system_table_auth.groovy | 65 +-
.../paimon/test_paimon_table_meta_cache.groovy | 128 ++
...insert_remote_doris_as_olap_table_select.groovy | 518 ++++++
.../tvf/insert/test_insert_into_hdfs_tvf.groovy | 553 +++++++
.../tvf/insert/test_insert_into_local_tvf.groovy | 690 ++++++++
.../tvf/insert/test_insert_into_s3_tvf.groovy | 566 +++++++
.../tvf/test_frontends_disks_tvf.groovy | 13 +
.../tvf/test_frontends_tvf.groovy | 26 +-
.../test_max_compute_create_table.groovy | 426 +++++
.../maxcompute/write/test_mc_write_ctas.groovy | 127 ++
.../maxcompute/write/test_mc_write_insert.groovy | 114 ++
.../write/test_mc_write_large_data.groovy | 143 ++
.../write/test_mc_write_partitions.groovy | 108 ++
.../write/test_mc_write_static_partitions.groovy | 159 ++
.../maxcompute/write/test_mc_write_types.groovy | 314 ++++
.../test_low_wal_disk_space_fault_injection.groovy | 115 +-
...t_variant_count_on_index_fault_injection.groovy | 1 +
.../analyzer/test_custom_analyzer.groovy | 73 +-
.../test_index_compaction_unique_keys_arr.groovy | 2 +-
.../inverted_index_p0/test_bm25_score.groovy | 6 +-
.../test_bm25_score_range_filter.groovy | 159 ++
.../test_empty_string_match.groovy | 78 +
.../inverted_index_p0/test_omit_norms.groovy | 139 ++
.../cdc/test_streaming_mysql_job.groovy | 4 +-
.../test_streaming_mysql_job_create_alter.groovy | 2 +-
.../cdc/test_streaming_mysql_job_errormsg.groovy | 45 +-
.../cdc/test_streaming_mysql_job_metrics.groovy | 180 +++
.../cdc/test_streaming_mysql_job_restart_fe.groovy | 10 +-
.../cdc/test_streaming_postgres_job.groovy | 12 +-
.../test_streaming_postgres_job_partition.groovy | 178 ++
.../cdc/test_streaming_postgres_job_priv.groovy | 4 +-
.../cdc/test_streaming_postgres_job_split.groovy | 6 +-
.../streaming_job/test_streaming_insert_job.groovy | 6 +-
.../test_streaming_insert_job_offset.groovy | 12 +-
...st_streaming_job_alter_offset_restart_fe.groovy | 24 +-
.../test_streaming_job_restart_fe.groovy | 12 +-
.../test_routin_load_abnormal_job_monitor.groovy | 15 +-
.../test_routine_load_adaptive_param.groovy | 14 +-
.../test_routine_load_timeout_value.groovy | 6 +
.../test_routine_load_with_aes_encrypt.groovy | 175 ++
.../stream_load/test_group_commit_redirect.groovy | 4 +-
.../load_p0/stream_load/test_sink_tolerate.groovy | 39 +
.../test_stream_load_with_aes_encrypt.groovy | 116 ++
.../cte/subquery_in_cte/subquery_in_cte.groovy | 67 +
.../suites/nereids_p0/delete/delete_cte_ck.groovy | 4 +-
.../group_concat/test_group_concat.groovy | 28 +
.../show/test_nereids_show_functions.groovy | 133 +-
.../show/test_nereids_show_global_functions.groovy | 10 +-
.../show/test_show_python_packages_command.groovy | 55 +
.../show/test_show_python_versions_command.groovy | 59 +
.../test_add_sub_union_type.groovy | 645 ++++++++
.../datetime_functions/test_date_function.groovy | 23 +
.../spatial_functions/test_gis_function.groovy | 111 ++
.../decompose_repeat/decompose_repeat.groovy | 77 +-
.../distribute/set_operation_colocate.groovy | 72 +
.../test_table_name_with_dollar.groovy | 29 +-
.../suites/point_query_p0/load_ck.groovy | 2 +-
.../point_query_p0/test_point_query_ck.groovy | 6 +-
.../test_point_query_partition_ck.groovy | 4 +-
.../suites/point_query_p0/test_rowstore_ck.groovy | 14 +-
.../point_query_p0/test_rowstore_query_ck.groovy | 2 +-
.../py_udf_complex_scripts/business_logic.py | 643 ++++++++
.../py_udf_complex_scripts/complex_udaf.py | 719 +++++++++
.../py_udf_complex_scripts/complex_udtf.py | 550 +++++++
.../py_udf_complex_scripts/external_api.py | 261 +++
.../py_udf_complex_scripts/nlp_chinese.py | 463 ++++++
.../py_udf_complex_scripts/py_udf_complex.zip | Bin 0 -> 18349 bytes
.../test_python_udaf_complex.groovy | 525 ++++++
.../test_python_udf_business_logic.groovy | 419 +++++
.../test_python_udf_external_api.groovy | 84 +
.../test_python_udf_nlp_chinese.groovy | 333 ++++
.../test_python_udtf_complex.groovy | 446 +++++
.../suites/query_p0/join/test_left_join1.groovy | 19 +
.../bucket_shuffle_set_operation.groovy | 3 +
.../test_array_distance_functions.groovy | 141 +-
.../array_functions/test_array_functions.groovy | 36 +
.../test_short_circuit_evaluation.groovy | 9 +
.../datetime_functions/test_date_floor_ceil.groovy | 38 +
.../datetime_functions/test_date_function.groovy | 6 -
.../test_dateadd_with_other_timeunit.groovy | 125 +-
.../string_functions/test_previous_day.groovy | 127 ++
.../test_string_function_regexp.groovy | 18 +
.../test_width_bucket_function.groovy | 6 +
.../suites/query_profile/profile_size_limit.groovy | 45 +-
.../unique_ck/test_schema_change_unique.groovy | 2 +-
.../unique_ck/test_unique_schema_value_drop.groovy | 14 +-
.../test_unique_schema_value_modify.groovy | 20 +-
.../test_unique_schema_value_modify1.groovy | 10 +-
.../test_unique_schema_value_modify2.groovy | 14 +-
.../test_unique_schema_value_modify3.groovy | 6 +-
.../search/test_search_boundary_cases.groovy | 45 +-
.../suites/search/test_search_cache.groovy | 138 ++
.../test_search_default_field_operator.groovy | 5 +-
.../suites/search/test_search_dsl_operators.groovy | 234 +++
.../suites/search/test_search_dsl_syntax.groovy | 2 +-
.../suites/search/test_search_escape.groovy | 45 +-
.../suites/search/test_search_exact_basic.groovy | 5 +-
.../search/test_search_exact_lowercase.groovy | 5 +-
.../suites/search/test_search_exact_match.groovy | 5 +-
.../search/test_search_exact_multi_index.groovy | 5 +-
.../search/test_search_field_group_query.groovy | 205 +++
.../suites/search/test_search_function.groovy | 2 +-
...n.groovy => test_search_function.groovy.backup} | 162 +-
.../search/test_search_inverted_index.groovy | 2 +-
.../suites/search/test_search_lucene_mode.groovy | 14 +-
.../suites/search/test_search_mow_support.groovy | 2 +-
.../test_search_multi_analyzer_lucene.groovy | 218 +++
.../suites/search/test_search_multi_field.groovy | 37 +-
.../search/test_search_null_regression.groovy | 29 +-
.../search/test_search_null_semantics.groovy | 21 +-
.../search/test_search_regexp_lowercase.groovy | 156 ++
.../search/test_search_usage_restrictions.groovy | 2 +-
.../test_search_variant_dual_index_reader.groovy | 135 ++
.../test_search_variant_subcolumn_analyzer.groovy | 180 +++
.../search/test_search_variant_wildcard.groovy | 166 ++
.../search/test_search_vs_match_consistency.groovy | 35 +-
.../test_segcompaction_unique_keys_mow_ck.groovy | 2 +-
.../shape_check/tpcds_sf1000/shape/query64.groovy | 242 +--
.../tpcds_sf1_unique_ck_p1/ddl/call_center.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/catalog_page.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/catalog_returns.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/catalog_sales.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/customer.sql | 2 +-
.../ddl/customer_address.sql | 2 +-
.../ddl/customer_demographics.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/date_dim.sql | 2 +-
.../ddl/household_demographics.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/income_band.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/inventory.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/item.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/promotion.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/reason.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/ship_mode.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/store.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/store_returns.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/store_sales.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/time_dim.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/warehouse.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/web_page.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/web_returns.sql | 2 +-
.../tpcds_sf1_unique_ck_p1/ddl/web_sales.sql | 2 +-
.../suites/tpcds_sf1_unique_ck_p1/ddl/web_site.sql | 2 +-
.../tpch_sf0.1_unique_ck_p1/ddl/customer.sql | 2 +-
.../tpch_sf0.1_unique_ck_p1/ddl/lineitem.sql | 2 +-
.../suites/tpch_sf0.1_unique_ck_p1/ddl/nation.sql | 2 +-
.../suites/tpch_sf0.1_unique_ck_p1/ddl/orders.sql | 2 +-
.../suites/tpch_sf0.1_unique_ck_p1/ddl/part.sql | 2 +-
.../tpch_sf0.1_unique_ck_p1/ddl/partsupp.sql | 2 +-
.../suites/tpch_sf0.1_unique_ck_p1/ddl/region.sql | 2 +-
.../tpch_sf0.1_unique_ck_p1/ddl/supplier.sql | 2 +-
.../partial_update/test_mix_partial_update.groovy | 8 +-
.../test_new_partial_update_delete.groovy | 2 +-
.../partial_update/test_partial_update.groovy | 8 +-
.../test_partial_update_2pc_schema_change.groovy | 2 +-
.../test_partial_update_after_delete.groovy | 4 +-
.../test_partial_update_auto_inc.groovy | 2 +-
.../test_partial_update_case_insensitivity.groovy | 2 +-
.../test_partial_update_complex_type.groovy | 2 +-
...artial_update_complex_type_schema_change.groovy | 2 +-
.../test_partial_update_default_value.groovy | 2 +-
.../test_partial_update_delete.groovy | 4 +-
.../test_partial_update_delete_sign.groovy | 8 +-
...partial_update_delete_sign_with_conflict.groovy | 2 +-
...artial_update_insert_light_schema_change.groovy | 10 +-
...test_partial_update_insert_schema_change.groovy | 10 +-
.../test_partial_update_insert_seq_col.groovy | 4 +-
.../test_partial_update_native_insert_stmt.groovy | 14 +-
...artial_update_native_insert_stmt_complex.groovy | 4 +-
.../partial_update/test_partial_update_orc.groovy | 2 +-
.../test_partial_update_parallel.groovy | 10 +-
.../test_partial_update_publish.groovy | 2 +-
.../test_partial_update_schema_change.groovy | 20 +-
...t_partial_update_schema_change_row_store.groovy | 20 +-
.../test_partial_update_with_update_stmt.groovy | 6 +-
.../ssb_unique_load_zstd/ddl/customer_create.sql | 2 +-
.../ddl/customer_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/date_create.sql | 2 +-
.../ddl/date_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/lineorder_create.sql | 2 +-
.../ddl/lineorder_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/part_create.sql | 2 +-
.../ddl/part_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/supplier_create.sql | 2 +-
.../ddl/supplier_sequence_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/customer_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/date_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/lineorder_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/part_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/supplier_create.sql | 2 +-
.../test_compact_multi_segments.groovy | 2 +-
.../unique_with_mow_c_p0/test_compact_seg.groovy | 2 +-
.../test_compact_with_seq.groovy | 2 +-
.../test_compact_with_seq2.groovy | 2 +-
...est_compaction_with_multi_append_columns.groovy | 2 +-
.../unique_with_mow_c_p0/test_create_table.groovy | 71 +-
.../unique_with_mow_c_p0/test_delete_sign.groovy | 8 +-
.../test_delete_sign_delete_bitmap.groovy | 4 +-
.../test_mow_full_clone_exception.groovy | 2 +-
.../test_mow_with_null_sequence.groovy | 4 +-
.../unique_with_mow_c_p0/test_pk_uk_case.groovy | 2 +-
.../test_primary_key_simple_case.groovy | 2 +-
.../unique_with_mow_c_p0/test_schema_change.groovy | 2 +-
.../test_schema_change_add_key_column.groovy | 2 +-
.../test_schema_change_and_compaction.groovy | 2 +-
.../test_schema_change_ck.groovy | 6 +-
.../suites/unique_with_mow_c_p0/test_select.groovy | 2 +-
.../test_unique_mow_sequence.groovy | 2 +-
.../suites/unique_with_mow_c_p0/test_update.groovy | 2 +-
.../ssb_unique_load_zstd/ddl/customer_create.sql | 2 +-
.../ddl/customer_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/date_create.sql | 2 +-
.../ddl/date_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/lineorder_create.sql | 2 +-
.../ddl/lineorder_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/part_create.sql | 2 +-
.../ddl/part_sequence_create.sql | 2 +-
.../ssb_unique_load_zstd/ddl/supplier_create.sql | 2 +-
.../ddl/supplier_sequence_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/customer_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/date_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/lineorder_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/part_create.sql | 2 +-
.../ssb_unique_sql_zstd/ddl/supplier_create.sql | 2 +-
.../unique_with_mow_c_p2/test_pk_uk_case.groovy | 2 +-
.../test_partial_update_multi_stmt.groovy | 168 ++
regression-test/suites/variant_p0/multi_var.groovy | 24 +-
.../predefine/predefined_typed_to_sparse.groovy | 1 +
.../test_schema_template_auto_cast.groovy | 414 +++++
thirdparty/CHANGELOG.md | 9 +
thirdparty/build-thirdparty.sh | 219 ++-
thirdparty/download-prebuild-thirdparty.sh | 146 ++
thirdparty/download-thirdparty.sh | 112 ++
thirdparty/paimon-cpp-cache.cmake | 119 ++
.../azure-sdk-for-cpp-azure-core_1.16.0.patch | 33 +-
thirdparty/patches/libhdfs3-v2.3.9-hostname.patch | 74 +
.../paimon-cpp-buildutils-static-deps.patch | 181 +++
.../patches/snappy-1.1.10-sign-compare.patch | 11 +
thirdparty/vars.sh | 43 +-
1218 files changed, 86045 insertions(+), 11882 deletions(-)
delete mode 100644 .github/workflows/sonarcloud.yml
create mode 100644 be/src/cloud/cloud_cluster_info.cpp
create mode 100644
be/src/olap/rowset/segment_v2/inverted_index/query_v2/phrase_prefix_query/phrase_prefix_query.h
create mode 100644
be/src/olap/rowset/segment_v2/inverted_index/query_v2/phrase_prefix_query/phrase_prefix_weight.h
copy
be/src/olap/rowset/segment_v2/inverted_index/query_v2/{regexp_query/regexp_weight.h
=> prefix_query/prefix_query.h} (53%)
create mode 100644
be/src/olap/rowset/segment_v2/inverted_index/query_v2/prefix_query/prefix_weight.h
create mode 100644
be/src/olap/rowset/segment_v2/inverted_index/query_v2/union_postings.h
create mode 100644 be/src/olap/rowset/segment_v2/segment_prefetcher.cpp
create mode 100644 be/src/olap/rowset/segment_v2/segment_prefetcher.h
delete mode 100644 be/src/olap/wrapper_field.cpp
delete mode 100644 be/src/olap/wrapper_field.h
copy be/src/pipeline/exec/{iceberg_table_sink_operator.cpp =>
maxcompute_table_sink_operator.cpp} (89%)
create mode 100644 be/src/pipeline/exec/maxcompute_table_sink_operator.h
create mode 100644 be/src/pipeline/exec/spill_iceberg_table_sink_operator.cpp
create mode 100644 be/src/pipeline/exec/spill_iceberg_table_sink_operator.h
copy be/src/pipeline/exec/{iceberg_table_sink_operator.cpp =>
tvf_table_sink_operator.cpp} (82%)
create mode 100644 be/src/pipeline/exec/tvf_table_sink_operator.h
create mode 100644 be/src/util/concurrency_stats.cpp
create mode 100644 be/src/util/concurrency_stats.h
copy be/src/vec/aggregate_functions/{aggregate_function_null.h =>
aggregate_function_null_v2.h} (67%)
create mode 100644 be/src/vec/columns/column_execute_util.h
create mode 100644 be/src/vec/exec/format/table/paimon_cpp_reader.cpp
create mode 100644 be/src/vec/exec/format/table/paimon_cpp_reader.h
create mode 100644 be/src/vec/exec/format/table/paimon_doris_file_system.cpp
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/TransactionType.java =>
be/src/vec/exec/format/table/paimon_doris_file_system.h (80%)
create mode 100644 be/src/vec/exec/format/table/paimon_predicate_converter.cpp
create mode 100644 be/src/vec/exec/format/table/paimon_predicate_converter.h
delete mode 100644 be/src/vec/exec/format/table/paimon_sys_table_jni_reader.cpp
create mode 100644 be/src/vec/runtime/vfile_format_transformer_factory.cpp
copy be/src/{olap/column_mapping.h =>
vec/runtime/vfile_format_transformer_factory.h} (59%)
create mode 100644 be/src/vec/runtime/vjni_format_transformer.cpp
create mode 100644 be/src/vec/runtime/vjni_format_transformer.h
create mode 100644 be/src/vec/sink/writer/iceberg/viceberg_sort_writer.h
copy be/src/vec/{exec/format/table/paimon_sys_table_jni_reader.h =>
sink/writer/iceberg/vpartition_writer_base.h} (51%)
create mode 100644 be/src/vec/sink/writer/maxcompute/vmc_partition_writer.cpp
rename be/src/vec/{exec/format/table/paimon_sys_table_jni_reader.h =>
sink/writer/maxcompute/vmc_partition_writer.h} (54%)
create mode 100644 be/src/vec/sink/writer/maxcompute/vmc_table_writer.cpp
create mode 100644 be/src/vec/sink/writer/maxcompute/vmc_table_writer.h
create mode 100644 be/src/vec/sink/writer/vtvf_table_writer.cpp
create mode 100644 be/src/vec/sink/writer/vtvf_table_writer.h
create mode 100644 be/test/cloud/cloud_cluster_info_test.cpp
create mode 100644 be/test/common/config_on_update_test.cpp
create mode 100644 be/test/common/logconfig_test.cpp
create mode 100644 be/test/io/cache/block_file_cache_downloader_test.cpp
create mode 100644 be/test/io/cache/fs_file_cache_storage_leak_cleaner_test.cpp
create mode 100644 be/test/olap/compaction_file_cache_test.cpp
create mode 100644
be/test/olap/rowset/segment_v2/inverted_index/query_v2/phrase_prefix_query_test.cpp
create mode 100644
be/test/olap/rowset/segment_v2/inverted_index/query_v2/prefix_query_test.cpp
create mode 100644
be/test/olap/rowset/segment_v2/inverted_index/query_v2/regexp_wildcard_lowercase_test.cpp
create mode 100644
be/test/olap/rowset/segment_v2/inverted_index/query_v2/union_postings_test.cpp
create mode 100644
be/test/olap/rowset/segment_v2/search_function_query_cache_test.cpp
create mode 100644 be/test/olap/variant_doc_mode_compaction_test.cpp
create mode 100644 be/test/udf/python/python_env_test.cpp
create mode 100644 be/test/udf/python/python_server_test.cpp
create mode 100644 be/test/udf/python/python_udf_meta_test.cpp
create mode 100644 be/test/udf/python/python_udf_runtime_test.cpp
create mode 100644 be/test/vec/columns/column_execute_util_test.cpp
create mode 100644 be/test/vec/exec/format/table/paimon_cpp_reader_test.cpp
create mode 100644 be/test/vec/exprs/score_runtime_test.cpp
create mode 100644
be/test/vec/function/function_array_cosine_similarity_test.cpp
create mode 100644 cloud/test/compaction_rw_separation_test.cpp
create mode 100644 common/cpp/private_member_accessor.hpp
create mode 100644
docker/thirdparties/docker-compose/iceberg/scripts/create_preinstalled_scripts/iceberg/run26.sql
create mode 100644
docker/thirdparties/docker-compose/iceberg/scripts/create_preinstalled_scripts/paimon/run11.sql
create mode 100644
fe/be-java-extensions/java-common/src/main/java/org/apache/doris/common/jni/JniWriter.java
create mode 100644
fe/be-java-extensions/java-common/src/main/resources/log4j2.xml
copy fe/be-java-extensions/{max-compute-scanner => java-writer}/pom.xml (65%)
create mode 100644
fe/be-java-extensions/java-writer/src/main/java/org/apache/doris/writer/LocalFileJniWriter.java
copy fe/be-java-extensions/{max-compute-scanner =>
java-writer}/src/main/resources/package.xml (100%)
rename fe/be-java-extensions/{max-compute-scanner =>
max-compute-connector}/pom.xml (93%)
rename fe/be-java-extensions/{max-compute-scanner =>
max-compute-connector}/src/main/java/org/apache/doris/maxcompute/MaxComputeColumnValue.java
(100%)
rename fe/be-java-extensions/{max-compute-scanner =>
max-compute-connector}/src/main/java/org/apache/doris/maxcompute/MaxComputeJniScanner.java
(100%)
create mode 100644
fe/be-java-extensions/max-compute-connector/src/main/java/org/apache/doris/maxcompute/MaxComputeJniWriter.java
rename fe/be-java-extensions/{max-compute-scanner =>
max-compute-connector}/src/main/resources/package.xml (92%)
delete mode 100644
fe/be-java-extensions/paimon-scanner/src/main/java/org/apache/doris/paimon/PaimonSysTableJniScanner.java
create mode 100644 fe/fe-authentication/fe-authentication-api/README.md
create mode 100644 fe/fe-authentication/fe-authentication-api/pom.xml
create mode 100644
fe/fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationBinding.java
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/WriteRecordRequest.java
=>
fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationException.java}
(53%)
create mode 100644
fe/fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationIntegration.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationRequest.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationResult.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/BasicPrincipal.java
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/WriteRecordRequest.java
=>
fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/CredentialType.java}
(53%)
create mode 100644
fe/fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/Principal.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/test/java/org/apache/doris/authentication/AuthenticationExceptionTest.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/test/java/org/apache/doris/authentication/AuthenticationIntegrationTest.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/test/java/org/apache/doris/authentication/AuthenticationRequestTest.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/test/java/org/apache/doris/authentication/AuthenticationResultTest.java
create mode 100644
fe/fe-authentication/fe-authentication-api/src/test/java/org/apache/doris/authentication/BasicPrincipalTest.java
create mode 100644 fe/fe-authentication/fe-authentication-handler/pom.xml
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/main/java/org/apache/doris/authentication/handler/AuthenticationOutcome.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/main/java/org/apache/doris/authentication/handler/AuthenticationPluginManager.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/main/java/org/apache/doris/authentication/handler/AuthenticationService.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/main/java/org/apache/doris/authentication/handler/BindingRegistry.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/main/java/org/apache/doris/authentication/handler/BindingResolver.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/main/java/org/apache/doris/authentication/handler/IntegrationRegistry.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/test/java/org/apache/doris/authentication/handler/AuthenticationOutcomeTest.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/test/java/org/apache/doris/authentication/handler/AuthenticationPluginManagerTest.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/test/java/org/apache/doris/authentication/handler/AuthenticationServiceTest.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/test/java/org/apache/doris/authentication/handler/BindingRegistryTest.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/test/java/org/apache/doris/authentication/handler/BindingResolverTest.java
create mode 100644
fe/fe-authentication/fe-authentication-handler/src/test/java/org/apache/doris/authentication/handler/IntegrationRegistryTest.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/README.md
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/pom.xml
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/main/java/org/apache/doris/authentication/plugin/ldap/LdapAuthenticationPlugin.java
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/FetchRecordRequest.java
=>
fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/main/java/org/apache/doris/authentication/plugin/ldap/LdapAuthenticationPluginFactory.java}
(52%)
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/main/java/org/apache/doris/authentication/plugin/ldap/LdapClient.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/main/resources/META-INF/services/org.apache.doris.authentication.spi.AuthenticationPluginFactory
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/test/java/org/apache/doris/authentication/plugin/ldap/LdapAuthenticationPluginFactoryTest.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/test/java/org/apache/doris/authentication/plugin/ldap/LdapAuthenticationPluginIntegrationTest.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/test/java/org/apache/doris/authentication/plugin/ldap/LdapAuthenticationPluginTest.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/test/java/org/apache/doris/authentication/plugin/ldap/LdapClientTest.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/test/java/org/apache/doris/authentication/plugin/ldap/TestUtils.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-ldap/src/test/resources/test-ldap-data.ldif
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/README.md
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/pom.xml
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/src/main/java/org/apache/doris/authentication/plugin/password/PasswordAuthenticationPlugin.java
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/WriteRecordRequest.java
=>
fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/src/main/java/org/apache/doris/authentication/plugin/password/PasswordAuthenticationPluginFactory.java}
(51%)
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/src/main/java/org/apache/doris/authentication/plugin/password/PasswordHasher.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/src/main/resources/META-INF/services/org.apache.doris.authentication.spi.AuthenticationPluginFactory
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/src/test/java/org/apache/doris/authentication/plugin/password/PasswordAuthenticationPluginFactoryTest.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/src/test/java/org/apache/doris/authentication/plugin/password/PasswordAuthenticationPluginTest.java
create mode 100644
fe/fe-authentication/fe-authentication-plugins/fe-authentication-plugin-password/src/test/java/org/apache/doris/authentication/plugin/password/PasswordHasherTest.java
copy fe/{be-java-extensions =>
fe-authentication/fe-authentication-plugins}/pom.xml (54%)
create mode 100644 fe/fe-authentication/fe-authentication-spi/README.md
copy fe/{be-java-extensions =>
fe-authentication/fe-authentication-spi}/pom.xml (52%)
create mode 100644
fe/fe-authentication/fe-authentication-spi/src/main/java/org/apache/doris/authentication/spi/AuthenticationPlugin.java
create mode 100644
fe/fe-authentication/fe-authentication-spi/src/main/java/org/apache/doris/authentication/spi/AuthenticationPluginFactory.java
create mode 100644
fe/fe-authentication/fe-authentication-spi/src/test/java/org/apache/doris/authentication/spi/AuthenticationPluginContractTest.java
create mode 100644
fe/fe-authentication/fe-authentication-spi/src/test/java/org/apache/doris/authentication/spi/AuthenticationPluginFactoryContractTest.java
copy fe/{be-java-extensions => fe-authentication}/pom.xml (56%)
copy
fe/fe-common/src/main/java/org/apache/doris/job/cdc/request/{JobBaseRecordRequest.java
=> CommitOffsetRequest.java} (69%)
delete mode 100644
fe/fe-core/src/main/java/org/apache/doris/analysis/AbstractBackupTableRefClause.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/catalog/TabletSlidingWindowAccessStats.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/common/GlobRegexUtil.java
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/JobBaseRecordRequest.java
=>
fe-core/src/main/java/org/apache/doris/datasource/CatalogScopedCacheMgr.java}
(52%)
delete 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/maxcompute/MCTransaction.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/maxcompute/MaxComputeMetadataOps.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/metacache/CacheSpec.java
delete mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonMetadataCacheMgr.java
delete mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonSnapshotCacheKey.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonSysExternalTable.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonTableCacheValue.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/paimon/PaimonUtils.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/systable/NativeSysTable.java
delete mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/systable/SupportedSysTables.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/systable/SysTableResolver.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/systable/TvfSysTable.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/insertoverwrite/AbstractInsertOverwriteManager.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/insertoverwrite/RemoteInsertOverwriteManager.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundMaxComputeTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/analyzer/UnboundTVFTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/implementation/LogicalMaxComputeTableSinkToPhysicalMaxComputeTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/rules/implementation/LogicalTVFTableSinkToPhysicalTVFTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/executable/ArrayArithmetic.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> CosineSimilarity.java} (61%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayHour.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayHourSub.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayMicrosecond.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayMicrosecondAdd.java} (50%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayMicrosecondSub.java} (50%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayMinute.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayMinuteAdd.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DayMinuteSub.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DaySecond.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> DaySecondSub.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourMicrosecond.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourMicrosecondAdd.java} (50%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourMicrosecondSub.java} (50%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourMinute.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourMinuteAdd.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourMinuteSub.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourSecond.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourSecondAdd.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> HourSecondSub.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> MinuteMicrosecond.java} (64%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MinuteMicrosecondAdd.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MinuteMicrosecondSub.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> MinuteSecond.java} (64%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> MinuteSecondSub.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> PreviousDay.java} (59%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> SecondMicrosecond.java} (64%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SecondMicrosecondSub.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> StDistance.java} (63%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> StGeometryType.java} (71%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> StLength.java} (71%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> YearMonth.java} (69%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> YearMonthAdd.java} (52%)
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/{MicrosecondFromUnixtime.java
=> YearMonthSub.java} (52%)
delete mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/table/PaimonMeta.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/ScoreRangeInfo.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/ShowPythonPackagesCommand.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/ShowPythonVersionsCommand.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/info/SortFieldInfo.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/InsertIntoTVFCommand.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/MCInsertCommandContext.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/MCInsertExecutor.java
create mode 100755
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/insert/RemoteOlapInsertExecutor.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalMaxComputeTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/logical/LogicalTVFTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalMaxComputeTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/physical/PhysicalTVFTableSink.java
rename
fe/{be-java-extensions/java-common/src/main/java/org/apache/doris/common/jni/utils/Log4jOutputStream.java
=> fe-core/src/main/java/org/apache/doris/nereids/types/DataTypeUtils.java}
(53%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/planner/MaxComputeTableSink.java
create mode 100755
fe/fe-core/src/main/java/org/apache/doris/planner/RemoteOlapTableSink.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/planner/TVFTableSink.java
delete mode 100644
fe/fe-core/src/main/java/org/apache/doris/tablefunction/PaimonTableValuedFunction.java
copy
fe/fe-core/src/main/java/org/apache/doris/transaction/{TransactionType.java =>
MCTransactionManager.java} (62%)
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/analysis/ExprToSqlTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/catalog/TabletSlidingWindowAccessStatsTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/cloud/catalog/CloudTabletRebalancerTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/common/GlobRegexUtilTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/common/Log4jConfigTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/load/loadv2/LoadLoadingTaskTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/parser/SetPasswordParseTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/analysis/ExpressionAnalyzerVariantAutoCastTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/ExprIdRewriterTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/algebra/RepeatTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/commands/insert/InsertIntoTableCommandTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/types/VariantFieldMatchTest.java
create mode 100644 fe/fe-extension-loader/README.md
copy fe/{be-java-extensions => fe-extension-loader}/pom.xml (53%)
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/ChildFirstClassLoader.java
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/ClassLoadingPolicy.java
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/DirectoryPluginRuntimeManager.java
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/LoadFailure.java
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/LoadReport.java
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/PluginHandle.java
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/PluginLoader.java
create mode 100644
fe/fe-extension-loader/src/main/java/org/apache/doris/extension/loader/package-info.java
create mode 100644 fe/fe-extension-spi/README.md
copy fe/{be-java-extensions => fe-extension-spi}/pom.xml (53%)
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/FetchRecordRequest.java
=> fe-extension-spi/src/main/java/org/apache/doris/extension/spi/Plugin.java}
(65%)
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/JobBaseRecordRequest.java
=>
fe-extension-spi/src/main/java/org/apache/doris/extension/spi/PluginContext.java}
(60%)
copy
fe/{fe-core/src/main/java/org/apache/doris/transaction/TransactionType.java =>
fe-extension-spi/src/main/java/org/apache/doris/extension/spi/PluginException.java}
(72%)
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/WriteRecordRequest.java
=>
fe-extension-spi/src/main/java/org/apache/doris/extension/spi/PluginFactory.java}
(52%)
copy
fe/{fe-common/src/main/java/org/apache/doris/job/cdc/request/FetchRecordRequest.java
=>
fe-extension-spi/src/main/java/org/apache/doris/extension/spi/package-info.java}
(56%)
create mode 100644
fs_brokers/cdc_client/src/main/java/io/debezium/connector/postgresql/connection/PostgresReplicationConnection.java
copy
fe/fe-common/src/main/java/org/apache/doris/job/cdc/request/WriteRecordRequest.java
=>
fs_brokers/cdc_client/src/main/java/org/apache/doris/cdcclient/sink/LoadStatistic.java
(62%)
create mode 100644 regression-test/data/alter_p0/test_alter_column_char.out
create mode 100644
regression-test/data/ann_index_p0/ann_range_search_nullable_literal.out
create mode 100644
regression-test/data/external_table_p0/iceberg/write/test_iceberg_write_stats2.out
create mode 100644
regression-test/data/external_table_p0/paimon/paimon_data_system_table.out
create mode 100644
regression-test/data/external_table_p0/remote_doris/test_insert_remote_doris_as_olap_table_select.out
create mode 100644
regression-test/data/external_table_p0/tvf/insert/test_insert_into_hdfs_tvf.out
create mode 100644
regression-test/data/external_table_p0/tvf/insert/test_insert_into_local_tvf.out
create mode 100644
regression-test/data/external_table_p0/tvf/insert/test_insert_into_s3_tvf.out
create mode 100644
regression-test/data/external_table_p2/maxcompute/test_max_compute_create_table.out
create mode 100644
regression-test/data/external_table_p2/maxcompute/write/test_mc_write_ctas.out
create mode 100644
regression-test/data/external_table_p2/maxcompute/write/test_mc_write_insert.out
create mode 100644
regression-test/data/external_table_p2/maxcompute/write/test_mc_write_large_data.out
create mode 100644
regression-test/data/external_table_p2/maxcompute/write/test_mc_write_partitions.out
create mode 100644
regression-test/data/external_table_p2/maxcompute/write/test_mc_write_static_partitions.out
create mode 100644
regression-test/data/external_table_p2/maxcompute/write/test_mc_write_types.out
create mode 100644
regression-test/data/inverted_index_p0/test_bm25_score_range_filter.out
create mode 100644
regression-test/data/inverted_index_p0/test_empty_string_match.out
create mode 100644 regression-test/data/inverted_index_p0/test_omit_norms.out
rename regression-test/data/{export_p2/test_outfile_p2.out =>
job_p0/streaming_job/cdc/test_streaming_mysql_job_errormsg.out} (72%)
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_partition.out
create mode 100644
regression-test/data/load_p0/routine_load/test_routine_load_with_aes_encrypt.out
create mode 100644
regression-test/data/load_p0/stream_load/test_stream_load_aes_encrypt.csv
create mode 100644
regression-test/data/load_p0/stream_load/test_stream_load_with_aes_encrypt.out
create mode 100644
regression-test/data/nereids_p0/sql_functions/datetime_functions/test_add_sub_union_type.out
create mode 100644
regression-test/data/nereids_syntax_p0/distribute/set_operation_colocate.out
copy regression-test/data/{query_p0/join/test_left_join1.out =>
nereids_syntax_p0/test_table_name_with_dollar.out} (59%)
create mode 100644
regression-test/data/pythonudf_complex_p0/test_python_udaf_complex.out
create mode 100644
regression-test/data/pythonudf_complex_p0/test_python_udf_business_logic.out
create mode 100644
regression-test/data/pythonudf_complex_p0/test_python_udf_external_api.out
create mode 100644
regression-test/data/pythonudf_complex_p0/test_python_udf_nlp_chinese.out
create mode 100644
regression-test/data/pythonudf_complex_p0/test_python_udtf_complex.out
create mode 100644
regression-test/data/query_p0/sql_functions/string_functions/test_previous_day.out
create mode 100644 regression-test/data/search/test_search_dsl_operators.out
create mode 100644
regression-test/data/search/test_search_multi_analyzer_lucene.out
create mode 100644 regression-test/data/search/test_search_regexp_lowercase.out
create mode 100644
regression-test/data/search/test_search_variant_dual_index_reader.out
create mode 100644
regression-test/data/search/test_search_variant_subcolumn_analyzer.out
create mode 100644 regression-test/data/search/test_search_variant_wildcard.out
create mode 100644
regression-test/data/unique_with_mow_p0/partial_update/test_partial_update_multi_stmt.out
create mode 100644
regression-test/data/variant_p0/predefine/test_schema_template_auto_cast.out
create mode 100644 regression-test/suites/account_p0/test_set_password.groovy
create mode 100644
regression-test/suites/alter_p0/test_alter_column_char.groovy
create mode 100644
regression-test/suites/ann_index_p0/ann_range_search_nullable_literal.groovy
create mode 100644
regression-test/suites/audit/test_audit_log_queue_time.groovy
create mode 100644
regression-test/suites/autobucket/test_modify_distribution_buckets.groovy
create mode 100644
regression-test/suites/cloud_p0/balance/test_active_tablet_priority_scheduling.groovy
create mode 100644
regression-test/suites/cloud_p0/compaction/test_cloud_alter_disable_auto_compaction.groovy
create mode 100644
regression-test/suites/cloud_p0/compaction_rw_separation/test_compaction_cluster_takeover.groovy
create mode 100644
regression-test/suites/cloud_p0/compaction_rw_separation/test_compaction_rw_separation.groovy
create mode 100644
regression-test/suites/cloud_p0/compaction_rw_separation/test_compaction_rw_separation_disabled.groovy
create mode 100644
regression-test/suites/cloud_p0/compaction_rw_separation/test_compaction_rw_separation_force.groovy
delete mode 100644 regression-test/suites/export_p2/test_outfile_p2.groovy
create mode 100644
regression-test/suites/external_table_p0/hive/test_orc_lazy_mat_profile.groovy
create mode 100644
regression-test/suites/external_table_p0/hive/test_parquet_lazy_mat_profile.groovy
create mode 100644
regression-test/suites/external_table_p0/iceberg/write/test_iceberg_write_stats2.groovy
create mode 100644
regression-test/suites/external_table_p0/paimon/paimon_data_system_table.groovy
create mode 100644
regression-test/suites/external_table_p0/paimon/test_paimon_table_meta_cache.groovy
create mode 100644
regression-test/suites/external_table_p0/remote_doris/test_insert_remote_doris_as_olap_table_select.groovy
create mode 100644
regression-test/suites/external_table_p0/tvf/insert/test_insert_into_hdfs_tvf.groovy
create mode 100644
regression-test/suites/external_table_p0/tvf/insert/test_insert_into_local_tvf.groovy
create mode 100644
regression-test/suites/external_table_p0/tvf/insert/test_insert_into_s3_tvf.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/test_max_compute_create_table.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/write/test_mc_write_ctas.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/write/test_mc_write_insert.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/write/test_mc_write_large_data.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/write/test_mc_write_partitions.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/write/test_mc_write_static_partitions.groovy
create mode 100644
regression-test/suites/external_table_p2/maxcompute/write/test_mc_write_types.groovy
create mode 100644
regression-test/suites/inverted_index_p0/test_bm25_score_range_filter.groovy
create mode 100644
regression-test/suites/inverted_index_p0/test_empty_string_match.groovy
create mode 100644
regression-test/suites/inverted_index_p0/test_omit_norms.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_metrics.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_partition.groovy
create mode 100644
regression-test/suites/load_p0/routine_load/test_routine_load_with_aes_encrypt.groovy
create mode 100644
regression-test/suites/load_p0/stream_load/test_stream_load_with_aes_encrypt.groovy
create mode 100644
regression-test/suites/nereids_p0/cte/subquery_in_cte/subquery_in_cte.groovy
create mode 100644
regression-test/suites/nereids_p0/show/test_show_python_packages_command.groovy
create mode 100644
regression-test/suites/nereids_p0/show/test_show_python_versions_command.groovy
create mode 100644
regression-test/suites/nereids_p0/sql_functions/datetime_functions/test_add_sub_union_type.groovy
create mode 100644
regression-test/suites/nereids_syntax_p0/distribute/set_operation_colocate.groovy
copy
fe/fe-common/src/main/java/org/apache/doris/job/cdc/request/JobBaseRecordRequest.java
=> regression-test/suites/nereids_syntax_p0/test_table_name_with_dollar.groovy
(55%)
create mode 100644
regression-test/suites/pythonudf_complex_p0/py_udf_complex_scripts/business_logic.py
create mode 100644
regression-test/suites/pythonudf_complex_p0/py_udf_complex_scripts/complex_udaf.py
create mode 100644
regression-test/suites/pythonudf_complex_p0/py_udf_complex_scripts/complex_udtf.py
create mode 100644
regression-test/suites/pythonudf_complex_p0/py_udf_complex_scripts/external_api.py
create mode 100644
regression-test/suites/pythonudf_complex_p0/py_udf_complex_scripts/nlp_chinese.py
create mode 100644
regression-test/suites/pythonudf_complex_p0/py_udf_complex_scripts/py_udf_complex.zip
create mode 100644
regression-test/suites/pythonudf_complex_p0/test_python_udaf_complex.groovy
create mode 100644
regression-test/suites/pythonudf_complex_p0/test_python_udf_business_logic.groovy
create mode 100644
regression-test/suites/pythonudf_complex_p0/test_python_udf_external_api.groovy
create mode 100644
regression-test/suites/pythonudf_complex_p0/test_python_udf_nlp_chinese.groovy
create mode 100644
regression-test/suites/pythonudf_complex_p0/test_python_udtf_complex.groovy
create mode 100644
regression-test/suites/query_p0/sql_functions/string_functions/test_previous_day.groovy
create mode 100644 regression-test/suites/search/test_search_cache.groovy
create mode 100644
regression-test/suites/search/test_search_dsl_operators.groovy
create mode 100644
regression-test/suites/search/test_search_field_group_query.groovy
copy regression-test/suites/search/{test_search_function.groovy =>
test_search_function.groovy.backup} (52%)
create mode 100644
regression-test/suites/search/test_search_multi_analyzer_lucene.groovy
create mode 100644
regression-test/suites/search/test_search_regexp_lowercase.groovy
create mode 100644
regression-test/suites/search/test_search_variant_dual_index_reader.groovy
create mode 100644
regression-test/suites/search/test_search_variant_subcolumn_analyzer.groovy
create mode 100644
regression-test/suites/search/test_search_variant_wildcard.groovy
create mode 100644
regression-test/suites/unique_with_mow_p0/partial_update/test_partial_update_multi_stmt.groovy
create mode 100644
regression-test/suites/variant_p0/predefine/test_schema_template_auto_cast.groovy
create mode 100755 thirdparty/download-prebuild-thirdparty.sh
create mode 100644 thirdparty/paimon-cpp-cache.cmake
create mode 100644 thirdparty/patches/libhdfs3-v2.3.9-hostname.patch
create mode 100644 thirdparty/patches/paimon-cpp-buildutils-static-deps.patch
create mode 100644 thirdparty/patches/snappy-1.1.10-sign-compare.patch
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]