This is an automated email from the ASF dual-hosted git repository. xuyang pushed a change to branch struct-type in repository https://gitbox.apache.org/repos/asf/doris.git
discard 4ab824250a save (#15908) omit d32456d603 save (#15906) omit 7f4de925d8 [feature](struct-type) adjust the vexpr for struct type (#15669) omit e1e8ca2a59 [fix](struct-type) struct create fix and add more struct codes (#15879) omit 2578bad186 [WIP](struct-type) support struct-type in vectorize engine (#15665) omit bebab27bc9 [feature](struct-type) add the class ColumnStruct and class DataTypeStruct implement (#14545) omit 14ec06a8d2 [test] (test) test modify branch (#14375) omit 2c7694e13b save omit 51ba9362f9 test add e651a9bb11 [feature](nereids) add variance function for nereids (#15370) add 79113b0cd1 [Fix](storage) Fix bug that cooldown time is error (#15444) add 9b371f6b0b [fix](web ui) fix fe web ui (#14887) add c54c2f8035 [fix](statistics) fix npe when __internal_schema not created (#15464) add bb305aa572 [chore](badges) Remove daily test badges for origin engine (#15482) add dda505487c [fix](nereids) SimplifyArithmeticRuleTest ut failed (#15486) add 6c847daba0 [Feature](Nereids) Support grouping set for materialized index. (#15383) add 3ff01ca799 [feature-wip](multi-catalog) support Iceberg time travel in external table (#15418) add 73f7ccb58f [typo](docs) fix document display error in SHOW-ALTER.md and SHOW-PARTITION-ID.md and SHOW-PARTITIONS.md (#15453) add 9a517d6a8f [DataType](Deciamlv3) change the avg function scale of decimalv3 (#15445) add edb9a3b58d [Bug](timediff) Fix wrong result for function `timediff` (#15312) add 85c7c531f1 [vectorized](jdbc) support array type in jdbc external table (#15303) add 2c8de30cce [optimize](multi-catalog) use dictionary encode&filter to process delete files (#15441) add 10be583e52 [chore](pipeline) optimize profile information (#15433) add 917b266799 [fix](planner) table valued function could not used in subquery (#15496) add 2339dcda05 [fix](icebergv2)update icebergv2 regression case (#15442) add 5c5b7a5c6f [Broker](bos) suppoert baidu bos object storage for broker (#15448) add 5db8b52441 [Fix](SparkLoad): fix the timeout aborted loadtasks are not cleaned up. (#15480) add 520b6d7910 [Improvement](decimalv3) Add a config to check overflow for DECIMALV3 (#15463) add 5ec4e5586f [refactor]remove seek block in segmentIterator (#15413) add 2704651fde [fix](nereids) hll and bitmap type can't be used as order by and group by exprs (#15471) add 9246e03932 [Enhancement](hdfs) make libhdfs3 compatible with hdfs2 server (#15497) add 2f572ccc43 [fix](index) fix that the last element of each batch will be read repeatedly for binary prefix page (#15481) add dec1eb360c [fix](brokerload) be core dump caused by broker load orc format file nullptr pointer (#15460) add 08d4dcefff [typo](doc)data partition doc including en and zh-CN #15379 add 93a25e1af5 [fix](nereids) the project node is lost when creating PhysicalStorageLayerAggregate node (#15467) add 34d7eeb571 [doc](session variable) add doc content for adding variables called rewrite_or_to_in_predicate_threshold (#15513) add a7895ba169 [feature](Nereids): Support variance_samp function. (#15500) add 084eec87ee [docs](docs)update en docs (#15470) add 8e58d92e77 [typo](docs) fix document info missing in SHOW-TABLETS.md (#15488) add ec52907b06 [fix](index) fix wrong dcheck in indexed column writer (#15520) add aeaa319203 [fix](fe)change session variable group_concat_max_len from int to long (#15515) add aacd11336a [typo](docs)update java udf demo (#15521) add b23d068281 [refactor](remove-non-vec) Remove non vec load from memtable and delta writer (#15517) add edecc2e706 [feature-wip](inverted index) API for inverted index reader and syntax for fulltext match (#14211) add ad68764977 [enhancement](tablet) Unify redundant `create_rowset_writer` methods (#15519) add 9c3c9db49b [enhancement](fuzzy test) support fuzzy test of RewriteOrToInPredicateThreshold #15469 add 9bba2f4cde [typo](docs) array function doc fix (#15449) add cc7a9d92ad [refactor](non-vec) remove non vec code for indexed column reader (#15409) add 100834df8b [fix](nereids) fix some arrgregate bugs in Nereids (#15326) add 96518db263 [enhencement](Nereids) remove constant expr constraint on OneRowRelation (#15506) add 781fa17993 [fix](Nereids) round function return type should be double (#15502) add c47bdf6606 [vectorized](jdbc) fix external table of oracle have keyworld column (#15487) add e89adc6e1d [fix](create-table) wrong judgement about partition column type (#15542) add 50f1931f96 [fix](multi-catalog) get dictionary-encode from parquet metadata (#15525) add 487d159a3d [improvement](test) add one case for hll (#15543) add 62f43c3314 [doc](thirdparty) update CHANGELOG, add libhdfs3 2.3.4 (#15539) add 3c2dee1d10 [fix](typo) Fix typo in variable name (#15538) add 7a433a19e6 [fix](typo) Fix typo in variable name (#15538) add ad9a67a76a [Bug](decimalv3) Fix wrong decimalv3 value after insertion (#15505) add 238ae54620 [fix](merge-on-write) unique key mow tables should require distribution columns be key column (#15535) add 5d145cf86f [fix](regression-test) fix duplicate columns in yandex_metrica_p2 case (#15489) add 87110ad3e3 [chore](Sink)remove useless OlapTablePartitionParam-related code (#15549) add 5062c62ee1 [chore](script) add build-for-release.sh (#15545) add 365c3eec16 [enhancement](compaction) vertical compaction support unique-key mow (#15353) add 40c53931e5 [fix](vec) VMergeIterator add key same label for agg table (#14722) add 14eaf41029 [refactor](remove rowblockv2) remove rowblock v2 structure (#15540) add 17286861ef [Fix](multi catalog)Skip non-vectorized init code for NewFileScanNode. #15550 add 57620f6f0d [bugfix](datetimev2) fix coredump when load datatime data to doris (#15510) add 31548cfe2a [fix](nereids) check failed that exchange node under agg must from PhysicalDistribute (#15473) add 02d035466b [refactor] remove partition pruner v1 (#15552) add ada72b055f [feature](Nereids): Support any_value/any function. (#15450) add 77fda4f749 [SpillToDisk](block reader and writer)Support spill to disk: implement interfaces for spill block and read block (#15399) add 9ab663212b [docs](muti-catalog) update external iceberg system doc (#15556) add 893f5f9345 [feature-wip](multi-catalog) support automatic sync hive metastore events (#15401) add 8748f65a1b [fix](nereids)support nulls first/last in order by clause (#15530) add b50448d5c4 [vectorized](udaf) fix udaf result is null when has multiple aggs (#15554) add 8a5f1351e2 [typo](doc) add be max jvm heap size config description (#15561) add caaae28b50 [docs](export) fix export data to object storage docs (#15563) add 1dabcb0111 [Fix](Nereids) fix except and intersect error for statsCalculator (#15557) add a365486a25 [fix](Nereids) get datatype for binary arithmetic (#15548) add 4380f1ec54 [Enhancement](load) reduce memory by memory size of global delta writer (#14491) add 85fe9d2496 [Bug](filter) fix not in(null) return true (#15466) add 55dc541c90 [Fix](Nereids) aggregate function except COUNT should nullable without group by expr (#15547) add 8d0c06c897 [fix](nereids) binding priority in agg-sort, having, group_by_key (#15240) add 1f07e54178 [typo](docs)fix logstash readme url (#15573) add 51a042eab3 [doc](yaml) update the label (#15575) add 18bc354c06 [fix](Nereids) use correct column unique id when read data from non-base index (#15534) add a97f582b93 [fix](nereids) use DAYS as default unit for DATE_ADD and DATE_SUB function (#15559) add eef1f432dd [Bug](datetimev2/decimalv3) Fix wrong predicate infer rule (#15574) add e5397efb67 [docs](releasenotes)release 1.2.1 (#15583) add f2f06c1acc [feature](nereids) Support select temp partition (#15579) add 7728794b4a [fix](Nereids) SimplifyArithmeticRule generate wrong expression after process (#15580) add 36e43c2677 fix 1.2.1 release notes (#15590) add 73d4070708 [bugfix](compaction) fix missing key_bounds in vertical compaction (#15578) add e0c56bcd20 [Feature](export) Support cancel export statement (#15128) add a4af1fbf90 [fix](inbitmap) forbid having clause to include in bitmap. (#15494) add c42c61dcad [fix](bitmapfilter) fix bitmap filter not pushing down (#15532) add 7ef3940809 [fix](storage-policy) fix some bug (#15585) add 4075e3aec6 [fix](csv-reader) fix new csv reader's performance issue (#15581) add 804ea08825 [add_log](checksum) add cost and size log for checksum (#15599) add e67ea1ddb7 [fix](doc): catalog use resource doc error (#15607) add 61d538c713 [improvement](storage-policy) Add check validity when create storage policy. (#14405) add 5ff5b8fc98 [feature](mark join) Support mark join for hash join node (#15569) add 93f5e440eb [Bug](execute) fix get next non stop for eos on streaming preagg (#15611) add 59f34be41f [fix](having-clause) having clause do not works correct with same alias name (#15143) add 1018657d9d [Enhancement](SparkLoad): avoid BE OOM in push task, fix #15572 (#15620) add 4f2a36f032 [project] update year in NOTICE.txt (#15632) add 0dfa143140 [enhancement](Nereids) generate colocate join when property is different with require property (#15479) add 6523b546ab [chore](vulnerability) fix some high risk vulnerabilities report by bug scanner (#15621) add 5ee479f45c [Pipeline](load) Support transaction on pipeline engine (#15597) add 5460c873e8 [Feature] (Nereids) support un equals conjuncts in un scalar sub query (#15591) add d36b93708c [feature](Nereids): add ExtractFilterFromJoin rule to support more (#14896) add 9d1f02c580 [Improvement](topn) runtime prune for topn query (#15558) add 77ffafb766 [vulnerability](CVE-2022-1292) fix CVE-2022-1292 (#15639) add 6d691edcc7 [fix](Nereids): restrict join reorder project. (#15645) add 95f2f43c02 [fix](macOS) Failed to run BE UT due to syscall to map cache into shared region failed (#15641) add b41934864e [enhancement](frontendservice) add retry when create connection to frontend service (#15635) add 05d72e8919 [fix](join) fix anti join incorrectly outputs null values (#15567) add b57500d0c3 [Bug](decimalv3) fix wrong result for MOD operation (#15644) add df2da89b89 [feature](multi-catalog) support postgresql jdbc catalog (#15570) add ef72b8d859 [Feature](Nereids): add logical operator || && (#15643) add ae77b582f0 [fix](Nereids) add information function and fix bugs in schemaScan (#15608) add 7f84db310a [fix](nereids) Convert to datetime when binary expr's left is date and right is int type (#15615) add f24659c003 [Refactor](pipeline) refactor the code of channel buffer limit and change the default value (#15650) add 1038093c29 [Pipeline](Exec) disable work steal of hash join build (#15652) add 9c36278c4a [improvement](pipeline) Support sharing hash table for broadcast join (#15628) add 53559e2bdc [fix](decimalv2) fix loss of precision when cast to decimalv2 literal (#15629) add cad47dd9d9 [test](Nereids) add two regression test cases for Nereids (#15598) add c18bfdc93e [test][regression cases][external]add external table p2 regression cases according doris1.2 docs 20230105 (#15651) add a6773417ef [Doc] Add sidebars for split_by_string function and delete split_by_char builtins code (#15679) add 08d439cde7 [feature](Nereids) add keyword rlike (#15647) add 9c8fcd805c [feature](Nereids) support variable type expression (#15659) add 76ad599fd7 [enhancement](histogram) optimise aggregate function histogram (#15317) add 5dfdacd278 [enhancement](histogram) add histogram syntax and perstist histogram statistics (#15490) add 054af036fe [typo](doc) fix Chinese describe (#15683) add ae1a77e034 add Q&A to jdbc external table (#15680) add a1d8177e33 [fix](test) remove unstable regression test (#15689) add 707eab9a63 [opt](multi-catalog) cache and reuse position delete rows in iceberg v2 (#15670) add 500c7fb702 [improvement](multi-catalog) support unsupported column type (#15660) add 90be1a22a9 [bugfix](vertical compaction) fix dcheck failed in MOW tablet (#15638) add 36590da24b [fix](regression p0) add the alias function hist to histogram and fix p0 (#15708) add f256bb8d39 [fix](meta) fix priv table load bug when upgrading to 1.2.x (#15706) add fb1f6bdd82 [doc](export) add docs for cancel-export. (#15682) add ba54634d55 [refactor] delete non vec load from memtable (#15667) add 663676ccfe fix(ui): 1. fix component/table can not change pageSize,affect system/query profile/session page etc. (#15533) add c57fa7c930 [Pipeline] Fix PipScannerContext::can_finish return wrong status (#15259) add 6829d361cb [Feature](audit) add errorCode and errorMessage in audit log (#14925) add 97cea9b5c9 [improvement](bdbje) add more log to make bdbje DatabaseNotFoundException problem easily solved (#15715) add 1514b5ab5c [Feature](Materialized-View) support advanced Materialized-View (#15212) add 211cc66d02 [fix](multi-catalog) fix image loading failture when create catalog with resource (#15692) add 699bf972e2 [Bug](bitmap) Fix bitmap_from_string for null constant (#15698) add 93b941baeb [fix](tvf) use virtual-hosted style when s3('uri'='s3://xxx') (#15617) add 4f2bea86ee [fix](Nereids) divide operator return type is not same with lagecy planner (#15707) add 4c50c4906b [fix](Nereids) add implicit casting for arithmetic expression (#15630) add 2c9c7c48ac [improvement](decimalv3) Java UDF and array type support DECIMALV3 (#15674) add e2492cf7fc [Bug](DECIMALV3) Fix binary predicate between decimalv3 and float (#15696) add 7543d677fa [fix](nereids) Fix the bugs of data distribution calculation on OlapScan (#15699) add 5ceb5441f4 [feature](nereids) let set operation syntax campatible with lagecy planner (#15664) add 67ceb83294 [enhance](Nereids): polish test format, add more comment. (#15662) add 2b0e5e42a5 [ehancement](nereids) Support list parttion prune (#15724) add 05f6e4c48a [fix](predicate) fix be core dump caused by pushing down the double column predicate (#15693) add ab186a60ce [enhancement](compaction) Optimize judging delete rowset and picking candidate rowsets for compaction #15631 add 9e3a61989b [refactor](es) remove BE generated dsl for es query #15751 add 67a6ad648e [typo](doc) command of manually trigger compaction incorrect (#15709) add 3990a44aba [typo](doc) add since dev lable to field function doc (#15648) add 9c0f96883a [fix](hashjoin) Fix right join pull output block memory overflow (#15440) add c19e391d32 [fix](profile) show query profile for pipeline engine (#15687) add fd7d13d4c0 [typo](docs)Update dynamic-partition.md #15734 add d0e8f84279 [feature](vectorized) Support MemoryScratchSink on vectorized engine (#15612) add 601d9af23b [fix](planner) disconjunct in sub-query failed when plan it on hash join (#15653) add 025623a124 [feature](Nereids) Support lots of aggregate functions (#15671) add 1888aba301 [fix](MTMV) fix replayReplaceTable error when restart fe (#15564) add dec79c000b [fix](MTMV) build mode is missing after restart FE (#15551) add f17d69e450 [feature](file cache)Import `file cache` for remote file reader (#15622) add ec0a9647f1 [typo](docs)Update sequence-column-manual.md #15727 add 47097a3db8 [fix](having) revert 15143 and fix having clause with multi-conditions (#15745) add c3da5a687a [fix]fixed dangerous usage of namespace std (#15741) add 672d11522b [regression](flink)add flink doris connector case (#15676) add 503b6ee4da [chore](vulnerability) fix fe high risk vulnerability scanned by bug scanner (#15649) add a67cea2d27 [Enhancement](metric) add current edit log metric (#15657) add bb28144c76 [fix](schema change) bugfix for light schema change while with rollup (#15681) add 7767931aca [ehancement](nereids) let parser support utf8 identifier (#15721) add fec89ad58c [fix](nereids) week should be able to recognized as function name in function call context (#15735) add 542542a4b2 [fix](nereids) fix bug in estimation of min/max of Year (#15712) add 90a92f0643 [feature-wip](multi-catalog) add iceberg tvf to read snapshots (#15618) add 79b24cdb1f [fix](JdbcResource) fix that JdbcResource does not support the jdbcurl of Oracle and SQLServer (#15757) add ab2e0fd397 [fix](tvf) cancel strict restrictions on tvf parameters (#15764) add 4be54cfcac [deps](hdfs) update libhdfs3 to v2.3.5 to support KMS (#15770) add 5dc644769a [mtmv](regression-test) add mtmv write data regression test (#15546) add f5b0f5e01a [chore](macOS) Don't build useless third-party stuff (#15763) add 280603b253 [fix](nereids) bind sort key priority problem (#15646) add c87a9a5949 [fix](Nereids) Add varchar literal compare (#15672) add bc34a44f06 [Fix](Nereids) fix type coercion for binary arithmetic (#15185) add 124c8662e8 [Bug](schema scanner) Fix wrong type in schema scanner (#15768) add 4bbc93b7ce [refactor](hashtable) simplify template args of partitioned hash table (#15736) add 8f31a36429 [feature] support spill to disk for sort node (#15624) add 89c21af87d [chore](fe) update fe snapshot to 1.2 and fix auditloader compile error (#15787) add 5b10116eca [chore](thirdparty) fix bug that GSSAPI of libgsasl is disabled (#15753) add d857b4af1b [refactor](remove row batch) remove impala rowbatch structure (#15767) add 3fec5ff0f5 [refactor](scan-pool) move scan pool from env to scanner scheduler (#15604) add f5948eb4b0 [Build](cmake) Uniform capitalization keyword of cmake (#15728) add fe5e5d2bf4 [refactor] separate agg and flush in memtable (#15713) add 5c2a38d2a1 [chore](thirdparty) Fix the md5sum of the package brpc-1.2.0.tar.gz (#15789) add 870b5c44e6 [fix](compile) compile failed in Mac with clang14 (#15661) add 3c8c31a5f8 [chore](Session) remove unused codes for enable_lateral_view add 2587095811 [Bug](mv) fix mv selector check group expr && forbid create dup mv with bitmap/hll && add some case (#15738) add 94f6380137 [enhance](Nereids): github action forgot some nereids file. (#15746) add af3416ede0 [docs] Update be-vscode-dev.md (#15800) add 7f2c433e08 [feature](Nereids) add relation id to unboundTVFRelation to avoid incorrect group expression comparison (#15740) add 006b3bd61a [fix](nereids) orthogonal_bitmap_intersect's return type should be bitmap (#15784) add 98d69d1568 [fix](compile) fix vscan node compile error (#15805) add 4424874237 [fix](Nereids): move parentExpression in moveOwnership() (#15786) add 18a3b75626 [fix](QueryDetail) fix QueryDetail may be incorrect and null pointer exception (#15765) add d4e4e18b47 [fix](DOE): Fix query _id error and es properties error (#15792) add cfb110c905 [fix](nereids) fix some nereids bugs (#15714) add a2607141a2 [chore](docs) improve docs for ALTER-TABLE-COLUMN #15758 add 330ed9a84c [fix](Nereids) toSql is not work well in non-query statement (#15752) add ea1493d946 [fix](Nereids) can not parse left and right function (#15655) add 88a2088c1d [feature](Nereids) parse pipe_concat symbol as concat when sql mode set to PIPES_AS_CONCAT (#15775) add 99e5ca937a [doc](multi-catalog)hms event sync (#15809) add 8841988b46 [typo](docs) Optimize FE minor version upgrade document (#15822) add f3ef3f7e15 [fix](sink) fix memory leak in VNodeChannel (#15834) (#15835) add 791604ba1f [log](vlog) improve vlog print for query TExecPlanFragmentParams (#15806) add 640e451b53 [typo](doc) add hot partition caution (#15825) add ea0ef0d880 [fix](session-variable) repeat_max_num should be forwarded (#15840) add b86e781727 [testcase](index)change wait timeout from 1m to 2m in index_meta testcase #15838 add 39697bb83e [fix](Nereids) make the type of the first parameter in window_funnel is intergerLike (#15810) add 92dd7c442a [enhancement](unique key) disable concurrent flush memtable for unique key (#15802) add b893c0efd8 [typo](doc)any_value add 1.2 label #15827 add 8c47c57264 [regression-test](array) fix abnormal test on function array_intersect (#15848) add 7441b4dc96 [Feature](function) Support width_bucket function (#14396) add e48d715a3b [typo](doc) add hive catalog faq related to kerberos and hdfs (#15826) add ef0e0cf68d [enhancement](load) refine the reduce memory policy when process memory is nearly full (#15685) add 0fbdf8e3e1 [Refactor](table function) Decouple vectorized table functions from non-vectorized ones (#15772) add d23646793c [fix](nereids) binding group by key on agg.output if output is slot (#15623) add be110ffaf6 [thirdparty](clucene) add clucene deps for doris inverted index (#15807) add 14e3879c4b [regression-test](MTMV) Make the case test_create_mtmv more robust (#15866) add 9d41994c17 [opt](Nereids) throw exception when aliasedQuery has no alias(#15854) add a7af869bfd [opt](Nereids) group_concat to support more cases (#15815) add 174e5e601f [refactor](rpc fn) decouple vectorized remote function from row-based one (#15871) add 730571e386 [fix](sort spill) fix bug of failed to create spilled file (#15864) add bae29157aa [fix](olap) dictionary cannot be sorted after inserting some null values (#15829) add 16862d9b43 [refactor](remove unused code) remove buffer pool and disk io mgr (#15853) add 688a0bb96a [feature](multi-catalog) support clickhouse jdbc catalog (#15780) add 9468711f9f [Bug](join) fix bug null aware left anti join not correct result (#15841) add b1fb1277dd [fix](bitmap) fix bitmap iterator comparison error (#15779) add 5e59954531 [typo](docs)Update ARRAY.md (#15781) add 34bb9cd5d3 [fix](parquet-reader) fix coredump when load datatime data to doris from parquet (#15794) add 67378a2dc3 [fix](nereids) fix bug in SequenceFunction legality check (#15812) add c1963e799a [fix](nereids)upgrade signature datatype bug (#15867) add a8dacfbfd9 [opt](planner) return bigint literal when cast date literal to bigint type (#15613) add 1489e3cfbf [Fix](file system) Make the constructor of `XxxFileSystem` a private method (#15889) add e979cc444a [improvement](multi-catalog) support hive 1.x (#15886) add 049f8ad2f9 [Bug](sort)fix merge sorter might div zero when block bytes less than block rows (#15859) add 514de605b6 [Bug](predicate) add double predicate creator (#15762) new d2d0960a3d test new 3d3d92f6c8 save new e2c95a9098 [test] (test) test modify branch (#14375) new 3904f1a8d1 [feature](struct-type) add the class ColumnStruct and class DataTypeStruct implement (#14545) new 550e5b23f0 [WIP](struct-type) support struct-type in vectorize engine (#15665) new 22b8866753 [fix](struct-type) struct create fix and add more struct codes (#15879) new 0d4da4f5f7 [feature](struct-type) adjust the vexpr for struct type (#15669) new 9b43fe8da1 save (#15906) new c5be8ec48e save (#15908) This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (4ab824250a) \ N -- N -- N refs/heads/struct-type (c5be8ec48e) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 9 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .asf.yaml | 6 - .github/workflows/labeler/scope-label-conf.yml | 1 + .github/workflows/scope-label.yml | 1 - NOTICE.txt | 2 +- README.md | 3 +- be/CMakeLists.txt | 30 +- be/src/agent/task_worker_pool.cpp | 18 +- be/src/common/config.h | 30 +- be/src/common/consts.h | 1 + be/src/common/daemon.cpp | 43 +- be/src/common/daemon.h | 5 +- be/src/common/status.h | 3 + be/src/exec/base_scanner.cpp | 40 +- be/src/exec/base_scanner.h | 4 +- be/src/exec/data_sink.cpp | 93 +- be/src/exec/es/es_predicate.cpp | 2 - be/src/exec/es/es_scroll_query.cpp | 17 +- be/src/exec/es/es_scroll_query.h | 1 - be/src/exec/exec_node.cpp | 307 +-- be/src/exec/exec_node.h | 16 - be/src/exec/olap_common.h | 91 +- be/src/exec/olap_utils.h | 86 + be/src/exec/parquet_scanner.cpp | 1 + .../exec/schema_scanner/schema_columns_scanner.cpp | 20 +- be/src/exec/table_connector.cpp | 291 ++- be/src/exec/table_connector.h | 8 +- be/src/exec/tablet_info.cpp | 304 --- be/src/exec/tablet_info.h | 120 +- be/src/exprs/CMakeLists.txt | 6 +- be/src/exprs/aggregate_functions.cpp | 4 +- be/src/exprs/create_predicate_function.h | 11 +- be/src/exprs/expr.cpp | 9 + be/src/exprs/hybrid_set.h | 7 +- be/src/exprs/match_predicate.cpp | 102 + be/src/exprs/match_predicate.h | 85 + be/src/exprs/runtime_filter.cpp | 76 +- .../exprs/table_function/dummy_table_functions.cpp | 66 - .../exprs/table_function/dummy_table_functions.h | 52 - be/src/exprs/table_function/explode_bitmap.cpp | 116 - be/src/exprs/table_function/explode_bitmap.h | 50 - be/src/exprs/table_function/explode_json_array.cpp | 189 -- be/src/exprs/table_function/explode_json_array.h | 135 - be/src/exprs/table_function/explode_split.cpp | 93 - be/src/exprs/table_function/explode_split.h | 49 - be/src/exprs/table_function/table_function.h | 127 - .../table_function/table_function_factory.cpp | 108 - .../exprs/table_function/table_function_factory.h | 50 - be/src/gutil/hash/hash.h | 12 +- be/src/gutil/strings/stringpiece.cc | 4 +- be/src/gutil/strings/stringpiece.h | 4 +- be/src/http/action/pad_rowset_action.cpp | 8 +- be/src/io/CMakeLists.txt | 6 + be/src/io/cache/block/block_file_cache.cpp | 125 + be/src/io/cache/block/block_file_cache.h | 252 ++ be/src/io/cache/block/block_file_cache_factory.cpp | 94 + be/src/io/cache/block/block_file_cache_factory.h | 59 + be/src/io/cache/block/block_file_cache_fwd.h | 37 + be/src/io/cache/block/block_file_cache_profile.cpp | 202 ++ be/src/io/cache/block/block_file_cache_profile.h | 115 + be/src/io/cache/block/block_file_cache_settings.h | 40 + be/src/io/cache/block/block_file_segment.cpp | 317 +++ be/src/io/cache/block/block_file_segment.h | 205 ++ be/src/io/cache/block/block_lru_file_cache.cpp | 844 ++++++ be/src/io/cache/block/block_lru_file_cache.h | 159 ++ .../io/cache/block/cached_remote_file_reader.cpp | 215 ++ be/src/io/cache/block/cached_remote_file_reader.h | 76 + be/src/io/cache/dummy_file_cache.h | 3 + be/src/io/cache/file_cache_manager.cpp | 6 +- be/src/io/cache/file_cache_manager.h | 2 +- be/src/io/cache/sub_file_cache.cpp | 2 +- be/src/io/cache/sub_file_cache.h | 3 + be/src/io/cache/whole_file_cache.cpp | 3 +- be/src/io/cache/whole_file_cache.h | 3 + be/src/io/file_factory.cpp | 64 +- be/src/io/file_factory.h | 24 +- be/src/io/fs/broker_file_reader.cpp | 27 +- be/src/io/fs/broker_file_reader.h | 9 +- be/src/io/fs/broker_file_system.cpp | 14 +- be/src/io/fs/broker_file_system.h | 10 +- be/src/io/fs/file_reader.h | 6 +- be/src/io/fs/file_reader_options.cpp | 10 +- be/src/io/fs/file_reader_options.h | 20 +- be/src/io/fs/file_system.h | 12 +- be/src/io/fs/hdfs_file_reader.cpp | 4 +- be/src/io/fs/hdfs_file_reader.h | 6 +- be/src/io/fs/hdfs_file_system.cpp | 20 +- be/src/io/fs/hdfs_file_system.h | 8 +- be/src/io/fs/local_file_reader.cpp | 8 +- be/src/io/fs/local_file_reader.h | 6 +- be/src/io/fs/local_file_system.cpp | 15 +- be/src/io/fs/local_file_system.h | 13 +- be/src/io/fs/remote_file_system.cpp | 21 +- be/src/io/fs/remote_file_system.h | 4 +- be/src/io/fs/s3_file_reader.cpp | 4 +- be/src/io/fs/s3_file_reader.h | 6 +- be/src/io/fs/s3_file_system.cpp | 13 +- be/src/io/fs/s3_file_system.h | 7 +- be/src/io/fs/stream_load_pipe.h | 3 + be/src/olap/CMakeLists.txt | 2 +- be/src/olap/aggregate_func.cpp | 9 +- be/src/olap/base_compaction.cpp | 5 +- be/src/olap/block_column_predicate.cpp | 1 - be/src/olap/column_predicate.h | 13 + be/src/olap/compaction.cpp | 21 +- be/src/olap/comparison_predicate.h | 46 + be/src/olap/cumulative_compaction.cpp | 5 +- be/src/olap/cumulative_compaction_policy.cpp | 18 +- be/src/olap/cumulative_compaction_policy.h | 9 - be/src/olap/data_dir.cpp | 2 +- be/src/olap/delta_writer.cpp | 94 +- be/src/olap/delta_writer.h | 9 +- be/src/olap/in_list_predicate.h | 41 +- be/src/olap/iterators.h | 19 + be/src/olap/memtable.cpp | 198 +- be/src/olap/memtable.h | 51 +- be/src/olap/memtable_flush_executor.cpp | 6 +- be/src/olap/merger.cpp | 23 +- be/src/olap/olap_common.h | 19 + be/src/olap/olap_define.h | 2 +- be/src/olap/options.cpp | 65 + be/src/olap/options.h | 17 + be/src/olap/predicate_creator.h | 24 +- be/src/olap/push_handler.cpp | 33 +- be/src/olap/push_handler.h | 1 + be/src/olap/reader.cpp | 7 + be/src/olap/reader.h | 2 + be/src/olap/row_block2.cpp | 682 ----- be/src/olap/row_block2.h | 162 -- be/src/olap/rowset/beta_rowset_reader.cpp | 3 +- be/src/olap/rowset/beta_rowset_reader.h | 1 - be/src/olap/rowset/beta_rowset_writer.cpp | 71 +- be/src/olap/rowset/beta_rowset_writer.h | 4 +- be/src/olap/rowset/rowset_meta.h | 11 +- be/src/olap/rowset/rowset_reader_context.h | 2 + be/src/olap/rowset/rowset_writer.h | 9 +- be/src/olap/rowset/rowset_writer_context.h | 33 +- .../olap/rowset/segment_v2/binary_prefix_page.cpp | 25 +- be/src/olap/rowset/segment_v2/binary_prefix_page.h | 6 +- .../olap/rowset/segment_v2/bitmap_index_reader.cpp | 13 +- .../segment_v2/bloom_filter_index_reader.cpp | 19 +- be/src/olap/rowset/segment_v2/column_reader.cpp | 35 + be/src/olap/rowset/segment_v2/column_reader.h | 23 +- .../rowset/segment_v2/empty_segment_iterator.cpp | 2 - .../rowset/segment_v2/indexed_column_reader.cpp | 35 + .../olap/rowset/segment_v2/indexed_column_reader.h | 3 + .../rowset/segment_v2/indexed_column_writer.cpp | 7 +- .../rowset/segment_v2/inverted_index_reader.cpp | 55 + .../olap/rowset/segment_v2/inverted_index_reader.h | 103 + be/src/olap/rowset/segment_v2/page_decoder.h | 4 +- be/src/olap/rowset/segment_v2/segment.cpp | 55 +- be/src/olap/rowset/segment_v2/segment.h | 3 + be/src/olap/rowset/segment_v2/segment_iterator.cpp | 236 +- be/src/olap/rowset/segment_v2/segment_iterator.h | 82 +- be/src/olap/rowset/segment_v2/zone_map_index.cpp | 17 +- be/src/olap/rowset/vertical_beta_rowset_writer.cpp | 4 +- be/src/olap/rowset/vertical_beta_rowset_writer.h | 2 +- be/src/olap/schema.cpp | 13 +- be/src/olap/schema.h | 2 + be/src/olap/schema_change.cpp | 67 +- be/src/olap/storage_policy_mgr.cpp | 11 +- be/src/olap/tablet.cpp | 129 +- be/src/olap/tablet.h | 29 +- be/src/olap/task/engine_batch_load_task.h | 2 - be/src/olap/task/engine_checksum_task.cpp | 8 +- be/src/olap/utils.cpp | 10 +- be/src/olap/utils.h | 16 + be/src/pipeline/CMakeLists.txt | 3 +- be/src/pipeline/exec/aggregation_source_operator.h | 2 +- be/src/pipeline/exec/assert_num_rows_operator.h | 2 +- be/src/pipeline/exec/const_value_operator.h | 2 +- be/src/pipeline/exec/empty_source_operator.cpp | 25 + be/src/pipeline/exec/empty_source_operator.h | 62 + be/src/pipeline/exec/hashjoin_build_sink.h | 2 +- be/src/pipeline/exec/hashjoin_probe_operator.h | 2 +- be/src/pipeline/exec/operator.h | 24 +- be/src/pipeline/exec/scan_operator.cpp | 6 +- be/src/pipeline/exec/set_probe_sink_operator.h | 2 +- be/src/pipeline/exec/set_sink_operator.h | 2 +- be/src/pipeline/exec/set_source_operator.h | 2 +- .../exec/streaming_aggregation_sink_operator.cpp | 6 +- be/src/pipeline/exec/union_sink_operator.cpp | 2 +- be/src/pipeline/exec/union_source_operator.cpp | 2 +- be/src/pipeline/pipeline.h | 19 +- be/src/pipeline/pipeline_fragment_context.cpp | 31 +- be/src/pipeline/pipeline_fragment_context.h | 6 + be/src/pipeline/pipeline_task.cpp | 61 +- be/src/pipeline/pipeline_task.h | 32 +- be/src/pipeline/task_queue.cpp | 23 +- be/src/pipeline/task_queue.h | 6 +- be/src/runtime/CMakeLists.txt | 12 +- be/src/runtime/block_spill_manager.cpp | 132 + be/src/runtime/block_spill_manager.h | 60 + be/src/runtime/bufferpool/buffer_allocator.cc | 744 ------ be/src/runtime/bufferpool/buffer_allocator.h | 241 -- be/src/runtime/bufferpool/buffer_pool.cc | 667 ----- be/src/runtime/bufferpool/buffer_pool.h | 466 ---- be/src/runtime/bufferpool/buffer_pool_counters.h | 43 - be/src/runtime/bufferpool/buffer_pool_internal.h | 299 --- be/src/runtime/bufferpool/free_list.h | 115 - be/src/runtime/bufferpool/suballocator.cc | 252 -- be/src/runtime/bufferpool/suballocator.h | 221 -- be/src/runtime/bufferpool/system_allocator.cc | 166 -- be/src/runtime/bufferpool/system_allocator.h | 49 - be/src/runtime/cache/result_cache.h | 1 - be/src/runtime/cache/result_node.h | 1 - be/src/runtime/client_cache.h | 29 +- be/src/runtime/collection_value.cpp | 50 + be/src/runtime/datetime_value.h | 4 +- be/src/runtime/decimalv2_value.h | 4 +- be/src/runtime/disk_io_mgr.cc | 1195 --------- be/src/runtime/disk_io_mgr.h | 837 ------ be/src/runtime/disk_io_mgr_internal.h | 455 ---- be/src/runtime/disk_io_mgr_reader_context.cc | 322 --- be/src/runtime/disk_io_mgr_scan_range.cc | 481 ---- be/src/runtime/exec_env.h | 31 +- be/src/runtime/exec_env_init.cpp | 79 +- be/src/runtime/fragment_mgr.cpp | 78 +- be/src/runtime/fragment_mgr.h | 10 +- be/src/runtime/load_channel.cpp | 42 +- be/src/runtime/load_channel.h | 47 +- be/src/runtime/load_channel_mgr.cpp | 177 +- be/src/runtime/load_channel_mgr.h | 30 +- be/src/runtime/plan_fragment_executor.cpp | 22 +- be/src/runtime/query_fragments_ctx.h | 8 +- be/src/runtime/row_batch.cpp | 507 ---- be/src/runtime/row_batch.h | 478 ---- be/src/runtime/runtime_predicate.cpp | 153 ++ be/src/runtime/runtime_predicate.h | 178 ++ be/src/runtime/runtime_state.h | 15 +- be/src/runtime/tablets_channel.cpp | 223 +- be/src/runtime/tablets_channel.h | 39 +- be/src/runtime/types.h | 3 + be/src/service/backend_service.cpp | 2 - be/src/service/doris_main.cpp | 39 + be/src/service/internal_service.cpp | 15 +- be/src/udf/udf_internal.h | 8 + be/src/util/CMakeLists.txt | 1 + be/src/util/arrow/block_convertor.cpp | 323 +++ be/src/util/arrow/block_convertor.h | 46 + be/src/util/arrow/row_batch.cpp | 351 +-- be/src/util/arrow/row_batch.h | 17 - be/src/util/arrow/row_block.cpp | 155 -- be/src/util/arrow/row_block.h | 11 - be/src/util/bitmap_value.h | 2 +- be/src/util/cityhash102/city.cc | 27 +- be/src/util/date_func.cpp | 21 + be/src/util/date_func.h | 2 + be/src/util/filesystem_util.h | 4 +- be/src/util/hash_util.hpp | 11 +- be/src/util/mustache/mustache.cc | 82 +- be/src/util/string_parser.hpp | 2 +- be/src/util/time.cpp | 44 +- be/src/util/uid_util.h | 6 +- be/src/vec/CMakeLists.txt | 11 + .../aggregate_function_histogram.cpp | 68 +- .../aggregate_function_histogram.h | 354 +-- .../aggregate_function_java_udaf.h | 4 +- be/src/vec/columns/column_const.cpp | 3 +- be/src/vec/columns/column_dictionary.h | 17 + be/src/vec/common/hash_table/hash_table.h | 8 +- .../vec/common/hash_table/partitioned_hash_map.h | 37 +- .../vec/common/hash_table/partitioned_hash_table.h | 33 +- be/src/vec/common/hex.cpp | 115 + be/src/vec/common/hex.h | 136 + be/src/vec/common/sort/heap_sorter.cpp | 11 + be/src/vec/common/sort/heap_sorter.h | 2 + be/src/vec/common/sort/sorter.cpp | 246 +- be/src/vec/common/sort/sorter.h | 102 +- be/src/vec/common/sort/topn_sorter.cpp | 39 +- be/src/vec/common/sort/topn_sorter.h | 4 +- be/src/vec/common/string_ref.h | 4 +- be/src/vec/common/strong_typedef.h | 4 +- be/src/vec/common/uint128.h | 46 +- be/src/vec/core/block.cpp | 14 +- be/src/vec/core/block.h | 19 +- be/src/vec/core/block_spill_reader.cpp | 136 + be/src/vec/core/block_spill_reader.h | 71 + be/src/vec/core/block_spill_writer.cpp | 147 ++ be/src/vec/core/block_spill_writer.h | 81 + be/src/vec/core/column_with_type_and_name.cpp | 2 +- be/src/vec/core/field.h | 3 + be/src/vec/core/sort_cursor.h | 26 +- be/src/vec/core/types.h | 8 +- be/src/vec/data_types/data_type_decimal.h | 33 +- be/src/vec/data_types/data_type_factory.cpp | 4 + be/src/vec/data_types/data_type_factory.hpp | 4 + be/src/vec/data_types/data_type_time.cpp | 52 + be/src/vec/data_types/data_type_time.h | 53 + be/src/vec/data_types/data_type_time_v2.cpp | 4 +- be/src/vec/data_types/data_type_time_v2.h | 8 +- .../vec/exec/data_gen_functions/vnumbers_tvf.cpp | 1 - be/src/vec/exec/format/csv/csv_reader.cpp | 79 +- be/src/vec/exec/format/csv/csv_reader.h | 18 +- .../file_reader/new_plain_binary_line_reader.cpp | 3 +- be/src/vec/exec/format/format_common.h | 60 + be/src/vec/exec/format/json/new_json_reader.cpp | 20 +- be/src/vec/exec/format/json/new_json_reader.h | 11 +- be/src/vec/exec/format/orc/vorc_reader.cpp | 21 +- be/src/vec/exec/format/orc/vorc_reader.h | 9 +- be/src/vec/exec/format/parquet/parquet_common.cpp | 56 + be/src/vec/exec/format/parquet/parquet_common.h | 21 +- be/src/vec/exec/format/parquet/schema_desc.cpp | 63 +- .../parquet/vparquet_column_chunk_reader.cpp | 4 + .../format/parquet/vparquet_column_chunk_reader.h | 1 + .../exec/format/parquet/vparquet_group_reader.cpp | 10 +- be/src/vec/exec/format/parquet/vparquet_reader.cpp | 35 +- be/src/vec/exec/format/parquet/vparquet_reader.h | 16 +- be/src/vec/exec/format/table/iceberg_reader.cpp | 331 ++- be/src/vec/exec/format/table/iceberg_reader.h | 43 +- be/src/vec/exec/join/join_op.h | 4 +- be/src/vec/exec/join/process_hash_table_probe.h | 6 +- .../vec/exec/join/process_hash_table_probe_impl.h | 121 +- be/src/vec/exec/join/vhash_join_node.cpp | 25 +- be/src/vec/exec/join/vhash_join_node.h | 12 + be/src/vec/exec/join/vjoin_node_base.cpp | 3 +- be/src/vec/exec/join/vnested_loop_join_node.cpp | 13 +- be/src/vec/exec/join/vnested_loop_join_node.h | 20 +- be/src/vec/exec/scan/new_es_scan_node.cpp | 90 +- be/src/vec/exec/scan/new_es_scan_node.h | 7 - be/src/vec/exec/scan/new_es_scanner.cpp | 4 +- be/src/vec/exec/scan/new_es_scanner.h | 3 +- be/src/vec/exec/scan/new_file_scan_node.cpp | 4 +- be/src/vec/exec/scan/new_file_scan_node.h | 2 + be/src/vec/exec/scan/new_jdbc_scan_node.cpp | 5 +- be/src/vec/exec/scan/new_jdbc_scanner.cpp | 6 +- be/src/vec/exec/scan/new_jdbc_scanner.h | 2 +- be/src/vec/exec/scan/new_odbc_scan_node.cpp | 3 +- be/src/vec/exec/scan/new_odbc_scanner.cpp | 4 +- be/src/vec/exec/scan/new_odbc_scanner.h | 2 +- be/src/vec/exec/scan/new_olap_scan_node.cpp | 6 + be/src/vec/exec/scan/new_olap_scan_node.h | 6 + be/src/vec/exec/scan/new_olap_scanner.cpp | 25 +- be/src/vec/exec/scan/new_olap_scanner.h | 1 - be/src/vec/exec/scan/pip_scanner_context.h | 6 +- be/src/vec/exec/scan/scanner_context.cpp | 14 +- be/src/vec/exec/scan/scanner_context.h | 4 +- be/src/vec/exec/scan/scanner_scheduler.cpp | 11 + be/src/vec/exec/scan/scanner_scheduler.h | 6 + be/src/vec/exec/scan/vfile_scanner.cpp | 37 +- be/src/vec/exec/scan/vfile_scanner.h | 15 +- be/src/vec/exec/scan/vmeta_scan_node.cpp | 68 + be/src/vec/exec/scan/vmeta_scan_node.h | 45 + be/src/vec/exec/scan/vmeta_scanner.cpp | 210 ++ be/src/vec/exec/scan/vmeta_scanner.h | 48 + be/src/vec/exec/scan/vscan_node.cpp | 63 +- be/src/vec/exec/scan/vscan_node.h | 5 + be/src/vec/exec/scan/vscanner.cpp | 3 +- be/src/vec/exec/scan/vscanner.h | 6 +- be/src/vec/exec/vaggregation_node.cpp | 13 +- be/src/vec/exec/vaggregation_node.h | 1 + be/src/vec/exec/vanalytic_eval_node.cpp | 1 - be/src/vec/exec/vbroker_scan_node.h | 2 +- be/src/vec/exec/vdata_gen_scan_node.cpp | 1 - be/src/vec/exec/vexchange_node.cpp | 5 +- be/src/vec/exec/vjdbc_connector.cpp | 217 +- be/src/vec/exec/vjdbc_connector.h | 36 +- be/src/vec/exec/vmysql_scan_node.cpp | 22 +- be/src/vec/exec/vrepeat_node.cpp | 8 +- be/src/vec/exec/vschema_scan_node.cpp | 17 +- be/src/vec/exec/vselect_node.cpp | 1 - be/src/vec/exec/vset_operation_node.h | 1 - be/src/vec/exec/vsort_node.cpp | 49 +- be/src/vec/exec/vsort_node.h | 4 + be/src/vec/exec/vtable_function_node.cpp | 8 +- be/src/vec/exec/vtable_function_node.h | 7 +- be/src/vec/exprs/table_function/table_function.h | 109 + .../table_function/table_function_factory.cpp | 82 + .../exprs/table_function/table_function_factory.h | 46 + be/src/vec/exprs/table_function/vexplode.h | 2 +- .../vec/exprs/table_function/vexplode_bitmap.cpp | 54 +- be/src/vec/exprs/table_function/vexplode_bitmap.h | 18 +- .../exprs/table_function/vexplode_json_array.cpp | 108 +- .../vec/exprs/table_function/vexplode_json_array.h | 91 +- be/src/vec/exprs/table_function/vexplode_numbers.h | 2 +- be/src/vec/exprs/table_function/vexplode_split.cpp | 8 + be/src/vec/exprs/table_function/vexplode_split.h | 21 +- be/src/vec/exprs/vcase_expr.cpp | 1 - be/src/vec/exprs/vectorized_fn_call.cpp | 4 +- be/src/vec/exprs/vexpr.cpp | 10 +- be/src/vec/exprs/vexpr.h | 4 + be/src/vec/exprs/vexpr_context.cpp | 2 + be/src/vec/functions/function_binary_arithmetic.h | 142 +- be/src/vec/functions/function_bitmap.cpp | 16 +- be/src/vec/functions/function_cast.h | 124 +- .../function_date_or_datetime_computation.h | 5 +- be/src/vec/functions/function_rpc.cpp | 505 +++- be/src/vec/functions/function_rpc.h | 42 +- be/src/vec/functions/function_running_difference.h | 3 +- be/src/vec/functions/function_string.h | 97 +- be/src/vec/functions/function_totype.h | 4 +- be/src/vec/functions/function_width_bucket.cpp | 142 + .../functions/functions_multi_string_position.cpp | 12 +- be/src/vec/functions/in.h | 22 +- be/src/vec/functions/match.cpp | 141 + be/src/vec/functions/simple_function_factory.h | 6 +- be/src/vec/olap/block_reader.cpp | 11 +- be/src/vec/olap/block_reader.h | 2 + be/src/vec/olap/vcollect_iterator.cpp | 5 + be/src/vec/olap/vertical_block_reader.cpp | 30 +- be/src/vec/olap/vertical_block_reader.h | 6 +- be/src/vec/olap/vertical_merge_iterator.cpp | 37 +- be/src/vec/olap/vertical_merge_iterator.h | 28 +- be/src/vec/olap/vgeneric_iterators.cpp | 9 +- be/src/vec/olap/vgeneric_iterators.h | 19 +- .../vec/runtime/shared_hash_table_controller.cpp | 18 + be/src/vec/runtime/shared_hash_table_controller.h | 6 + be/src/vec/runtime/vdata_stream_mgr.cpp | 6 +- be/src/vec/runtime/vdata_stream_mgr.h | 2 +- be/src/vec/runtime/vdata_stream_recvr.cpp | 3 +- be/src/vec/runtime/vdata_stream_recvr.h | 13 +- be/src/vec/runtime/vdatetime_value.h | 8 +- be/src/vec/runtime/vsorted_run_merger.cpp | 25 +- be/src/vec/runtime/vsorted_run_merger.h | 16 +- be/src/vec/sink/vjdbc_table_sink.cpp | 4 +- be/src/vec/sink/vjdbc_table_sink.h | 2 - be/src/vec/sink/vmemory_scratch_sink.cpp | 95 + be/src/vec/sink/vmemory_scratch_sink.h | 85 + be/src/vec/sink/vresult_file_sink.cpp | 1 - be/src/vec/sink/vtablet_sink.cpp | 14 +- be/src/vec/sink/vtablet_sink.h | 3 +- be/src/vec/utils/histogram_helpers.hpp | 270 ++ be/test/CMakeLists.txt | 16 +- be/test/exprs/binary_predicate_test.cpp | 1 - be/test/exprs/in_op_test.cpp | 1 - be/test/io/cache/file_block_cache_test.cpp | 544 ++++ be/test/io/cache/remote_file_cache_test.cpp | 2 +- be/test/olap/block_column_predicate_test.cpp | 1 - be/test/olap/cumulative_compaction_policy_test.cpp | 45 +- be/test/olap/delta_writer_test.cpp | 202 +- .../olap/engine_storage_migration_task_test.cpp | 20 +- be/test/olap/primary_key_index_test.cpp | 2 +- be/test/olap/remote_rowset_gc_test.cpp | 18 +- be/test/olap/rowid_conversion_test.cpp | 62 +- be/test/olap/rowset/beta_rowset_test.cpp | 2 +- .../rowset/segment_v2/binary_prefix_page_test.cpp | 138 + .../olap/rowset/segment_v2/bitmap_index_test.cpp | 3 +- .../bloom_filter_index_reader_writer_test.cpp | 2 +- .../segment_v2/column_reader_writer_test.cpp | 4 +- .../rowset/segment_v2/ordinal_page_index_test.cpp | 2 +- .../olap/rowset/segment_v2/zone_map_index_test.cpp | 6 +- be/test/olap/segcompaction_test.cpp | 1 + be/test/olap/tablet_cooldown_test.cpp | 18 +- be/test/runtime/array_test.cpp | 54 +- be/test/runtime/data_spliter_test.cpp | 1 - be/test/runtime/disk_io_mgr_test.cpp | 1069 -------- be/test/runtime/fragment_mgr_test.cpp | 1 - be/test/runtime/load_channel_mgr_test.cpp | 240 -- be/test/runtime/test_env.cc | 11 - be/test/runtime/test_env.h | 3 - be/test/tools/benchmark_tool.cpp | 7 +- be/test/util/bitmap_value_test.cpp | 10 +- .../vec/aggregate_functions/agg_histogram_test.cpp | 153 +- be/test/vec/core/block_spill_test.cpp | 469 ++++ be/test/vec/core/block_test.cpp | 1 - be/test/vec/exec/parquet/parquet_reader_test.cpp | 7 +- be/test/vec/exec/parquet/parquet_thrift_test.cpp | 20 +- be/test/vec/exec/vgeneric_iterators_test.cpp | 1 - be/test/vec/exec/vjson_scanner_test.cpp | 1 - be/test/vec/exec/vorc_scanner_test.cpp | 1 - be/test/vec/exec/vparquet_scanner_test.cpp | 1 - be/test/vec/exprs/vexpr_test.cpp | 27 - .../function/function_running_difference_test.cpp | 2 +- be/test/vec/function/function_test_util.h | 9 +- be/test/vec/function/function_time_test.cpp | 22 +- be/test/vec/olap/vertical_compaction_test.cpp | 7 +- be/test/vec/runtime/vdata_stream_test.cpp | 5 +- build-for-release.sh | 162 ++ build.sh | 12 +- dist/NOTICE-dist.txt | 2 +- .../hive/scripts/create_preinstalled_table.hql | 12 + .../postgresql/init/01-create-schema.sql | 1 + .../postgresql/init/02-create-table.sql | 28 + .../docker-compose/postgresql/init/03-insert.sql | 33 + docs/en/community/developer-guide/be-vscode-dev.md | 10 +- .../cluster-management/elastic-expansion.md | 6 +- .../admin-manual/cluster-management/upgrade.md | 2 +- docs/en/docs/admin-manual/config/be-config.md | 16 +- docs/en/docs/admin-manual/config/fe-config.md | 10 - .../docs/advanced/partition/dynamic-partition.md | 2 + docs/en/docs/advanced/variables.md | 14 +- docs/en/docs/data-operate/export/export-manual.md | 41 +- docs/en/docs/data-table/data-partition.md | 2 +- docs/en/docs/ecosystem/audit-plugin.md | 4 + .../docs/ecosystem/external-table/doris-on-es.md | 2 - .../docs/ecosystem/external-table/jdbc-of-doris.md | 40 +- .../docs/ecosystem/external-table/multi-catalog.md | 237 +- .../ecosystem/udf/java-user-defined-function.md | 41 +- .../construct-docker/construct-docker-compose.md | 4 +- .../construct-docker/construct-docker-image.md | 100 +- docs/en/docs/install/install-deploy.md | 258 +- .../docs/install/source-install/compilation-arm.md | 235 +- .../docs/install/source-install/compilation-mac.md | 31 +- .../docs/install/source-install/compilation-win.md | 26 +- .../compilation-with-ldb-toolchain.md | 41 +- docs/en/docs/install/source-install/compilation.md | 131 +- docs/en/docs/releasenotes/release-1.2.1.md | 196 ++ .../sql-functions/aggregate-functions/any_value.md | 8 + .../sql-functions/aggregate-functions/histogram.md | 92 +- .../sql-functions/array-functions/array_join.md | 2 +- .../sql-functions/array-functions/array_sort.md | 2 +- .../sql-functions/string-functions/field.md | 7 + .../sql-manual/sql-functions/table-functions/s3.md | 43 +- .../docs/sql-manual/sql-functions/width-bucket.md | 154 ++ .../Alter/ALTER-TABLE-COLUMN.md | 2 +- .../Create/CREATE-CATALOG.md | 66 +- .../Manipulation/CANCEL-EXPORT.md | 80 + .../sql-manual/sql-reference/Data-Types/ARRAY.md | 4 +- .../sql-reference/Data-Types/DECIMALV3.md | 2 +- .../sql-reference/Show-Statements/SHOW-TABLETS.md | 7 +- docs/sidebars.json | 8 +- .../admin-manual/cluster-management/upgrade.md | 2 +- docs/zh-CN/docs/admin-manual/config/be-config.md | 16 +- docs/zh-CN/docs/admin-manual/config/fe-config.md | 10 - .../admin-manual/http-actions/compaction-action.md | 2 +- .../maint-monitor/monitor-metrics/metrics.md | 4 +- .../docs/advanced/partition/dynamic-partition.md | 4 +- docs/zh-CN/docs/advanced/variables.md | 12 +- .../docs/data-operate/export/export-manual.md | 42 +- .../update-delete/sequence-column-manual.md | 2 +- docs/zh-CN/docs/data-table/data-partition.md | 2 +- docs/zh-CN/docs/ecosystem/audit-plugin.md | 4 + .../docs/ecosystem/external-table/doris-on-es.md | 2 - .../docs/ecosystem/external-table/jdbc-of-doris.md | 28 + .../docs/ecosystem/external-table/multi-catalog.md | 240 +- .../ecosystem/udf/java-user-defined-function.md | 43 +- .../compilation-with-ldb-toolchain.md | 13 +- docs/zh-CN/docs/releasenotes/release-1.2.1.md | 193 ++ .../sql-functions/aggregate-functions/any_value.md | 8 + .../sql-functions/aggregate-functions/histogram.md | 91 +- .../sql-functions/array-functions/array.md | 2 +- .../array-functions/array_difference.md | 2 +- .../sql-functions/array-functions/array_join.md | 2 +- .../sql-functions/array-functions/array_sort.md | 4 +- .../array-functions/array_with_constant.md | 2 +- .../sql-functions/string-functions/field.md | 7 + .../string-functions/split_by_string.md | 4 +- .../sql-manual/sql-functions/table-functions/s3.md | 45 +- .../docs/sql-manual/sql-functions/width-bucket.md | 153 ++ .../Alter/ALTER-TABLE-COLUMN.md | 4 +- .../Create/CREATE-CATALOG.md | 68 +- .../Manipulation/CANCEL-EXPORT.md | 80 + .../sql-manual/sql-reference/Data-Types/ARRAY.md | 4 +- .../sql-reference/Data-Types/DECIMALV3.md | 2 +- .../sql-reference/Show-Statements/SHOW-ALTER.md | 2 +- .../Show-Statements/SHOW-PARTITION-ID.md | 10 +- .../Show-Statements/SHOW-PARTITIONS.md | 20 +- .../sql-reference/Show-Statements/SHOW-TABLETS.md | 7 +- extension/logstash/README.md | 4 +- .../org/apache/doris/common/io/BitmapValue.java | 14 +- .../doris/common/jmockit/FieldReflection.java | 2 +- .../doris/common/jmockit/MethodReflection.java | 2 +- .../antlr4/org/apache/doris/nereids/DorisLexer.g4 | 11 +- .../antlr4/org/apache/doris/nereids/DorisParser.g4 | 48 +- fe/fe-core/src/main/cup/sql_parser.cup | 87 +- .../main/java/org/apache/doris/alter/Alter.java | 12 +- .../doris/alter/MaterializedViewHandler.java | 30 +- .../java/org/apache/doris/alter/RollupJobV2.java | 29 +- .../apache/doris/alter/SchemaChangeHandler.java | 14 +- .../doris/analysis/AlterColumnStatsStmt.java | 1 - .../org/apache/doris/analysis/AlterPolicyStmt.java | 6 +- .../org/apache/doris/analysis/AnalyzeStmt.java | 14 +- .../java/org/apache/doris/analysis/Analyzer.java | 13 +- .../org/apache/doris/analysis/ArithmeticExpr.java | 25 +- .../org/apache/doris/analysis/BaseTableRef.java | 1 + .../org/apache/doris/analysis/BinaryPredicate.java | 13 +- .../apache/doris/analysis/CancelExportStmt.java | 176 ++ .../org/apache/doris/analysis/CancelLoadStmt.java | 3 + .../java/org/apache/doris/analysis/ColumnDef.java | 2 +- .../apache/doris/analysis/ColumnPartitionDesc.java | 3 + .../apache/doris/analysis/CreateCatalogStmt.java | 22 +- .../doris/analysis/CreateMaterializedViewStmt.java | 82 +- .../org/apache/doris/analysis/CreateTableStmt.java | 6 +- .../org/apache/doris/analysis/DateLiteral.java | 9 +- .../org/apache/doris/analysis/DecimalLiteral.java | 1 + .../apache/doris/analysis/DistributionDesc.java | 2 +- .../java/org/apache/doris/analysis/ExportStmt.java | 8 +- .../main/java/org/apache/doris/analysis/Expr.java | 49 + .../apache/doris/analysis/ExprSubstitutionMap.java | 10 + .../org/apache/doris/analysis/FloatLiteral.java | 8 +- .../apache/doris/analysis/FunctionCallExpr.java | 84 +- .../doris/analysis/HashDistributionDesc.java | 17 +- .../java/org/apache/doris/analysis/IntLiteral.java | 4 +- .../org/apache/doris/analysis/JoinOperator.java | 5 + .../org/apache/doris/analysis/LargeIntLiteral.java | 4 +- .../doris/analysis/MVColumnBitmapUnionPattern.java | 6 +- .../doris/analysis/MVColumnHLLUnionPattern.java | 2 +- .../org/apache/doris/analysis/MVColumnItem.java | 78 +- .../org/apache/doris/analysis/MatchPredicate.java | 243 ++ .../org/apache/doris/analysis/PartitionDesc.java | 4 + .../doris/analysis/RandomDistributionDesc.java | 2 +- .../apache/doris/analysis/RangePartitionDesc.java | 8 +- .../java/org/apache/doris/analysis/SelectList.java | 9 + .../java/org/apache/doris/analysis/SelectStmt.java | 88 +- .../apache/doris/analysis/SetOperationStmt.java | 6 + .../java/org/apache/doris/analysis/SetVar.java | 9 - .../doris/analysis/ShowCreateCatalogStmt.java | 2 +- .../apache/doris/analysis/SinglePartitionDesc.java | 4 +- .../org/apache/doris/analysis/SlotDescriptor.java | 16 +- .../java/org/apache/doris/analysis/SlotRef.java | 6 +- .../org/apache/doris/analysis/StringLiteral.java | 5 +- .../java/org/apache/doris/analysis/TableRef.java | 37 + .../org/apache/doris/analysis/TableSnapshot.java | 70 + .../doris/analysis/TableValuedFunctionRef.java | 8 +- .../java/org/apache/doris/backup/S3Storage.java | 11 +- .../doris/catalog/BuiltinAggregateFunctions.java | 88 +- .../doris/catalog/BuiltinScalarFunctions.java | 111 +- .../main/java/org/apache/doris/catalog/Column.java | 9 +- .../org/apache/doris/catalog/DataProperty.java | 5 +- .../java/org/apache/doris/catalog/DatabaseIf.java | 12 + .../main/java/org/apache/doris/catalog/Env.java | 7 + .../java/org/apache/doris/catalog/EsResource.java | 4 + .../java/org/apache/doris/catalog/EsTable.java | 36 +- .../java/org/apache/doris/catalog/FunctionSet.java | 9 + .../apache/doris/catalog/FunctionSignature.java | 57 +- .../java/org/apache/doris/catalog/HMSResource.java | 3 +- .../doris/catalog/HiveMetaStoreClientHelper.java | 2 +- .../doris/catalog/InternalSchemaInitializer.java | 35 +- .../org/apache/doris/catalog/JdbcResource.java | 102 +- .../doris/catalog/MaterializedIndexMeta.java | 10 +- .../org/apache/doris/catalog/MaterializedView.java | 1 + .../java/org/apache/doris/catalog/OdbcTable.java | 7 + .../java/org/apache/doris/catalog/OlapTable.java | 6 +- .../org/apache/doris/catalog/PrimitiveType.java | 1 + .../java/org/apache/doris/catalog/S3Resource.java | 48 + .../java/org/apache/doris/catalog/ScalarType.java | 27 +- .../main/java/org/apache/doris/catalog/Type.java | 42 +- .../doris/catalog/external/EsExternalTable.java | 8 +- .../doris/catalog/external/ExternalDatabase.java | 5 + .../catalog/external/HMSExternalDatabase.java | 10 + .../doris/catalog/external/HMSExternalTable.java | 2 +- .../doris/clone/DynamicPartitionScheduler.java | 4 +- .../main/java/org/apache/doris/common/Config.java | 24 +- .../java/org/apache/doris/common/ErrorCode.java | 5 +- .../doris/common/profile/ProfileTreeBuilder.java | 20 +- .../doris/common/util/DynamicPartitionUtil.java | 5 +- .../org/apache/doris/common/util/TimeUtils.java | 2 +- .../apache/doris/datasource/CatalogFactory.java | 63 +- .../org/apache/doris/datasource/CatalogIf.java | 6 +- .../org/apache/doris/datasource/CatalogMgr.java | 68 +- .../apache/doris/datasource/CatalogProperty.java | 43 +- .../apache/doris/datasource/EsExternalCatalog.java | 125 +- .../apache/doris/datasource/ExternalCatalog.java | 9 + .../doris/datasource/HMSClientException.java | 5 +- .../doris/datasource/HMSExternalCatalog.java | 71 +- .../apache/doris/datasource/InternalCatalog.java | 6 +- .../doris/datasource/JdbcExternalCatalog.java | 107 +- .../datasource/PooledHiveMetaStoreClient.java | 190 -- .../doris/datasource/hive/HiveMetaStoreClient.java | 2758 ++++++++++++++++++++ .../doris/datasource/hive/HiveVersionUtil.java | 75 + .../datasource/hive/PooledHiveMetaStoreClient.java | 217 ++ .../datasource/hive/event/DropTableEvent.java | 89 + .../doris/datasource/hive/event/EventFactory.java | 32 + .../doris/datasource/hive/event/IgnoredEvent.java | 43 + .../datasource/hive/event/MetastoreEvent.java | 203 ++ .../hive/event/MetastoreEventFactory.java | 81 + .../datasource/hive/event/MetastoreEventType.java | 68 + .../hive/event/MetastoreEventsProcessor.java | 151 ++ .../hive/event/MetastoreNotificationException.java | 37 + .../event/MetastoreNotificationFetchException.java | 37 + .../datasource/hive/event/MetastoreTableEvent.java | 50 + .../doris/deploy/impl/LocalFileDeployManager.java | 2 +- .../doris/external/elasticsearch/EsUtil.java | 3 +- .../doris/external/elasticsearch/MappingPhase.java | 22 +- .../iceberg/IcebergTableCreationRecordMgr.java | 2 +- .../org/apache/doris/external/jdbc/JdbcClient.java | 255 +- .../apache/doris/httpv2/rest/GetLogFileAction.java | 2 +- .../java/org/apache/doris/journal/Journal.java | 3 + .../org/apache/doris/journal/JournalEntity.java | 1 + .../apache/doris/journal/bdbje/BDBJEJournal.java | 12 + .../apache/doris/journal/local/LocalJournal.java | 5 + .../main/java/org/apache/doris/load/DppConfig.java | 43 + .../java/org/apache/doris/load/EtlJobInfo.java | 12 +- .../main/java/org/apache/doris/load/ExportJob.java | 14 +- .../main/java/org/apache/doris/load/ExportMgr.java | 61 +- .../org/apache/doris/load/loadv2/SparkLoadJob.java | 9 + .../doris/load/sync/canal/CanalSyncChannel.java | 5 +- .../java/org/apache/doris/master/Checkpoint.java | 2 + .../org/apache/doris/metric/LongCounterMetric.java | 9 + .../java/org/apache/doris/metric/MetricRepo.java | 15 +- .../apache/doris/mysql/MysqlHandshakePacket.java | 4 +- .../doris/mysql/privilege/UserPrivTable.java | 1 + .../doris/nereids/analyzer/NereidsAnalyzer.java | 2 + .../nereids/analyzer/UnboundOneRowRelation.java | 4 + .../doris/nereids/analyzer/UnboundRelation.java | 21 +- .../doris/nereids/analyzer/UnboundTVFRelation.java | 18 +- .../glue/translator/ExpressionTranslator.java | 94 +- .../glue/translator/PhysicalPlanTranslator.java | 77 +- .../glue/translator/PlanTranslatorContext.java | 17 +- .../AdjustAggregateNullableForEmptySetJob.java | 34 + .../AdjustApplyFromCorrelateToUnCorrelateJob.java | 2 + .../doris/nereids/jobs/batch/AnalyzeRulesJob.java | 14 +- .../doris/nereids/jobs/batch/BatchRulesJob.java | 9 + .../jobs/batch/CheckLegalityAfterRewrite.java | 34 + .../batch/CheckLegalityBeforeTypeCoercion.java | 34 + .../jobs/batch/NereidsRewriteJobExecutor.java | 20 +- .../doris/nereids/jobs/batch/TypeCoercionJob.java | 5 + .../nereids/jobs/cascades/CostAndEnforcerJob.java | 42 +- .../java/org/apache/doris/nereids/memo/Group.java | 45 +- .../java/org/apache/doris/nereids/memo/Memo.java | 17 +- .../doris/nereids/parser/LogicalPlanBuilder.java | 121 +- .../nereids/processor/post/PlanPostProcessors.java | 5 +- .../properties/ChildrenPropertiesRegulator.java | 85 +- .../nereids/properties/DistributionSpecHash.java | 19 +- .../apache/doris/nereids/properties/OrderKey.java | 6 +- .../org/apache/doris/nereids/rules/RuleType.java | 9 + .../AdjustAggregateNullableForEmptySet.java | 80 + .../rules/analysis/AvgDistinctToSumDivCount.java | 70 + .../doris/nereids/rules/analysis/BindFunction.java | 65 +- .../doris/nereids/rules/analysis/BindRelation.java | 19 +- .../nereids/rules/analysis/BindSlotReference.java | 260 +- .../nereids/rules/analysis/CheckAfterRewrite.java | 19 + .../nereids/rules/analysis/CheckAnalysis.java | 28 +- .../nereids/rules/analysis/FillUpMissingSlots.java | 3 +- .../nereids/rules/analysis/NormalizeRepeat.java | 11 +- .../ResolveOrdinalInOrderByAndGroupBy.java | 10 +- .../exploration/join/InnerJoinLAsscomProject.java | 1 + .../rules/exploration/join/JoinReorderCommon.java | 54 + .../exploration/join/OuterJoinLAsscomProject.java | 81 +- .../join/SemiJoinLogicalJoinTranspose.java | 16 +- .../join/SemiJoinLogicalJoinTransposeProject.java | 20 +- .../join/SemiJoinSemiJoinTransposeProject.java | 1 + .../rewrite/ExpressionNormalization.java | 4 +- .../rules/CharacterLiteralTypeCoercion.java | 3 + .../rewrite/rules/FoldConstantRuleOnFE.java | 61 +- .../rewrite/rules/SimplifyArithmeticRule.java | 9 +- .../rewrite/rules/SupportJavaDateFormatter.java | 87 + .../expression/rewrite/rules/TypeCoercion.java | 47 +- .../LogicalOlapScanToPhysicalOlapScan.java | 17 +- .../mv/AbstractSelectMaterializedIndexRule.java | 11 +- .../mv/SelectMaterializedIndexWithAggregate.java | 230 +- .../nereids/rules/rewrite/AggregateStrategies.java | 24 +- .../logical/ApplyPullFilterOnProjectUnderAgg.java | 4 +- .../rewrite/logical/CountDistinctRewrite.java | 4 +- .../logical/EliminateFilterUnderApplyProject.java | 97 + .../rewrite/logical/EliminateGroupByConstant.java | 2 +- .../logical/ExtractFilterFromCrossJoin.java | 51 + .../rules/rewrite/logical/InApplyToJoin.java | 14 +- .../rules/rewrite/logical/NormalizeAggregate.java | 9 +- .../rules/rewrite/logical/NormalizeToSlot.java | 8 +- .../rewrite/logical/PruneOlapScanPartition.java | 9 +- .../rewrite/logical/PushApplyUnderProject.java | 29 +- .../rules/rewrite/logical/ScalarApplyToJoin.java | 12 + .../doris/nereids/stats/ExpressionEstimation.java | 9 +- .../doris/nereids/stats/StatsCalculator.java | 32 +- .../trees/expressions/AggregateExpression.java | 8 +- .../trees/expressions/BinaryArithmetic.java | 16 +- .../doris/nereids/trees/expressions/Cast.java | 4 +- .../doris/nereids/trees/expressions/Divide.java | 13 + .../nereids/trees/expressions/Expression.java | 2 +- .../nereids/trees/expressions/OrderExpression.java | 100 + .../nereids/trees/expressions/UnaryArithmetic.java | 3 +- .../nereids/trees/expressions/VariableDesc.java | 104 + .../functions/BitmapIntersectFunction.java | 45 + .../trees/expressions/functions/BoundFunction.java | 151 +- .../expressions/functions/ComputePrecision.java | 25 + .../functions/ComputePrecisionForRound.java | 56 + .../functions/ComputePrecisionForSum.java | 37 + .../expressions/functions/ComputeSignature.java | 35 +- .../functions/ComputeSignatureHelper.java | 151 ++ .../functions/DateTimeWithPrecision.java | 2 +- .../functions/ExplicitlyCastableSignature.java | 16 +- .../expressions/functions/ExpressionTrait.java | 13 + .../expressions/functions/IdenticalSignature.java | 10 +- .../functions/ImplicitlyCastableSignature.java | 24 +- .../functions/NullOrIdenticalSignature.java | 12 +- .../functions/agg/AggregateFunction.java | 41 +- .../trees/expressions/functions/agg/AnyValue.java | 75 + .../functions/agg/ApproxCountDistinct.java | 76 - .../trees/expressions/functions/agg/Avg.java | 110 +- .../expressions/functions/agg/AvgWeighted.java | 87 + .../expressions/functions/agg/BitmapFunction.java | 34 + .../expressions/functions/agg/BitmapIntersect.java | 35 +- .../expressions/functions/agg/BitmapUnion.java | 35 +- .../functions/agg/BitmapUnionCount.java | 39 +- .../expressions/functions/agg/BitmapUnionInt.java | 45 +- .../expressions/functions/agg/CollectList.java | 110 + .../expressions/functions/agg/CollectSet.java | 110 + .../trees/expressions/functions/agg/Count.java | 66 +- .../expressions/functions/agg/GroupBitAnd.java | 47 +- .../expressions/functions/agg/GroupBitOr.java | 45 +- .../expressions/functions/agg/GroupBitXor.java | 44 +- .../expressions/functions/agg/GroupBitmapXor.java | 48 +- .../expressions/functions/agg/GroupConcat.java | 144 + .../trees/expressions/functions/agg/Histogram.java | 104 + .../expressions/functions/agg/HllFunction.java | 32 + .../trees/expressions/functions/agg/HllUnion.java | 39 +- .../expressions/functions/agg/HllUnionAgg.java | 39 +- .../expressions/functions/agg/IntersectCount.java | 81 + .../trees/expressions/functions/agg/Max.java | 31 +- .../trees/expressions/functions/agg/MaxBy.java | 92 + .../trees/expressions/functions/agg/Min.java | 31 +- .../trees/expressions/functions/agg/MinBy.java | 92 + .../functions/agg/MultiDistinctCount.java | 48 +- .../functions/agg/MultiDistinctSum.java | 32 +- .../trees/expressions/functions/agg/Ndv.java | 83 +- .../functions/agg/NullableAggregateFunction.java | 75 + .../functions/agg/OrthogonalBitmapFunction.java | 54 + .../functions/agg/OrthogonalBitmapIntersect.java | 78 + .../agg/OrthogonalBitmapIntersectCount.java | 66 + .../functions/agg/OrthogonalBitmapUnionCount.java | 76 + .../expressions/functions/agg/Percentile.java | 85 + .../functions/agg/PercentileApprox.java | 110 + .../expressions/functions/agg/PercentileArray.java | 78 + .../expressions/functions/agg/QuantileUnion.java | 86 + .../trees/expressions/functions/agg/Retention.java | 94 + .../expressions/functions/agg/SequenceCount.java | 87 + .../functions/agg/SequenceFunction.java | 54 + .../expressions/functions/agg/SequenceMatch.java | 86 + .../functions/agg/StdDevOrVarianceFunction.java | 31 + .../trees/expressions/functions/agg/Stddev.java | 97 + .../expressions/functions/agg/StddevSamp.java | 89 + .../trees/expressions/functions/agg/Sum.java | 86 +- .../trees/expressions/functions/agg/TopN.java | 115 + .../trees/expressions/functions/agg/TopNArray.java | 158 ++ .../expressions/functions/agg/TopNWeighted.java | 174 ++ .../trees/expressions/functions/agg/Variance.java | 97 + .../expressions/functions/agg/VarianceSamp.java | 88 + .../expressions/functions/agg/WindowFunnel.java | 128 + .../trees/expressions/functions/scalar/Abs.java | 2 +- .../trees/expressions/functions/scalar/Acos.java | 2 +- .../functions/scalar/AesCryptoFunction.java | 75 + .../expressions/functions/scalar/AesDecrypt.java | 34 +- .../expressions/functions/scalar/AesEncrypt.java | 37 +- .../scalar/AppendTrailingCharIfAbsent.java | 2 +- .../trees/expressions/functions/scalar/Array.java | 126 + .../expressions/functions/scalar/ArrayAvg.java | 84 + .../expressions/functions/scalar/ArrayCompact.java | 98 + .../functions/scalar/ArrayContains.java | 103 + .../functions/scalar/ArrayDifference.java | 84 + .../functions/scalar/ArrayDistinct.java | 99 + .../functions/scalar/ArrayEnumerate.java | 97 + .../expressions/functions/scalar/ArrayExcept.java | 111 + .../functions/scalar/ArrayIntersect.java | 111 + .../expressions/functions/scalar/ArrayJoin.java | 159 ++ .../expressions/functions/scalar/ArrayMax.java | 92 + .../expressions/functions/scalar/ArrayMin.java | 92 + .../expressions/functions/scalar/ArrayPopback.java | 95 + .../functions/scalar/ArrayPosition.java | 100 + .../expressions/functions/scalar/ArrayProduct.java | 84 + .../expressions/functions/scalar/ArrayRange.java | 93 + .../expressions/functions/scalar/ArrayRemove.java | 112 + .../expressions/functions/scalar/ArraySize.java | 69 + .../expressions/functions/scalar/ArraySlice.java | 143 + .../expressions/functions/scalar/ArraySort.java | 100 + .../expressions/functions/scalar/ArraySum.java | 84 + .../expressions/functions/scalar/ArrayUnion.java | 111 + .../functions/scalar/ArrayWithConstant.java | 95 + .../functions/scalar/ArraysOverlap.java | 111 + .../trees/expressions/functions/scalar/Ascii.java | 2 +- .../trees/expressions/functions/scalar/Asin.java | 2 +- .../trees/expressions/functions/scalar/Atan.java | 2 +- .../trees/expressions/functions/scalar/Bin.java | 2 +- .../expressions/functions/scalar/BitLength.java | 2 +- .../expressions/functions/scalar/BitmapAnd.java | 2 +- .../functions/scalar/BitmapAndCount.java | 2 +- .../expressions/functions/scalar/BitmapAndNot.java | 2 +- .../functions/scalar/BitmapAndNotCount.java | 2 +- .../functions/scalar/BitmapContains.java | 2 +- .../expressions/functions/scalar/BitmapCount.java | 5 +- .../expressions/functions/scalar/BitmapEmpty.java | 2 +- .../functions/scalar/BitmapFromArray.java | 76 + .../functions/scalar/BitmapFromString.java | 2 +- .../expressions/functions/scalar/BitmapHasAll.java | 2 +- .../expressions/functions/scalar/BitmapHasAny.java | 2 +- .../expressions/functions/scalar/BitmapHash.java | 2 +- .../expressions/functions/scalar/BitmapHash64.java | 2 +- .../expressions/functions/scalar/BitmapMax.java | 2 +- .../expressions/functions/scalar/BitmapMin.java | 2 +- .../expressions/functions/scalar/BitmapNot.java | 2 +- .../expressions/functions/scalar/BitmapOr.java | 2 +- .../functions/scalar/BitmapOrCount.java | 2 +- .../functions/scalar/BitmapSubsetInRange.java | 2 +- .../functions/scalar/BitmapSubsetLimit.java | 2 +- .../functions/scalar/BitmapToArray.java | 70 + .../functions/scalar/BitmapToString.java | 2 +- .../expressions/functions/scalar/BitmapXor.java | 2 +- .../functions/scalar/BitmapXorCount.java | 2 +- .../expressions/functions/scalar/Cardinality.java | 69 + .../trees/expressions/functions/scalar/Cbrt.java | 2 +- .../trees/expressions/functions/scalar/Ceil.java | 8 +- .../expressions/functions/scalar/Ceiling.java | 2 +- .../expressions/functions/scalar/CharLength.java | 71 - .../functions/scalar/CharacterLength.java | 2 +- .../expressions/functions/scalar/Coalesce.java | 2 +- .../scalar/CompatibleTypeArrayFunction.java | 65 + .../trees/expressions/functions/scalar/Concat.java | 2 +- .../expressions/functions/scalar/ConcatWs.java | 13 +- .../expressions/functions/scalar/ConnectionId.java | 54 + .../trees/expressions/functions/scalar/Conv.java | 2 +- .../expressions/functions/scalar/ConvertTo.java | 78 + .../expressions/functions/scalar/ConvertTz.java | 2 +- .../trees/expressions/functions/scalar/Cos.java | 2 +- .../expressions/functions/scalar/CountEqual.java | 100 + .../functions/scalar/CryptoFunction.java | 93 + .../expressions/functions/scalar/CurrentDate.java | 2 +- .../expressions/functions/scalar/CurrentTime.java | 2 +- .../functions/scalar/CurrentTimestamp.java | 2 +- .../expressions/functions/scalar/CurrentUser.java | 54 + .../expressions/functions/scalar/Curtime.java | 2 +- .../expressions/functions/scalar/Database.java | 54 + .../trees/expressions/functions/scalar/Date.java | 2 +- .../expressions/functions/scalar/DateDiff.java | 2 +- .../expressions/functions/scalar/DateFormat.java | 2 +- .../expressions/functions/scalar/DateTrunc.java | 2 +- .../trees/expressions/functions/scalar/DateV2.java | 2 +- .../trees/expressions/functions/scalar/Day.java | 2 +- .../expressions/functions/scalar/DayCeil.java | 2 +- .../expressions/functions/scalar/DayFloor.java | 2 +- .../expressions/functions/scalar/DayName.java | 2 +- .../expressions/functions/scalar/DayOfMonth.java | 2 +- .../expressions/functions/scalar/DayOfWeek.java | 2 +- .../expressions/functions/scalar/DayOfYear.java | 2 +- .../expressions/functions/scalar/DaysAdd.java | 13 +- .../expressions/functions/scalar/DaysDiff.java | 2 +- .../expressions/functions/scalar/DaysSub.java | 13 +- .../trees/expressions/functions/scalar/Dceil.java | 2 +- .../expressions/functions/scalar/Degrees.java | 2 +- .../trees/expressions/functions/scalar/Dexp.java | 2 +- .../trees/expressions/functions/scalar/Dfloor.java | 2 +- .../trees/expressions/functions/scalar/Dlog1.java | 2 +- .../trees/expressions/functions/scalar/Dlog10.java | 2 +- .../trees/expressions/functions/scalar/Domain.java | 68 + .../functions/scalar/DomainWithoutWww.java | 68 + .../trees/expressions/functions/scalar/Dpow.java | 2 +- .../trees/expressions/functions/scalar/Dround.java | 5 +- .../trees/expressions/functions/scalar/Dsqrt.java | 2 +- .../trees/expressions/functions/scalar/E.java | 2 +- .../expressions/functions/scalar/ElementAt.java | 100 + .../functions/scalar/ElementExtract.java | 100 + .../expressions/functions/scalar/ElementSlice.java | 143 + .../trees/expressions/functions/scalar/Elt.java | 2 +- .../expressions/functions/scalar/EndsWith.java | 2 +- .../expressions/functions/scalar/EsQuery.java | 2 +- .../trees/expressions/functions/scalar/Exp.java | 2 +- .../functions/scalar/ExtractUrlParameter.java | 2 +- .../trees/expressions/functions/scalar/Field.java | 102 + .../expressions/functions/scalar/FindInSet.java | 2 +- .../trees/expressions/functions/scalar/Floor.java | 8 +- .../trees/expressions/functions/scalar/Fmod.java | 2 +- .../trees/expressions/functions/scalar/Fpow.java | 2 +- .../expressions/functions/scalar/FromBase64.java | 2 +- .../expressions/functions/scalar/FromDays.java | 2 +- .../expressions/functions/scalar/FromUnixtime.java | 2 +- .../functions/scalar/GetJsonDouble.java | 2 +- .../expressions/functions/scalar/GetJsonInt.java | 2 +- .../functions/scalar/GetJsonString.java | 2 +- .../expressions/functions/scalar/Greatest.java | 2 +- .../trees/expressions/functions/scalar/Hex.java | 2 +- .../functions/scalar/HllCardinality.java | 5 +- .../expressions/functions/scalar/HllEmpty.java | 2 +- .../expressions/functions/scalar/HllHash.java | 2 +- .../trees/expressions/functions/scalar/Hour.java | 2 +- .../expressions/functions/scalar/HourCeil.java | 2 +- .../expressions/functions/scalar/HourFloor.java | 2 +- .../expressions/functions/scalar/HoursDiff.java | 2 +- .../trees/expressions/functions/scalar/If.java | 102 +- .../expressions/functions/scalar/Initcap.java | 2 +- .../trees/expressions/functions/scalar/Instr.java | 2 +- .../expressions/functions/scalar/JsonArray.java | 2 +- .../expressions/functions/scalar/JsonObject.java | 12 +- .../expressions/functions/scalar/JsonQuote.java | 2 +- .../functions/scalar/JsonbExistsPath.java | 2 +- .../expressions/functions/scalar/JsonbExtract.java | 2 +- .../functions/scalar/JsonbExtractBigint.java | 2 +- .../functions/scalar/JsonbExtractBool.java | 2 +- .../functions/scalar/JsonbExtractDouble.java | 2 +- .../functions/scalar/JsonbExtractInt.java | 2 +- .../functions/scalar/JsonbExtractIsnull.java | 2 +- .../functions/scalar/JsonbExtractString.java | 2 +- .../expressions/functions/scalar/JsonbParse.java | 2 +- .../functions/scalar/JsonbParseErrorToInvalid.java | 2 +- .../functions/scalar/JsonbParseErrorToNull.java | 2 +- .../functions/scalar/JsonbParseErrorToValue.java | 2 +- .../functions/scalar/JsonbParseNotnull.java | 2 +- .../scalar/JsonbParseNotnullErrorToInvalid.java | 2 +- .../scalar/JsonbParseNotnullErrorToValue.java | 2 +- .../functions/scalar/JsonbParseNullable.java | 2 +- .../scalar/JsonbParseNullableErrorToInvalid.java | 2 +- .../scalar/JsonbParseNullableErrorToNull.java | 2 +- .../scalar/JsonbParseNullableErrorToValue.java | 2 +- .../expressions/functions/scalar/JsonbType.java | 2 +- .../expressions/functions/scalar/LastDay.java | 74 + .../trees/expressions/functions/scalar/Least.java | 2 +- .../trees/expressions/functions/scalar/Left.java | 2 +- .../trees/expressions/functions/scalar/Length.java | 2 +- .../trees/expressions/functions/scalar/Ln.java | 2 +- .../expressions/functions/scalar/LocalTime.java | 2 +- .../functions/scalar/LocalTimestamp.java | 2 +- .../trees/expressions/functions/scalar/Locate.java | 2 +- .../trees/expressions/functions/scalar/Log.java | 2 +- .../trees/expressions/functions/scalar/Log10.java | 2 +- .../trees/expressions/functions/scalar/Log2.java | 2 +- .../trees/expressions/functions/scalar/Lower.java | 2 +- .../trees/expressions/functions/scalar/Lpad.java | 2 +- .../trees/expressions/functions/scalar/Ltrim.java | 2 +- .../expressions/functions/scalar/MakeDate.java | 2 +- .../trees/expressions/functions/scalar/Md5.java | 2 +- .../trees/expressions/functions/scalar/Md5Sum.java | 2 +- .../trees/expressions/functions/scalar/Minute.java | 2 +- .../expressions/functions/scalar/MinuteCeil.java | 2 +- .../expressions/functions/scalar/MinuteFloor.java | 2 +- .../expressions/functions/scalar/MinutesDiff.java | 2 +- .../expressions/functions/scalar/MoneyFormat.java | 2 +- .../trees/expressions/functions/scalar/Month.java | 2 +- .../expressions/functions/scalar/MonthCeil.java | 2 +- .../expressions/functions/scalar/MonthFloor.java | 2 +- .../expressions/functions/scalar/MonthName.java | 2 +- .../expressions/functions/scalar/MonthsDiff.java | 2 +- .../functions/scalar/MultiMatchAny.java | 70 + .../functions/scalar/MultiSearchAllPositions.java | 71 + .../functions/scalar/MurmurHash332.java | 2 +- .../functions/scalar/MurmurHash364.java | 2 +- .../expressions/functions/scalar/Negative.java | 2 +- .../functions/scalar/NotNullOrEmpty.java | 2 +- .../trees/expressions/functions/scalar/Now.java | 2 +- .../trees/expressions/functions/scalar/NullIf.java | 2 +- .../expressions/functions/scalar/NullOrEmpty.java | 2 +- .../trees/expressions/functions/scalar/Nvl.java | 2 +- .../expressions/functions/scalar/ParseUrl.java | 2 +- .../trees/expressions/functions/scalar/Pi.java | 2 +- .../trees/expressions/functions/scalar/Pmod.java | 2 +- .../expressions/functions/scalar/Positive.java | 2 +- .../trees/expressions/functions/scalar/Pow.java | 2 +- .../trees/expressions/functions/scalar/Power.java | 2 +- .../expressions/functions/scalar/Protocol.java | 68 + .../functions/scalar/QuantilePercent.java | 2 +- .../expressions/functions/scalar/Quarter.java | 2 +- .../expressions/functions/scalar/Radians.java | 2 +- .../trees/expressions/functions/scalar/Random.java | 2 +- .../functions/scalar/RegexpExtract.java | 2 +- .../functions/scalar/RegexpExtractAll.java | 71 + .../functions/scalar/RegexpReplace.java | 2 +- .../functions/scalar/RegexpReplaceOne.java | 72 + .../trees/expressions/functions/scalar/Repeat.java | 2 +- .../expressions/functions/scalar/Replace.java | 2 +- .../expressions/functions/scalar/Reverse.java | 37 +- .../trees/expressions/functions/scalar/Right.java | 2 +- .../trees/expressions/functions/scalar/Round.java | 8 +- .../expressions/functions/scalar/RoundBankers.java | 8 +- .../trees/expressions/functions/scalar/Rpad.java | 2 +- .../trees/expressions/functions/scalar/Rtrim.java | 2 +- .../functions/scalar/RunningDifference.java | 94 + .../trees/expressions/functions/scalar/Second.java | 2 +- .../expressions/functions/scalar/SecondCeil.java | 2 +- .../expressions/functions/scalar/SecondFloor.java | 2 +- .../expressions/functions/scalar/SecondsDiff.java | 2 +- .../trees/expressions/functions/scalar/Sign.java | 2 +- .../trees/expressions/functions/scalar/Sin.java | 2 +- .../trees/expressions/functions/scalar/Size.java | 69 + .../trees/expressions/functions/scalar/Sleep.java | 2 +- .../trees/expressions/functions/scalar/Sm3.java | 2 +- .../trees/expressions/functions/scalar/Sm3sum.java | 2 +- .../functions/scalar/Sm4CryptoFunction.java | 57 + .../expressions/functions/scalar/Sm4Decrypt.java | 39 +- .../expressions/functions/scalar/Sm4Encrypt.java | 34 +- .../trees/expressions/functions/scalar/Space.java | 2 +- .../expressions/functions/scalar/SplitByChar.java | 71 + .../functions/scalar/SplitByString.java | 71 + .../expressions/functions/scalar/SplitPart.java | 2 +- .../trees/expressions/functions/scalar/Sqrt.java | 2 +- .../expressions/functions/scalar/StAstext.java | 2 +- .../expressions/functions/scalar/StAswkt.java | 2 +- .../expressions/functions/scalar/StCircle.java | 2 +- .../expressions/functions/scalar/StContains.java | 2 +- .../functions/scalar/StDistanceSphere.java | 2 +- .../functions/scalar/StGeometryfromtext.java | 2 +- .../functions/scalar/StGeomfromtext.java | 2 +- .../functions/scalar/StLinefromtext.java | 2 +- .../functions/scalar/StLinestringfromtext.java | 2 +- .../expressions/functions/scalar/StPoint.java | 2 +- .../functions/scalar/StPolyfromtext.java | 2 +- .../expressions/functions/scalar/StPolygon.java | 2 +- .../functions/scalar/StPolygonfromtext.java | 2 +- .../trees/expressions/functions/scalar/StX.java | 2 +- .../trees/expressions/functions/scalar/StY.java | 2 +- .../expressions/functions/scalar/StartsWith.java | 2 +- .../expressions/functions/scalar/StrLeft.java | 2 +- .../expressions/functions/scalar/StrRight.java | 2 +- .../expressions/functions/scalar/StrToDate.java | 4 +- .../expressions/functions/scalar/SubBitmap.java | 2 +- .../expressions/functions/scalar/Substring.java | 4 +- .../functions/scalar/SubstringIndex.java | 73 + .../trees/expressions/functions/scalar/Tan.java | 2 +- .../expressions/functions/scalar/TimeDiff.java | 2 +- .../expressions/functions/scalar/Timestamp.java | 11 +- .../expressions/functions/scalar/ToBase64.java | 2 +- .../expressions/functions/scalar/ToBitmap.java | 2 +- .../functions/scalar/ToBitmapWithCheck.java | 2 +- .../trees/expressions/functions/scalar/ToDate.java | 2 +- .../expressions/functions/scalar/ToDateV2.java | 2 +- .../trees/expressions/functions/scalar/ToDays.java | 2 +- .../expressions/functions/scalar/ToMonday.java | 74 + .../functions/scalar/ToQuantileState.java | 10 +- .../trees/expressions/functions/scalar/Trim.java | 2 +- .../expressions/functions/scalar/Truncate.java | 5 +- .../trees/expressions/functions/scalar/Unhex.java | 2 +- .../functions/scalar/UnixTimestamp.java | 2 +- .../trees/expressions/functions/scalar/Upper.java | 2 +- .../trees/expressions/functions/scalar/User.java | 55 + .../expressions/functions/scalar/UtcTimestamp.java | 2 +- .../trees/expressions/functions/scalar/Uuid.java | 58 + .../expressions/functions/scalar/Version.java | 2 +- .../trees/expressions/functions/scalar/Week.java | 2 +- .../expressions/functions/scalar/WeekCeil.java | 2 +- .../expressions/functions/scalar/WeekFloor.java | 2 +- .../expressions/functions/scalar/WeekOfYear.java | 2 +- .../expressions/functions/scalar/Weekday.java | 2 +- .../expressions/functions/scalar/WeeksDiff.java | 2 +- .../trees/expressions/functions/scalar/Year.java | 2 +- .../expressions/functions/scalar/YearCeil.java | 2 +- .../expressions/functions/scalar/YearFloor.java | 2 +- .../expressions/functions/scalar/YearWeek.java | 2 +- .../expressions/functions/scalar/YearsDiff.java | 2 +- .../trees/expressions/functions/table/Numbers.java | 2 +- .../trees/expressions/literal/ArrayLiteral.java | 98 + .../expressions/literal/IntegerLikeLiteral.java | 4 + .../nereids/trees/expressions/literal/Literal.java | 34 +- .../visitor/AggregateFunctionVisitor.java | 200 +- .../expressions/visitor/ExpressionVisitor.java | 15 + .../expressions/visitor/ScalarFunctionVisitor.java | 289 +- .../trees/plans/logical/LogicalAggregate.java | 33 +- .../nereids/trees/plans/logical/LogicalApply.java | 4 + .../trees/plans/logical/LogicalSetOperation.java | 2 +- .../trees/plans/logical/LogicalSubQueryAlias.java | 37 +- .../plans/physical/PhysicalOneRowRelation.java | 9 +- .../org/apache/doris/nereids/types/ArrayType.java | 10 +- .../org/apache/doris/nereids/types/BigIntType.java | 3 +- .../org/apache/doris/nereids/types/DataType.java | 140 +- .../apache/doris/nereids/types/IntegerType.java | 3 +- .../apache/doris/nereids/types/SmallIntType.java | 3 +- .../apache/doris/nereids/types/TinyIntType.java | 3 +- .../types/coercion/FollowToArgumentType.java | 55 + .../nereids/types/coercion/Int16OrLessType.java | 22 + .../nereids/types/coercion/Int32OrLessType.java | 22 + .../nereids/types/coercion/Int64OrLessType.java | 22 + .../apache/doris/nereids/util/ExpressionUtils.java | 14 + .../org/apache/doris/nereids/util/JoinUtils.java | 11 +- .../doris/nereids/util/TypeCoercionUtils.java | 51 +- .../java/org/apache/doris/nereids/util/Utils.java | 41 +- .../java/org/apache/doris/persist/EditLog.java | 19 +- .../org/apache/doris/persist/OperationType.java | 2 + .../doris/persist/TableAddOrDropColumnsInfo.java | 2 +- .../doris/persist/TableRenameColumnInfo.java | 2 +- .../planner/BackendPartitionedSchemaScanNode.java | 11 +- .../apache/doris/planner/DistributedPlanner.java | 1 + .../java/org/apache/doris/planner/EsScanNode.java | 13 +- .../org/apache/doris/planner/HashJoinNode.java | 1 + .../org/apache/doris/planner/JdbcScanNode.java | 6 - .../org/apache/doris/planner/JoinNodeBase.java | 8 + .../apache/doris/planner/ListPartitionPruner.java | 252 -- .../doris/planner/MaterializedViewSelector.java | 195 +- .../apache/doris/planner/NestedLoopJoinNode.java | 2 +- .../org/apache/doris/planner/OlapScanNode.java | 43 +- .../org/apache/doris/planner/OriginalPlanner.java | 32 +- .../org/apache/doris/planner/PlanFragment.java | 10 + .../apache/doris/planner/RangePartitionPruner.java | 194 -- .../org/apache/doris/planner/RuntimeFilter.java | 4 + .../doris/planner/RuntimeFilterGenerator.java | 2 +- .../java/org/apache/doris/planner/ScanNode.java | 23 +- .../org/apache/doris/planner/SchemaScanNode.java | 7 + .../org/apache/doris/planner/SetOperationNode.java | 3 + .../apache/doris/planner/SingleNodePlanner.java | 6 +- .../java/org/apache/doris/planner/SortNode.java | 22 +- .../apache/doris/planner/StreamLoadPlanner.java | 19 +- .../planner/external/IcebergScanProvider.java | 109 +- .../doris/planner/external/IcebergSplit.java | 2 - .../doris/planner/external/MetadataScanNode.java | 114 + .../java/org/apache/doris/plugin/AuditEvent.java | 15 +- .../org/apache/doris/policy/StoragePolicy.java | 2 +- .../java/org/apache/doris/qe/ConnectProcessor.java | 19 +- .../main/java/org/apache/doris/qe/Coordinator.java | 49 +- .../main/java/org/apache/doris/qe/DdlExecutor.java | 3 + .../main/java/org/apache/doris/qe/QueryState.java | 11 + .../java/org/apache/doris/qe/SessionVariable.java | 66 +- .../java/org/apache/doris/qe/ShowExecutor.java | 3 + .../java/org/apache/doris/qe/SqlModeHelper.java | 14 +- .../java/org/apache/doris/qe/StmtExecutor.java | 15 +- .../main/java/org/apache/doris/qe/VariableMgr.java | 63 +- .../apache/doris/rewrite/MatchPredicateRule.java | 41 + .../RoundLiteralInBinaryPredicatesRule.java | 5 +- .../doris/rewrite/mvrewrite/CountFieldToSum.java | 2 +- .../doris/rewrite/mvrewrite/ExprToSlotRefRule.java | 125 + .../rewrite/mvrewrite/HLLHashToSlotRefRule.java | 5 +- .../doris/rewrite/mvrewrite/SlotRefEqualRule.java | 3 +- .../rewrite/mvrewrite/ToBitmapToSlotRefRule.java | 4 +- .../apache/doris/service/FrontendServiceImpl.java | 96 +- .../apache/doris/statistics/AnalysisManager.java | 7 +- .../apache/doris/statistics/AnalysisTaskInfo.java | 7 +- .../apache/doris/statistics/BaseAnalysisTask.java | 7 +- .../java/org/apache/doris/statistics/Bucket.java | 25 + .../apache/doris/statistics/ColumnStatistic.java | 42 +- .../doris/statistics/ColumnStatisticBuilder.java | 13 +- .../org/apache/doris/statistics/Histogram.java | 187 +- .../apache/doris/statistics/HistogramBuilder.java | 100 + .../org/apache/doris/statistics/HistogramTask.java | 90 + .../apache/doris/statistics/HiveAnalysisTask.java | 4 +- .../doris/statistics/IcebergAnalysisTask.java | 2 +- .../org/apache/doris/statistics/Statistic.java | 55 + .../doris/statistics/StatisticConstants.java | 2 + .../apache/doris/statistics/StatisticalType.java | 1 + .../apache/doris/statistics/StatisticsCache.java | 36 +- .../doris/statistics/StatisticsCacheLoader.java | 40 +- .../doris/statistics/StatisticsRepository.java | 20 +- .../doris/statistics/util/StatisticsUtil.java | 35 + .../tablefunction/HdfsTableValuedFunction.java | 6 +- .../tablefunction/IcebergTableValuedFunction.java | 123 + .../tablefunction/MetadataTableValuedFunction.java | 46 + .../doris/tablefunction/S3TableValuedFunction.java | 4 +- .../doris/tablefunction/TableValuedFunctionIf.java | 2 + .../org/apache/doris/task/ExportExportingTask.java | 26 +- .../doris/task/NotifyUpdateStoragePolicyTask.java | 4 +- fe/fe-core/src/main/jflex/sql_scanner.flex | 12 + .../java/org/apache/doris/alter/AlterTest.java | 4 +- .../doris/alter/MaterializedViewHandlerTest.java | 74 +- .../doris/analysis/CancelExportStmtTest.java | 190 ++ .../doris/analysis/CreateCatalogStmtTest.java | 8 +- .../analysis/CreateMaterializedViewStmtTest.java | 99 +- .../analysis/CreateTableAsSelectStmtTest.java | 17 +- .../apache/doris/analysis/CreateTableStmtTest.java | 14 +- .../java/org/apache/doris/analysis/ExprTest.java | 4 - .../doris/analysis/ListPartitionPrunerTest.java | 56 +- .../analysis/MVColumnBitmapUnionPatternTest.java | 5 + .../analysis/MVColumnHLLUnionPatternTest.java | 5 + .../doris/analysis/PartitionPruneTestBase.java | 21 +- .../org/apache/doris/analysis/QueryStmtTest.java | 6 +- .../doris/analysis/RangePartitionPruneTest.java | 95 +- .../org/apache/doris/catalog/CatalogTestUtil.java | 6 +- .../org/apache/doris/catalog/CreateTableTest.java | 41 + .../org/apache/doris/catalog/DataPropertyTest.java | 2 +- .../org/apache/doris/catalog/ResourceMgrTest.java | 1 + .../org/apache/doris/catalog/S3ResourceTest.java | 3 + .../org/apache/doris/common/ExceptionChecker.java | 2 +- .../org/apache/doris/common/util/UnitTestUtil.java | 2 +- .../apache/doris/datasource/CatalogMgrTest.java | 14 +- .../org/apache/doris/http/DorisHttpTestCase.java | 5 +- .../doris/mysql/MysqlHandshakePacketTest.java | 2 +- .../translator/PhysicalPlanTranslatorTest.java | 2 +- .../properties/DistributionSpecHashTest.java | 6 +- .../rules/analysis/AnalyzeWhereSubqueryTest.java | 61 +- .../rules/analysis/BindSlotReferenceTest.java | 57 +- .../nereids/rules/analysis/CheckAnalysisTest.java | 13 + .../analysis/CheckExpressionLegalityTest.java | 74 + .../rules/analysis/FillUpMissingSlotsTest.java | 4 +- .../nereids/rules/analysis/GenerateFunction.java | 1645 ++++++++++++ .../rules/analysis/GenerateScalarFunction.java | 1393 ---------- .../join/OuterJoinLAsscomProjectTest.java | 39 +- .../rewrite/ExpressionRewriteTestHelper.java | 1 - .../rewrite/SimplifyArithmeticRuleTest.java | 2 + .../rules/expression/rewrite/TypeCoercionTest.java | 20 +- .../doris/nereids/rules/mv/SelectMvIndexTest.java | 6 +- .../rewrite/logical/AggregateStrategiesTest.java | 2 +- .../logical/EliminateUnnecessaryProjectTest.java | 34 +- .../logical/ExtractFilterFromCrossJoinTest.java | 50 + .../rules/rewrite/logical/LimitPushDownTest.java | 16 +- .../logical/PhysicalStorageLayerAggregateTest.java | 12 +- .../org/apache/doris/nereids/sqltest/JoinTest.java | 25 + .../doris/nereids/sqltest/MultiJoinTest.java | 28 +- .../apache/doris/nereids/sqltest/SqlTestBase.java | 17 +- .../nereids/trees/expressions/GetDataTypeTest.java | 39 +- .../nereids/trees/plans/PlanToStringTest.java | 2 +- .../doris/nereids/util/HyperGraphBuilder.java | 2 +- .../org/apache/doris/nereids/util/PlanChecker.java | 34 + .../doris/nereids/util/TypeCoercionUtilsTest.java | 3 +- .../persist/BatchModifyPartitionsInfoTest.java | 5 +- .../planner/MaterializedViewFunctionTest.java | 2 +- .../planner/MaterializedViewSelectorTest.java | 67 +- .../org/apache/doris/planner/QueryPlanTest.java | 4 +- .../doris/planner/TableFunctionPlanTest.java | 34 +- .../doris/rewrite/RewriteDateLiteralRuleTest.java | 24 +- .../apache/doris/statistics/AnalysisJobTest.java | 2 +- .../org/apache/doris/statistics/CacheTest.java | 78 +- .../org/apache/doris/statistics/HistogramTest.java | 16 +- .../apache/doris/statistics/MVStatisticsTest.java | 9 +- .../doris/statistics/StatsDeriveResultTest.java | 2 +- .../java/org/apache/doris/utframe/DorisAssert.java | 2 +- .../java/org/apache/doris/udf/JdbcExecutor.java | 33 +- .../java/org/apache/doris/udf/UdafExecutor.java | 69 +- .../java/org/apache/doris/udf/UdfExecutor.java | 73 +- .../main/java/org/apache/doris/udf/UdfUtils.java | 43 +- fe/pom.xml | 4 +- .../doris/plugin/audit/AuditLoaderPlugin.java | 2 + .../doris/plugin/audit/DorisStreamLoader.java | 14 +- fe_plugins/pom.xml | 8 +- .../doris/broker/hdfs/FileSystemIdentity.java | 17 + .../doris/broker/hdfs/FileSystemManager.java | 119 +- gensrc/script/doris_builtins_functions.py | 100 +- gensrc/thrift/Exprs.thrift | 3 + gensrc/thrift/FrontendService.thrift | 9 + gensrc/thrift/Opcodes.thrift | 8 + gensrc/thrift/PaloInternalService.thrift | 9 + gensrc/thrift/PlanNodes.thrift | 26 +- gensrc/thrift/Types.thrift | 1 + .../correctness/test_subquery_in_disjunction.out | 11 + .../table_valued_function/test_numbers.out | 10 + .../correctness_p0/test_group_having_alias.out | 16 + .../test_null_aware_left_anti_join.out | 1 - .../storage/test_dup_tab_datetime_nullable.out | 1 - .../duplicate/storage/test_short_key_index.out | 344 +++ .../data/datatype_p0/bitmap/test_bitmap_const.out | 4 + .../data/datatype_p0/decimalv3/test_load.out | 6 + .../data/datatype_p0/decimalv3/test_overflow.out | 19 + .../data/datatype_p0/decimalv3/test_predicate.out | 9 + .../data/datev2/tpcds_sf1_p1/sql/pipeline_q07.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q09.out | 2 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q13.out | 2 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q18.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q26.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q27.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q28.out | 2 +- .../datev2/tpcds_sf1_p1/sql/pipeline_q39_1.out | 88 +- .../datev2/tpcds_sf1_p1/sql/pipeline_q39_2.out | 8 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q47.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q53.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q57.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q63.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q75.out | 182 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q85.out | 12 +- .../data/datev2/tpcds_sf1_p1/sql/pipeline_q89.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q07.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q09.out | 2 +- .../data/datev2/tpcds_sf1_p1/sql/q13.out | 2 +- .../data/datev2/tpcds_sf1_p1/sql/q18.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q26.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q27.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q28.out | 2 +- .../data/datev2/tpcds_sf1_p1/sql/q39_1.out | 88 +- .../data/datev2/tpcds_sf1_p1/sql/q39_2.out | 8 +- .../data/datev2/tpcds_sf1_p1/sql/q47.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q53.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q57.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q63.out | 200 +- .../data/datev2/tpcds_sf1_p1/sql/q75.out | 180 +- .../data/datev2/tpcds_sf1_p1/sql/q85.out | 12 +- .../data/datev2/tpcds_sf1_p1/sql/q89.out | 200 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q01.out | 8 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q02.out | 24 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q03.out | 20 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q05.out | 10 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q06.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q07.out | 8 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q08.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q09.out | 350 +-- .../data/datev2/tpch_sf1_p2/sql/pipeline_q10.out | 40 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q11.out | 2096 +++++++-------- .../data/datev2/tpch_sf1_p2/sql/pipeline_q15.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q18.out | 114 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q19.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/pipeline_q22.out | 14 +- .../data/datev2/tpch_sf1_p2/sql/q01.out | 8 +- .../data/datev2/tpch_sf1_p2/sql/q02.out | 24 +- .../data/datev2/tpch_sf1_p2/sql/q03.out | 20 +- .../data/datev2/tpch_sf1_p2/sql/q05.out | 10 +- .../data/datev2/tpch_sf1_p2/sql/q06.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/q07.out | 8 +- .../data/datev2/tpch_sf1_p2/sql/q08.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/q09.out | 350 +-- .../data/datev2/tpch_sf1_p2/sql/q10.out | 40 +- .../data/datev2/tpch_sf1_p2/sql/q11.out | 2096 +++++++-------- .../data/datev2/tpch_sf1_p2/sql/q15.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/q18.out | 114 +- .../data/datev2/tpch_sf1_p2/sql/q19.out | 2 +- .../data/datev2/tpch_sf1_p2/sql/q22.out | 14 +- .../data/decimalv3/tpch_sf0.1_p1/sql/q01.out | 8 +- .../data/decimalv3/tpch_sf1_p2/sql/q01.out | 8 +- regression-test/data/demo_p0/streamLoad_action.out | 8 + .../hive/test_catalog_with_resource.out | 31 + .../external_catalog_p0/hive/test_hive_other.out | 12 + .../iceberg/test_external_catalog_icebergv2.out | 44 +- .../data/flink_connector_p0/flink_connector.out | 9 + .../data/javaudf_p0/test_javaudaf_mysum_int.out | 12 + .../jdbc_catalog_p0/test_mysql_jdbc_catalog.out | 16 +- .../data/jdbc_catalog_p0/test_pg_jdbc_catalog.out | 2143 +++++++++++++++ .../data/jdbc_p0/test_jdbc_query_mysql.out | 2092 +++++++-------- .../data/jdbc_p0/test_jdbc_query_pg.out | 2080 +++++++-------- .../test_dup_mv_abs/test_dup_mv_abs.out | 43 + .../test_dup_mv_bin/test_dup_mv_bin.out | 43 + .../test_dup_mv_bitmap_hash.out | 18 + .../test_dup_mv_plus/test_dup_mv_plus.out | 49 + .../test_dup_mv_year/test_dup_mv_year.out | 18 + regression-test/data/mtmv_p0/test_create_mtmv.out | 6 + .../data/nereids_syntax_p0/agg_with_empty_set.out | 20 + .../agg_with_sort.out} | 0 .../data/nereids_syntax_p0/bind_priority.out | 28 + regression-test/data/nereids_syntax_p0/cast.out | 268 ++ .../data/nereids_syntax_p0/function.out | 36 + .../data/nereids_syntax_p0/group_by_constant.out | 17 + .../join_order.out} | 0 .../null_aware_left_anti_join.out | 1 - regression-test/data/nereids_syntax_p0/rlike.out | 15 + regression-test/data/nereids_syntax_p0/rollup.out | 9 + .../data/nereids_syntax_p0/scan_partition.out | 4 + .../data/nereids_syntax_p0/select_partition.out | 9 + .../data/nereids_syntax_p0/set_operation.out | 121 + .../nereids_syntax_p0/sub_query_correlated.out | 73 +- .../sub_query_count_with_const.out} | 0 .../sub_query_diff_old_optimize.out | 31 + .../test_bitmap_function_nereids.out} | 0 .../data/nereids_syntax_p0/test_convert.out | 4 + .../nereids_syntax_p0/test_nereids_function.out | 7 + .../test_time_lut_nereids.out} | 0 .../nereids_syntax_p0/test_variance_nereids.out | 4 + .../data/nereids_syntax_p0/type_cast.out | 7 + .../data/nereids_syntax_p0/utf8_id_test.out | 16 + .../data/query_p0/aggregate/aggregate.out | 6 + .../data/query_p0/join/test_bitmap_filter.out | 7 + regression-test/data/query_p0/join/test_join.out | 91 + .../query_p0/join/test_runtimefilter_on_datev2.out | 10 + .../data/query_p0/keyword/order_group.out | 57 + .../data/query_p0/keyword/test_keyword.out | 12 + .../data/query_p0/limit/sql/withOrderBy.out | 13 + .../query_p0/show/test_show_create_catalog.out | 2 +- .../data/query_p0/show/test_show_where.out | 84 + .../test_aggregate_histogram.out | 14 + .../test_conditional_function.out | 201 ++ .../sql_functions/math_functions/test_round.out | 12 + .../math_functions/test_running_difference.out | 12 +- .../string_functions/test_split_part.out | 5 + .../data/query_p0/sql_functions/test_in_expr.out | 10 + .../test_width_bucket_function.out | 95 + regression-test/data/query_p0/union/test_union.out | 41 +- .../data/rollup/test_materialized_view_hll.out | Bin 451 -> 450 bytes .../test_materialized_view_hll_with_light_sc.out | Bin 466 -> 465 bytes .../data/rollup_p0/test_materialized_view.out | Bin 1399 -> 1398 bytes .../data/rollup_p0/test_rollup_add_column.out | 7 + .../cold_heat_separation/policy/alter.groovy | 11 +- .../cold_heat_separation/policy/create.groovy | 63 +- .../suites/cold_heat_separation/policy/drop.groovy | 10 +- .../suites/cold_heat_separation/policy/show.groovy | 5 +- .../use_policy/alter_table_add_policy.groovy | 10 +- .../create_table_use_partition_policy.groovy | 10 +- .../use_policy/create_table_use_policy.groovy | 5 +- .../use_policy/modify_partition_add_policy.groovy | 11 +- .../use_policy/use_default_storage_policy.groovy | 5 +- .../test_vertical_compaction_uniq_keys.groovy | 2 +- .../test_subquery_in_disjunction.groovy | 16 + .../table_valued_function/test_numbers.groovy | 4 + .../correctness_p0/test_group_having_alias.groovy | 27 +- .../duplicate/storage/test_short_key_index.groovy | 545 ++++ .../datatype_p0/bitmap/test_bitmap_const.groovy | 22 + .../datatype_p0/decimalv3/test_data/test.csv | 3 + .../suites/datatype_p0/decimalv3/test_load.groovy | 58 + .../datatype_p0/decimalv3/test_overflow.groovy | 56 + .../datatype_p0/decimalv3/test_predicate.groovy | 46 + .../suites/demo_p0/streamLoad_action.groovy | 26 + .../hive/test_catalog_with_resource.groovy | 98 + .../hive/test_hive_other.groovy | 20 +- .../es/test_external_catalog_es.groovy | 59 + .../es/test_external_es.groovy | 5 +- .../iceberg/test_external_catalog_icebergv2.groovy | 22 +- .../mysql/test_external_catalog_mysql.groovy | 102 + .../mysql/test_external_mysql.groovy | 70 - .../mysql/test_external_resource_mysql.groovy | 108 +- .../pg/test_external_pg.groovy | 87 +- .../suites/flink_connector_p0/ddl/create.sql | 12 + .../flink_connector_p0/flink_connector.groovy | 41 + .../test_decimal_bitmap_index_multi_page.groovy | 8 + .../suites/index_p0/test_index_meta.groovy | 7 +- .../javaudf_p0/test_javaudaf_mysum_int.groovy | 4 + .../jdbc_catalog_p0/test_mysql_jdbc_catalog.groovy | 12 +- .../jdbc_catalog_p0/test_pg_jdbc_catalog.groovy | 94 + .../suites/jdbc_p0/test_jdbc_query_mysql.groovy | 4 +- .../test_dup_mv_abs/test_dup_mv_abs.groovy | 86 + .../test_dup_mv_bin/test_dup_mv_bin.groovy | 86 + .../test_dup_mv_bitmap_hash.groovy | 79 + .../test_dup_mv_plus/test_dup_mv_plus.groovy | 92 + .../test_dup_mv_year/test_dup_mv_year.groovy | 79 + .../suites/mtmv_p0/test_create_mtmv.groovy | 86 + .../nereids_syntax_p0/agg_with_empty_set.groovy | 32 + .../suites/nereids_syntax_p0/agg_with_sort.groovy | 38 + .../suites/nereids_syntax_p0/any_value.groovy | 26 + .../suites/nereids_syntax_p0/array_function.groovy | 44 + .../suites/nereids_syntax_p0/bind_priority.groovy | 84 + .../suites/nereids_syntax_p0/cast.groovy | 196 ++ .../suites/nereids_syntax_p0/expression.groovy | 37 + .../suites/nereids_syntax_p0/function.groovy | 81 +- .../nereids_syntax_p0/group_by_constant.groovy | 19 + .../suites/nereids_syntax_p0/group_concat.groovy | 47 + .../nereids_syntax_p0/information_schema.groovy | 9 + .../suites/nereids_syntax_p0/join.groovy | 155 ++ .../suites/nereids_syntax_p0/join_order.groovy | 96 + .../suites/nereids_syntax_p0/rlike.groovy | 27 + .../suites/nereids_syntax_p0/rollup.groovy | 6 +- .../suites/nereids_syntax_p0/scan_partition.groovy | 51 + .../nereids_syntax_p0/select_partition.groovy | 12 +- .../suites/nereids_syntax_p0/set_operation.groovy | 67 +- .../suites/nereids_syntax_p0/set_var.groovy | 43 - .../nereids_syntax_p0/sub_query_alias.groovy | 13 + .../nereids_syntax_p0/sub_query_correlated.groovy | 146 +- .../sub_query_count_with_const.groovy | 53 + .../sub_query_diff_old_optimize.groovy | 160 ++ .../suites/nereids_syntax_p0/system_var.groovy | 49 + .../test_bitmap_function_nereids.groovy | 194 ++ .../suites/nereids_syntax_p0/test_convert.groovy | 50 + .../nereids_syntax_p0/test_nereids_function.groovy | 58 + .../nereids_syntax_p0/test_time_lut_nereids.groovy | 29 + .../nereids_syntax_p0/test_variance_nereids.groovy | 23 + .../suites/nereids_syntax_p0/type_cast.groovy | 41 + .../suites/nereids_syntax_p0/utf8_id_test.groovy | 34 + .../performance_p0/redundant_conjuncts.groovy | 5 +- .../suites/query_p0/aggregate/aggregate.groovy | 6 + .../query_p0/aggregate/aggregate_count1.groovy | 102 +- .../aggregate_group_by_metric_type.groovy | 40 + .../suites/query_p0/join/test_bitmap_filter.groovy | 9 + .../suites/query_p0/join/test_join.groovy | 26 +- .../join/test_runtimefilter_on_datev2.groovy | 7 + .../suites/query_p0/keyword/order_group.groovy | 10 + .../suites/query_p0/keyword/test_keyword.groovy | 4 + .../suites/query_p0/limit/sql/withOrderBy.sql | 4 + .../test_aggregate_histogram.groovy | 214 ++ .../test_array_functions_by_literal.groovy | 5 +- .../test_conditional_function.groovy | 57 + .../sql_functions/math_functions/test_round.groovy | 10 + .../string_functions/test_split_part.groovy | 2 + .../query_p0/sql_functions/test_in_expr.groovy | 8 + .../test_width_bucket_function.groovy | 88 + .../system/test_query_sys_data_type.groovy | 2 +- .../suites/query_p0/test_dict_with_null.groovy | 46 + .../suites/rollup_p0/test_rollup_add_column.groovy | 81 + .../test_agg_keys_schema_change.groovy | 1 + .../suites/statistics/alter_col_stats.groovy | 3 +- .../suites/yandex_metrica_p2/load.groovy | 2 +- run-be-ut.sh | 5 +- thirdparty/CHANGELOG.md | 6 + thirdparty/build-thirdparty.sh | 47 +- thirdparty/vars.sh | 31 +- ui/src/api/api.ts | 64 +- ui/src/components/table/index.less | 11 + ui/src/components/table/index.tsx | 50 +- ui/src/i18n.tsx | 15 +- ui/src/pages/configuration/index.tsx | 37 +- ui/src/pages/logs/index.tsx | 56 +- .../playground/content/components/data-prev.tsx | 85 +- ui/src/pages/playground/page-side/index.tsx | 20 +- ui/src/pages/playground/tree/index.tsx | 164 +- ui/src/pages/query-profile/index.tsx | 80 +- ui/src/pages/session/index.tsx | 45 +- ui/src/pages/system/index.tsx | 62 +- ui/src/utils/lazy.tsx | 17 +- ui/src/utils/utils.ts | 37 +- ui/tsconfig.json | 94 +- 1540 files changed, 55554 insertions(+), 29211 deletions(-) create mode 100644 be/src/exprs/match_predicate.cpp create mode 100644 be/src/exprs/match_predicate.h delete mode 100644 be/src/exprs/table_function/dummy_table_functions.cpp delete mode 100644 be/src/exprs/table_function/dummy_table_functions.h delete mode 100644 be/src/exprs/table_function/explode_bitmap.cpp delete mode 100644 be/src/exprs/table_function/explode_bitmap.h delete mode 100644 be/src/exprs/table_function/explode_json_array.cpp delete mode 100644 be/src/exprs/table_function/explode_json_array.h delete mode 100644 be/src/exprs/table_function/explode_split.cpp delete mode 100644 be/src/exprs/table_function/explode_split.h delete mode 100644 be/src/exprs/table_function/table_function.h delete mode 100644 be/src/exprs/table_function/table_function_factory.cpp delete mode 100644 be/src/exprs/table_function/table_function_factory.h create mode 100644 be/src/io/cache/block/block_file_cache.cpp create mode 100644 be/src/io/cache/block/block_file_cache.h create mode 100644 be/src/io/cache/block/block_file_cache_factory.cpp create mode 100644 be/src/io/cache/block/block_file_cache_factory.h create mode 100644 be/src/io/cache/block/block_file_cache_fwd.h create mode 100644 be/src/io/cache/block/block_file_cache_profile.cpp create mode 100644 be/src/io/cache/block/block_file_cache_profile.h create mode 100644 be/src/io/cache/block/block_file_cache_settings.h create mode 100644 be/src/io/cache/block/block_file_segment.cpp create mode 100644 be/src/io/cache/block/block_file_segment.h create mode 100644 be/src/io/cache/block/block_lru_file_cache.cpp create mode 100644 be/src/io/cache/block/block_lru_file_cache.h create mode 100644 be/src/io/cache/block/cached_remote_file_reader.cpp create mode 100644 be/src/io/cache/block/cached_remote_file_reader.h delete mode 100644 be/src/olap/row_block2.cpp delete mode 100644 be/src/olap/row_block2.h create mode 100644 be/src/olap/rowset/segment_v2/inverted_index_reader.cpp create mode 100644 be/src/olap/rowset/segment_v2/inverted_index_reader.h create mode 100644 be/src/pipeline/exec/empty_source_operator.cpp create mode 100644 be/src/pipeline/exec/empty_source_operator.h create mode 100644 be/src/runtime/block_spill_manager.cpp create mode 100644 be/src/runtime/block_spill_manager.h delete mode 100644 be/src/runtime/bufferpool/buffer_allocator.cc delete mode 100644 be/src/runtime/bufferpool/buffer_allocator.h delete mode 100644 be/src/runtime/bufferpool/buffer_pool.cc delete mode 100644 be/src/runtime/bufferpool/buffer_pool.h delete mode 100644 be/src/runtime/bufferpool/buffer_pool_counters.h delete mode 100644 be/src/runtime/bufferpool/buffer_pool_internal.h delete mode 100644 be/src/runtime/bufferpool/free_list.h delete mode 100644 be/src/runtime/bufferpool/suballocator.cc delete mode 100644 be/src/runtime/bufferpool/suballocator.h delete mode 100644 be/src/runtime/bufferpool/system_allocator.cc delete mode 100644 be/src/runtime/bufferpool/system_allocator.h delete mode 100644 be/src/runtime/disk_io_mgr.cc delete mode 100644 be/src/runtime/disk_io_mgr.h delete mode 100644 be/src/runtime/disk_io_mgr_internal.h delete mode 100644 be/src/runtime/disk_io_mgr_reader_context.cc delete mode 100644 be/src/runtime/disk_io_mgr_scan_range.cc delete mode 100644 be/src/runtime/row_batch.cpp delete mode 100644 be/src/runtime/row_batch.h create mode 100644 be/src/runtime/runtime_predicate.cpp create mode 100644 be/src/runtime/runtime_predicate.h create mode 100644 be/src/util/arrow/block_convertor.cpp create mode 100644 be/src/util/arrow/block_convertor.h create mode 100644 be/src/vec/common/hex.cpp create mode 100644 be/src/vec/common/hex.h create mode 100644 be/src/vec/core/block_spill_reader.cpp create mode 100644 be/src/vec/core/block_spill_reader.h create mode 100644 be/src/vec/core/block_spill_writer.cpp create mode 100644 be/src/vec/core/block_spill_writer.h create mode 100644 be/src/vec/data_types/data_type_time.cpp create mode 100644 be/src/vec/data_types/data_type_time.h create mode 100644 be/src/vec/exec/scan/vmeta_scan_node.cpp create mode 100644 be/src/vec/exec/scan/vmeta_scan_node.h create mode 100644 be/src/vec/exec/scan/vmeta_scanner.cpp create mode 100644 be/src/vec/exec/scan/vmeta_scanner.h create mode 100644 be/src/vec/exprs/table_function/table_function.h create mode 100644 be/src/vec/exprs/table_function/table_function_factory.cpp create mode 100644 be/src/vec/exprs/table_function/table_function_factory.h create mode 100644 be/src/vec/functions/function_width_bucket.cpp create mode 100644 be/src/vec/functions/match.cpp create mode 100644 be/src/vec/sink/vmemory_scratch_sink.cpp create mode 100644 be/src/vec/sink/vmemory_scratch_sink.h create mode 100644 be/src/vec/utils/histogram_helpers.hpp create mode 100644 be/test/io/cache/file_block_cache_test.cpp delete mode 100644 be/test/runtime/disk_io_mgr_test.cpp delete mode 100644 be/test/runtime/load_channel_mgr_test.cpp create mode 100644 be/test/vec/core/block_spill_test.cpp create mode 100755 build-for-release.sh create mode 100644 docs/en/docs/releasenotes/release-1.2.1.md create mode 100644 docs/en/docs/sql-manual/sql-functions/width-bucket.md create mode 100644 docs/en/docs/sql-manual/sql-reference/Data-Manipulation-Statements/Manipulation/CANCEL-EXPORT.md create mode 100644 docs/zh-CN/docs/releasenotes/release-1.2.1.md create mode 100644 docs/zh-CN/docs/sql-manual/sql-functions/width-bucket.md create mode 100644 docs/zh-CN/docs/sql-manual/sql-reference/Data-Manipulation-Statements/Manipulation/CANCEL-EXPORT.md create mode 100644 fe/fe-core/src/main/java/org/apache/doris/analysis/CancelExportStmt.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/analysis/MatchPredicate.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/analysis/TableSnapshot.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/PooledHiveMetaStoreClient.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/HiveMetaStoreClient.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/HiveVersionUtil.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/PooledHiveMetaStoreClient.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/DropTableEvent.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/EventFactory.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/IgnoredEvent.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/MetastoreEvent.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/MetastoreEventFactory.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/MetastoreEventType.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/MetastoreEventsProcessor.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/MetastoreNotificationException.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/MetastoreNotificationFetchException.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/datasource/hive/event/MetastoreTableEvent.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/AdjustAggregateNullableForEmptySetJob.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/CheckLegalityAfterRewrite.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/jobs/batch/CheckLegalityBeforeTypeCoercion.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/AdjustAggregateNullableForEmptySet.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/analysis/AvgDistinctToSumDivCount.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/exploration/join/JoinReorderCommon.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/expression/rewrite/rules/SupportJavaDateFormatter.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/EliminateFilterUnderApplyProject.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/rules/rewrite/logical/ExtractFilterFromCrossJoin.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/OrderExpression.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/VariableDesc.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/BitmapIntersectFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/ComputePrecision.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/ComputePrecisionForRound.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/ComputePrecisionForSum.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/ComputeSignatureHelper.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/AnyValue.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/ApproxCountDistinct.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/AvgWeighted.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/BitmapFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/CollectList.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/CollectSet.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/GroupConcat.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/Histogram.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/HllFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/IntersectCount.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/MaxBy.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/MinBy.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/NullableAggregateFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/OrthogonalBitmapFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/OrthogonalBitmapIntersect.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/OrthogonalBitmapIntersectCount.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/OrthogonalBitmapUnionCount.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/Percentile.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/PercentileApprox.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/PercentileArray.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/QuantileUnion.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/Retention.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/SequenceCount.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/SequenceFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/SequenceMatch.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/StdDevOrVarianceFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/Stddev.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/StddevSamp.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/TopN.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/TopNArray.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/TopNWeighted.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/Variance.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/VarianceSamp.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/WindowFunnel.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/AesCryptoFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Array.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayAvg.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayCompact.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayContains.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayDifference.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayDistinct.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayEnumerate.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayExcept.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayIntersect.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayJoin.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayMax.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayMin.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayPopback.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayPosition.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayProduct.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayRange.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayRemove.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArraySize.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArraySlice.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArraySort.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArraySum.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayUnion.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArrayWithConstant.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ArraysOverlap.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/BitmapFromArray.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/BitmapToArray.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Cardinality.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CharLength.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CompatibleTypeArrayFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ConnectionId.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ConvertTo.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CountEqual.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CryptoFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/CurrentUser.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Database.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Domain.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/DomainWithoutWww.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ElementAt.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ElementExtract.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ElementSlice.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Field.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/LastDay.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MultiMatchAny.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MultiSearchAllPositions.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Protocol.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RegexpExtractAll.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RegexpReplaceOne.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/RunningDifference.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Size.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Sm4CryptoFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SplitByChar.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SplitByString.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/SubstringIndex.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/ToMonday.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/User.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/Uuid.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/literal/ArrayLiteral.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/types/coercion/FollowToArgumentType.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/types/coercion/Int16OrLessType.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/types/coercion/Int32OrLessType.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/nereids/types/coercion/Int64OrLessType.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/planner/ListPartitionPruner.java delete mode 100644 fe/fe-core/src/main/java/org/apache/doris/planner/RangePartitionPruner.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/planner/external/MetadataScanNode.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/rewrite/MatchPredicateRule.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/rewrite/mvrewrite/ExprToSlotRefRule.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/statistics/HistogramBuilder.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/statistics/HistogramTask.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/statistics/Statistic.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/tablefunction/IcebergTableValuedFunction.java create mode 100644 fe/fe-core/src/main/java/org/apache/doris/tablefunction/MetadataTableValuedFunction.java create mode 100644 fe/fe-core/src/test/java/org/apache/doris/analysis/CancelExportStmtTest.java create mode 100644 fe/fe-core/src/test/java/org/apache/doris/nereids/rules/analysis/CheckExpressionLegalityTest.java create mode 100644 fe/fe-core/src/test/java/org/apache/doris/nereids/rules/analysis/GenerateFunction.java delete mode 100644 fe/fe-core/src/test/java/org/apache/doris/nereids/rules/analysis/GenerateScalarFunction.java create mode 100644 fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/logical/ExtractFilterFromCrossJoinTest.java create mode 100644 regression-test/data/data_model_p0/duplicate/storage/test_short_key_index.out create mode 100644 regression-test/data/datatype_p0/bitmap/test_bitmap_const.out create mode 100644 regression-test/data/datatype_p0/decimalv3/test_load.out create mode 100644 regression-test/data/datatype_p0/decimalv3/test_overflow.out create mode 100644 regression-test/data/datatype_p0/decimalv3/test_predicate.out create mode 100644 regression-test/data/demo_p0/streamLoad_action.out create mode 100644 regression-test/data/external_catalog_p0/hive/test_catalog_with_resource.out create mode 100644 regression-test/data/flink_connector_p0/flink_connector.out create mode 100644 regression-test/data/jdbc_catalog_p0/test_pg_jdbc_catalog.out create mode 100644 regression-test/data/materialized_view_p0/test_dup_mv_abs/test_dup_mv_abs.out create mode 100644 regression-test/data/materialized_view_p0/test_dup_mv_bin/test_dup_mv_bin.out create mode 100644 regression-test/data/materialized_view_p0/test_dup_mv_bitmap_hash/test_dup_mv_bitmap_hash.out create mode 100644 regression-test/data/materialized_view_p0/test_dup_mv_plus/test_dup_mv_plus.out create mode 100644 regression-test/data/materialized_view_p0/test_dup_mv_year/test_dup_mv_year.out create mode 100644 regression-test/data/mtmv_p0/test_create_mtmv.out create mode 100644 regression-test/data/nereids_syntax_p0/agg_with_empty_set.out copy regression-test/data/{tpch_sf1_p1/function/test_find_in_set.out => nereids_syntax_p0/agg_with_sort.out} (100%) create mode 100644 regression-test/data/nereids_syntax_p0/bind_priority.out create mode 100644 regression-test/data/nereids_syntax_p0/cast.out copy regression-test/data/{correctness/test_crossjoin_inlineview_slot.out => nereids_syntax_p0/join_order.out} (100%) create mode 100644 regression-test/data/nereids_syntax_p0/rlike.out create mode 100644 regression-test/data/nereids_syntax_p0/rollup.out create mode 100644 regression-test/data/nereids_syntax_p0/scan_partition.out copy regression-test/data/{correctness_p0/test_join_with_projection.out => nereids_syntax_p0/sub_query_count_with_const.out} (100%) create mode 100644 regression-test/data/nereids_syntax_p0/sub_query_diff_old_optimize.out copy regression-test/data/{query_p0/sql_functions/bitmap_functions/test_bitmap_function.out => nereids_syntax_p0/test_bitmap_function_nereids.out} (100%) create mode 100644 regression-test/data/nereids_syntax_p0/test_convert.out create mode 100644 regression-test/data/nereids_syntax_p0/test_nereids_function.out copy regression-test/data/{query_p0/sql_functions/datetime_functions/test_time_lut.out => nereids_syntax_p0/test_time_lut_nereids.out} (100%) create mode 100644 regression-test/data/nereids_syntax_p0/test_variance_nereids.out create mode 100644 regression-test/data/nereids_syntax_p0/type_cast.out create mode 100644 regression-test/data/nereids_syntax_p0/utf8_id_test.out create mode 100644 regression-test/data/query_p0/limit/sql/withOrderBy.out create mode 100644 regression-test/data/query_p0/sql_functions/aggregate_functions/test_aggregate_histogram.out create mode 100644 regression-test/data/query_p0/sql_functions/string_functions/test_split_part.out create mode 100644 regression-test/data/query_p0/sql_functions/width_bucket_fuctions/test_width_bucket_function.out create mode 100644 regression-test/data/rollup_p0/test_rollup_add_column.out create mode 100644 regression-test/suites/data_model_p0/duplicate/storage/test_short_key_index.groovy create mode 100644 regression-test/suites/datatype_p0/bitmap/test_bitmap_const.groovy create mode 100644 regression-test/suites/datatype_p0/decimalv3/test_data/test.csv create mode 100644 regression-test/suites/datatype_p0/decimalv3/test_load.groovy create mode 100644 regression-test/suites/datatype_p0/decimalv3/test_overflow.groovy create mode 100644 regression-test/suites/datatype_p0/decimalv3/test_predicate.groovy create mode 100644 regression-test/suites/external_catalog_p0/hive/test_catalog_with_resource.groovy create mode 100644 regression-test/suites/external_table_emr_p2/es/test_external_catalog_es.groovy create mode 100644 regression-test/suites/external_table_emr_p2/mysql/test_external_catalog_mysql.groovy delete mode 100644 regression-test/suites/external_table_emr_p2/mysql/test_external_mysql.groovy create mode 100644 regression-test/suites/flink_connector_p0/ddl/create.sql create mode 100644 regression-test/suites/flink_connector_p0/flink_connector.groovy create mode 100644 regression-test/suites/jdbc_catalog_p0/test_pg_jdbc_catalog.groovy create mode 100644 regression-test/suites/materialized_view_p0/test_dup_mv_abs/test_dup_mv_abs.groovy create mode 100644 regression-test/suites/materialized_view_p0/test_dup_mv_bin/test_dup_mv_bin.groovy create mode 100644 regression-test/suites/materialized_view_p0/test_dup_mv_bitmap_hash/test_dup_mv_bitmap_hash.groovy create mode 100644 regression-test/suites/materialized_view_p0/test_dup_mv_plus/test_dup_mv_plus.groovy create mode 100644 regression-test/suites/materialized_view_p0/test_dup_mv_year/test_dup_mv_year.groovy create mode 100644 regression-test/suites/mtmv_p0/test_create_mtmv.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/agg_with_empty_set.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/agg_with_sort.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/any_value.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/array_function.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/bind_priority.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/cast.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/expression.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/group_concat.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/join_order.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/rlike.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/scan_partition.groovy delete mode 100644 regression-test/suites/nereids_syntax_p0/set_var.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/sub_query_count_with_const.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/sub_query_diff_old_optimize.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/system_var.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/test_bitmap_function_nereids.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/test_convert.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/test_nereids_function.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/test_time_lut_nereids.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/test_variance_nereids.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/type_cast.groovy create mode 100644 regression-test/suites/nereids_syntax_p0/utf8_id_test.groovy create mode 100644 regression-test/suites/query_p0/limit/sql/withOrderBy.sql create mode 100644 regression-test/suites/query_p0/sql_functions/aggregate_functions/test_aggregate_histogram.groovy create mode 100644 regression-test/suites/query_p0/sql_functions/width_bucket_fuctions/test_width_bucket_function.groovy create mode 100644 regression-test/suites/query_p0/test_dict_with_null.groovy create mode 100644 regression-test/suites/rollup_p0/test_rollup_add_column.groovy --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org