This is an automated email from the ASF dual-hosted git repository.

diwu pushed a commit to branch streaming-job-dev
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 5ce7a4b1726735f176d29ef242c3ffa42d6cbedc
Merge: b2adc933555 62a96bace09
Author: wudi <[email protected]>
AuthorDate: Thu Sep 18 16:58:56 2025 +0800

    Merge branch 'master' into streaming-job-dev
    
    # Conflicts:
    #       
fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceClient.java
    #       
fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceProxy.java
    #       
fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertJob.java
    #       
fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java

 .github/workflows/stale.yml                        |   19 +-
 .licenserc.yaml                                    |    2 +
 be/CMakeLists.txt                                  |    3 +
 be/src/agent/heartbeat_server.cpp                  |    7 +
 be/src/cloud/cloud_base_compaction.cpp             |   10 +-
 .../src/cloud/cloud_cluster_info.h                 |   22 +-
 be/src/cloud/cloud_tablet.cpp                      |    3 +
 be/src/cloud/cloud_tablet_mgr.cpp                  |    8 +
 be/src/cloud/config.cpp                            |    4 +
 be/src/cloud/config.h                              |    4 +
 be/src/cloud/delete_bitmap_file_reader.cpp         |    2 +-
 be/src/cloud/delete_bitmap_file_writer.cpp         |    2 +-
 be/src/cloud/injection_point_action.cpp            |    9 -
 be/src/common/atomic_shared_ptr.h                  |   62 +
 be/src/common/compare.h                            |   26 +
 be/src/common/config.cpp                           |    8 +-
 be/src/common/config.h                             |    6 +-
 be/src/common/daemon.cpp                           |    2 +-
 be/src/common/status.h                             |    2 +-
 be/src/exec/es/es_scroll_parser.cpp                |   21 +
 be/src/exec/olap_common.cpp                        |   12 +
 be/src/exec/olap_common.h                          |  100 +-
 be/src/exec/rowid_fetcher.cpp                      |   23 +-
 be/src/exec/rowid_fetcher.h                        |    5 +
 be/src/exec/schema_scanner.cpp                     |    3 +
 .../schema_active_queries_scanner.cpp              |    1 +
 .../schema_encryption_keys_scanner.cpp             |    3 +-
 .../schema_sql_block_rule_status_scanner.cpp       |  164 ++
 .../schema_sql_block_rule_status_scanner.h}        |   44 +-
 be/src/exec/table_connector.h                      |    3 -
 be/src/exprs/hybrid_set.h                          |   56 +-
 be/src/http/action/check_encryption_action.cpp     |  174 ++
 .../action/check_encryption_action.h}              |   22 +-
 be/src/http/action/delete_bitmap_action.cpp        |    8 +
 be/src/http/action/file_cache_action.cpp           |    3 +
 be/src/http/action/stream_load.cpp                 |    5 +-
 be/src/io/CMakeLists.txt                           |   25 +
 be/src/io/cache/block_file_cache.cpp               |   21 +-
 be/src/io/cache/block_file_cache.h                 |    4 +-
 be/src/io/cache/block_file_cache_factory.cpp       |   30 +-
 be/src/io/cache/block_file_cache_factory.h         |    6 +
 be/src/io/cache/block_file_cache_profile.cpp       |    2 +-
 be/src/io/cache/cache_lru_dumper.cpp               |   53 +-
 be/src/io/cache/cache_lru_dumper.h                 |   17 +-
 be/src/io/cache/cached_remote_file_reader.cpp      |   10 +-
 be/src/io/cache/file_cache_lru_tool.cpp            |  233 +++
 be/src/io/fs/broker_file_system.cpp                |    6 +-
 be/src/io/fs/buffered_reader.cpp                   |    4 +-
 be/src/io/fs/buffered_reader.h                     |    3 +-
 be/src/io/fs/encrypted_fs_factory.h                |    2 -
 be/src/io/fs/file_writer.h                         |    7 +-
 be/src/io/fs/local_file_reader.cpp                 |   10 +-
 be/src/io/fs/multi_table_pipe.cpp                  |    9 +-
 be/src/io/fs/s3_file_writer.cpp                    |   16 +-
 be/src/io/fs/stream_load_pipe.cpp                  |    9 +-
 be/src/io/fs/stream_load_pipe.h                    |   16 +-
 be/src/io/tools/file_cache_microbench.cpp          |   15 +-
 be/src/olap/base_tablet.cpp                        |    2 +
 be/src/olap/collection_statistics.h                |    1 +
 be/src/olap/compaction.cpp                         |   96 +-
 be/src/olap/compaction.h                           |    7 +
 be/src/olap/comparison_predicate.h                 |   21 +-
 be/src/olap/in_list_predicate.h                    |   19 +-
 be/src/olap/iterators.h                            |    5 +-
 be/src/olap/memtable_writer.cpp                    |    9 +-
 be/src/olap/push_handler.cpp                       |    3 -
 be/src/olap/rowset/beta_rowset_writer.cpp          |   15 +-
 be/src/olap/rowset/rowset.cpp                      |   31 +
 be/src/olap/rowset/rowset.h                        |    4 +
 be/src/olap/rowset/rowset_meta.cpp                 |   28 +-
 be/src/olap/rowset/rowset_meta.h                   |   14 +
 be/src/olap/rowset/segment_creator.cpp             |   62 +-
 .../olap/rowset/segment_v2/ann_index/ann_index.h   |    5 +-
 .../segment_v2/ann_index/ann_index_reader.cpp      |    8 +
 .../rowset/segment_v2/ann_index/ann_index_reader.h |    4 +-
 .../segment_v2/ann_index/ann_index_writer.cpp      |   12 +-
 .../rowset/segment_v2/ann_index/ann_index_writer.h |    1 +
 .../ann_index/ann_range_search_runtime.cpp         |    6 +-
 .../ann_index/ann_range_search_runtime.h           |   29 +-
 .../segment_v2/ann_index/ann_search_params.h       |    2 +-
 .../segment_v2/ann_index/ann_topn_runtime.cpp      |  149 +-
 .../rowset/segment_v2/ann_index/ann_topn_runtime.h |    5 +-
 .../segment_v2/ann_index/faiss_ann_index.cpp       |   52 +-
 .../rowset/segment_v2/ann_index/faiss_ann_index.h  |   24 +-
 be/src/olap/rowset/segment_v2/column_reader.cpp    |   66 +-
 be/src/olap/rowset/segment_v2/column_reader.h      |    8 +-
 .../olap/rowset/segment_v2/column_reader_cache.cpp |    6 +-
 .../inverted_index/query_v2/boolean_query.cpp      |   91 -
 .../inverted_index/query_v2/boolean_query.h        |   56 -
 .../query_v2/boolean_query/boolean_query.h         |   71 +
 .../query_v2/boolean_query/boolean_weight.h        |   63 +
 .../query_v2/buffered_union_scorer.cpp             |  258 +++
 .../query_v2/buffered_union_scorer.h               |   65 +
 .../inverted_index/query_v2/composite_reader.h     |   64 +
 .../inverted_index/query_v2/conjunction_op.cpp     |   94 -
 .../inverted_index/query_v2/disjunction_op.cpp     |   86 -
 .../inverted_index/query_v2/disjunction_op.h       |   59 -
 .../segment_v2/inverted_index/query_v2/doc_set.h   |   55 +
 .../segment_v2/inverted_index/query_v2/factory.cpp |   36 -
 .../inverted_index/query_v2/factory.inline.h       |   47 -
 .../query_v2/intersection_scorer.cpp               |  158 ++
 .../query_v2/{operator.h => intersection_scorer.h} |   34 +-
 .../segment_v2/inverted_index/query_v2/node.h      |  128 --
 .../segment_v2/inverted_index/query_v2/operator.h  |   27 +-
 .../inverted_index/query_v2/phrase_query.h         |   38 -
 .../segment_v2/inverted_index/query_v2/query.h     |   31 +-
 .../inverted_index/query_v2/roaring_query.cpp      |   25 -
 .../inverted_index/query_v2/roaring_query.h        |   62 -
 .../inverted_index/query_v2/score_combiner.h       |   70 +
 .../query_v2/{term_query.h => scorer.h}            |   34 +-
 .../inverted_index/query_v2/segment_postings.h     |  107 ++
 .../query_v2/term_query/term_query.h               |   52 +
 .../query_v2/term_query/term_scorer.h              |   52 +
 .../query_v2/term_query/term_weight.h              |   74 +
 .../query_v2/{factory.h => weight.h}               |   25 +-
 .../inverted_index/similarity/bm25_similarity.cpp  |   29 +-
 .../inverted_index/similarity/bm25_similarity.h    |    3 +
 .../inverted_index/similarity/similarity.h         |    4 +-
 .../segment_v2/inverted_index/util/term_iterator.h |   21 +-
 .../inverted_index/util/term_position_iterator.h   |    9 +-
 .../segment_v2/inverted_index/util/tiny_set.h      |   59 +
 .../olap/rowset/segment_v2/inverted_index_common.h |   29 +-
 be/src/olap/rowset/segment_v2/segment.cpp          |   99 +-
 be/src/olap/rowset/segment_v2/segment_iterator.cpp |  507 +++---
 be/src/olap/rowset/segment_v2/segment_iterator.h   |   27 +-
 .../variant/hierarchical_data_iterator.cpp         |   27 +-
 be/src/olap/rowset/segment_v2/zone_map_index.cpp   |   57 +-
 be/src/olap/rowset/segment_v2/zone_map_index.h     |   12 +
 be/src/olap/storage_policy.cpp                     |    4 +-
 be/src/olap/tablet.cpp                             |   15 +-
 be/src/olap/tablet.h                               |    5 +-
 be/src/olap/tablet_meta.cpp                        |    5 +
 be/src/olap/tablet_meta.h                          |    2 +
 be/src/olap/version_graph.cpp                      |    7 +-
 be/src/olap/wal/wal_table.cpp                      |    4 +
 be/src/olap/wal/wal_writer.cpp                     |    5 +
 be/src/olap/wrapper_field.h                        |    1 +
 be/src/pipeline/dependency.cpp                     |  224 ---
 be/src/pipeline/dependency.h                       |   39 -
 be/src/pipeline/exec/aggregation_sink_operator.cpp |    9 +
 be/src/pipeline/exec/aggregation_sink_operator.h   |    1 +
 be/src/pipeline/exec/cache_sink_operator.cpp       |    4 +-
 be/src/pipeline/exec/data_queue.cpp                |   22 +-
 be/src/pipeline/exec/data_queue.h                  |    4 +-
 .../distinct_streaming_aggregation_operator.cpp    |    1 +
 .../exec/group_commit_block_sink_operator.cpp      |    3 +-
 be/src/pipeline/exec/hashjoin_build_sink.cpp       |    2 +-
 be/src/pipeline/exec/materialization_opertor.cpp   |  362 ++++
 be/src/pipeline/exec/materialization_opertor.h     |  125 ++
 .../exec/materialization_sink_operator.cpp         |  155 --
 .../pipeline/exec/materialization_sink_operator.h  |   70 -
 .../exec/materialization_source_operator.cpp       |   72 -
 .../exec/materialization_source_operator.h         |   72 -
 be/src/pipeline/exec/mock_scan_operator.h          |    3 +
 be/src/pipeline/exec/olap_scan_operator.cpp        |    5 +
 be/src/pipeline/exec/operator.cpp                  |   12 +-
 be/src/pipeline/exec/operator.h                    |    5 +-
 .../exec/partitioned_hash_join_sink_operator.cpp   |    2 +-
 be/src/pipeline/exec/scan_operator.cpp             |   14 +-
 be/src/pipeline/exec/scan_operator.h               |    6 +-
 be/src/pipeline/exec/set_sink_operator.cpp         |    2 +-
 .../exec/streaming_aggregation_operator.cpp        |    1 +
 be/src/pipeline/exec/union_sink_operator.cpp       |   16 +-
 be/src/pipeline/exec/union_sink_operator.h         |   11 +
 be/src/pipeline/exec/union_source_operator.cpp     |   12 +
 be/src/pipeline/exec/union_source_operator.h       |    1 +
 be/src/pipeline/pipeline_fragment_context.cpp      |   50 +-
 be/src/pipeline/pipeline_fragment_context.h        |    3 +-
 be/src/pipeline/pipeline_task.cpp                  |   21 +
 be/src/pipeline/pipeline_task.h                    |   20 +-
 be/src/pipeline/pipeline_tracing.cpp               |    4 +-
 be/src/pipeline/pipeline_tracing.h                 |    3 +-
 be/src/pipeline/task_queue.cpp                     |   10 +-
 be/src/pipeline/task_scheduler.cpp                 |   11 +-
 be/src/pipeline/task_scheduler.h                   |    8 +-
 be/src/runtime/define_primitive_type.h             |   39 +-
 be/src/runtime/exec_env.h                          |    7 +
 be/src/runtime/exec_env_init.cpp                   |    8 +-
 be/src/runtime/fold_constant_executor.cpp          |    8 +-
 be/src/runtime/fragment_mgr.cpp                    |   17 +-
 be/src/runtime/fragment_mgr.h                      |    6 -
 be/src/runtime/group_commit_mgr.cpp                |    3 +
 be/src/runtime/load_stream.cpp                     |   25 +-
 be/src/runtime/load_stream.h                       |    4 +-
 be/src/runtime/plugin/cloud_plugin_downloader.cpp  |  149 ++
 be/src/runtime/plugin/cloud_plugin_downloader.h    |   67 +
 be/src/runtime/primitive_type.cpp                  |    8 +-
 be/src/runtime/primitive_type.h                    |   23 +
 be/src/runtime/query_context.cpp                   |   10 +
 be/src/runtime/query_context.h                     |    4 +
 .../routine_load/routine_load_task_executor.cpp    |   11 +-
 be/src/runtime/runtime_state.cpp                   |    3 +
 be/src/runtime/runtime_state.h                     |    3 +
 be/src/runtime/stream_load/stream_load_context.cpp |   19 +-
 be/src/runtime/stream_load/stream_load_context.h   |    1 +
 .../runtime/stream_load/stream_load_executor.cpp   |   13 +-
 be/src/runtime/user_function_cache.cpp             |   45 +-
 be/src/runtime/user_function_cache.h               |    3 +-
 be/src/runtime_filter/runtime_filter_producer.cpp  |    2 -
 .../runtime_filter_producer_helper.cpp             |   13 -
 .../runtime_filter_producer_helper.h               |    3 +-
 be/src/service/backend_service.cpp                 |   63 -
 be/src/service/backend_service.h                   |   23 -
 be/src/service/http_service.cpp                    |    9 +
 be/src/service/internal_service.cpp                |   56 +-
 be/src/util/debug_points.cpp                       |    9 +-
 be/src/util/debug_points.h                         |    3 +-
 be/src/util/disk_info_mac.cpp                      |    2 +-
 be/src/util/faststring.cc                          |    6 +-
 be/src/util/jsonb_document.cpp                     |    3 +-
 be/src/util/jsonb_document_cast.h                  |   20 +
 be/src/util/jsonb_writer.h                         |   17 +-
 be/src/util/mem_info.h                             |    2 +-
 be/src/util/simd/bits.h                            |    2 +-
 be/src/util/slice.h                                |    2 +-
 be/src/util/string_parser.hpp                      |    2 +-
 be/src/util/thrift_rpc_helper.cpp                  |    2 +-
 be/src/util/thrift_rpc_helper.h                    |    2 +
 .../vec/aggregate_functions/aggregate_function.h   |    2 +
 .../aggregate_function_ai_agg.h                    |    2 +
 .../aggregate_function_approx_top.h                |  116 --
 .../aggregate_function_approx_top_k.cpp            |   42 -
 .../aggregate_function_approx_top_k.h              |  232 ---
 .../aggregate_function_approx_top_sum.cpp          |   69 -
 .../aggregate_function_approx_top_sum.h            |  248 ---
 .../aggregate_function_histogram.h                 |    9 +-
 .../aggregate_functions/aggregate_function_null.h  |    2 +
 .../aggregate_function_simple_factory.cpp          |    4 -
 .../aggregate_function_window_funnel.cpp           |    3 +-
 .../aggregate_function_window_funnel.h             |   32 +-
 be/src/vec/columns/column.h                        |    9 +-
 be/src/vec/columns/column_array.cpp                |    4 +
 be/src/vec/columns/column_array.h                  |    3 +
 be/src/vec/columns/column_const.cpp                |    4 +
 be/src/vec/columns/column_const.h                  |    2 +
 be/src/vec/columns/column_dictionary.h             |   51 +-
 be/src/vec/columns/column_map.cpp                  |  107 +-
 be/src/vec/columns/column_map.h                    |   17 +
 be/src/vec/columns/column_nullable.h               |   32 +-
 be/src/vec/columns/column_struct.cpp               |    6 +
 be/src/vec/columns/column_struct.h                 |    1 +
 be/src/vec/columns/column_varbinary.cpp            |  181 ++
 be/src/vec/columns/column_varbinary.h              |  171 ++
 be/src/vec/columns/column_variant.cpp              |   39 +-
 be/src/vec/columns/column_vector.cpp               |   21 +
 be/src/vec/columns/column_vector.h                 |    2 +
 be/src/vec/common/allocator.cpp                    |    2 +-
 be/src/vec/common/allocator.h                      |    2 +-
 be/src/vec/common/arithmetic_overflow.h            |   45 +-
 be/src/vec/common/custom_allocator.h               |   74 +
 be/src/vec/common/hash_table/phmap_fwd_decl.h      |    5 +-
 be/src/vec/common/string_view.cpp                  |   56 +
 be/src/vec/common/string_view.h                    |  157 ++
 be/src/vec/core/block.cpp                          |   22 +-
 be/src/vec/core/column_with_type_and_name.cpp      |    8 +-
 be/src/vec/core/field.cpp                          |   24 +-
 be/src/vec/core/field.h                            |   16 +-
 be/src/vec/data_types/data_type.cpp                |    1 -
 be/src/vec/data_types/data_type_decimal.h          |    6 +-
 be/src/vec/data_types/data_type_factory.cpp        |    4 +
 be/src/vec/data_types/data_type_number_base.cpp    |    4 +-
 be/src/vec/data_types/data_type_varbinary.cpp      |  157 ++
 be/src/vec/data_types/data_type_varbinary.h        |  106 ++
 .../vec/data_types/serde/data_type_array_serde.cpp |   19 +
 .../vec/data_types/serde/data_type_array_serde.h   |    2 +
 .../data_types/serde/data_type_datetimev2_serde.h  |    1 +
 .../data_types/serde/data_type_decimal_serde.cpp   |   68 +-
 .../vec/data_types/serde/data_type_decimal_serde.h |    8 +
 .../vec/data_types/serde/data_type_jsonb_serde.cpp |   12 +
 .../vec/data_types/serde/data_type_jsonb_serde.h   |    2 +
 .../vec/data_types/serde/data_type_map_serde.cpp   |   64 +
 be/src/vec/data_types/serde/data_type_map_serde.h  |    5 +
 .../data_types/serde/data_type_nullable_serde.cpp  |   10 +
 .../data_types/serde/data_type_nullable_serde.h    |    2 +
 .../data_types/serde/data_type_number_serde.cpp    |  141 +-
 .../vec/data_types/serde/data_type_number_serde.h  |    9 +
 be/src/vec/data_types/serde/data_type_serde.cpp    |   45 +
 be/src/vec/data_types/serde/data_type_serde.h      |   33 +
 .../data_types/serde/data_type_string_serde.cpp    |   52 +
 .../vec/data_types/serde/data_type_string_serde.h  |    6 +
 .../data_types/serde/data_type_struct_serde.cpp    |   13 +
 .../vec/data_types/serde/data_type_struct_serde.h  |    2 +
 be/src/vec/data_types/serde/data_type_time_serde.h |    1 +
 .../data_types/serde/data_type_varbinary_serde.cpp |   68 +
 ...variant_serde.h => data_type_varbinary_serde.h} |   53 +-
 .../data_types/serde/data_type_variant_serde.cpp   |    6 +
 .../vec/data_types/serde/data_type_variant_serde.h |    1 +
 be/src/vec/exec/format/csv/csv_reader.cpp          |   35 +-
 .../file_reader/new_plain_binary_line_reader.h     |    3 +-
 be/src/vec/exec/format/json/new_json_reader.cpp    |   14 +-
 be/src/vec/exec/format/json/new_json_reader.h      |    7 +-
 be/src/vec/exec/format/orc/orc_file_reader.cpp     |    3 +-
 be/src/vec/exec/format/orc/orc_file_reader.h       |    3 +-
 be/src/vec/exec/format/orc/vorc_reader.cpp         |   13 +-
 .../format/parquet/byte_array_dict_decoder.cpp     |    2 +-
 .../exec/format/parquet/byte_array_dict_decoder.h  |    3 +-
 be/src/vec/exec/format/parquet/decoder.h           |    6 +-
 .../format/parquet/fix_length_dict_decoder.hpp     |    3 +-
 .../vec/exec/format/parquet/parquet_thrift_util.h  |   12 +-
 .../parquet/vparquet_column_chunk_reader.cpp       |    6 +-
 .../format/parquet/vparquet_column_chunk_reader.h  |    2 +-
 .../exec/format/parquet/vparquet_column_reader.cpp |    1 +
 .../exec/format/parquet/vparquet_group_reader.cpp  |    9 +-
 .../exec/format/parquet/vparquet_group_reader.h    |    3 +-
 be/src/vec/exec/format/parquet/vparquet_reader.cpp |   11 +-
 be/src/vec/exec/format/parquet/vparquet_reader.h   |    3 +-
 be/src/vec/exec/format/table/iceberg_reader.cpp    |    3 +-
 be/src/vec/exec/format/table/iceberg_reader.h      |    7 +-
 .../vec/exec/format/table/table_format_reader.cpp  |   11 +-
 be/src/vec/exec/format/table/table_format_reader.h |   21 +-
 be/src/vec/exec/jni_connector.cpp                  |   49 +-
 be/src/vec/exec/jni_connector.h                    |    7 +-
 be/src/vec/exec/scan/file_scanner.cpp              |    5 +-
 be/src/vec/exec/scan/olap_scanner.cpp              |    3 +
 be/src/vec/exec/vjdbc_connector.cpp                |   46 +-
 be/src/vec/exec/vjdbc_connector.h                  |    9 +-
 be/src/vec/exprs/vcase_expr.cpp                    |   66 +-
 be/src/vec/exprs/vcase_expr.h                      |  238 ++-
 be/src/vec/exprs/vcast_expr.cpp                    |   29 +-
 be/src/vec/exprs/vectorized_agg_fn.cpp             |    6 +
 be/src/vec/exprs/vectorized_agg_fn.h               |    2 +
 be/src/vec/exprs/vectorized_fn_call.cpp            |   63 +-
 be/src/vec/exprs/vectorized_fn_call.h              |    5 +
 be/src/vec/exprs/vexpr.cpp                         |    1 +
 be/src/vec/exprs/vexpr.h                           |   25 +-
 be/src/vec/exprs/vtopn_pred.h                      |   21 +-
 be/src/vec/functions/ai/ai_functions.h             |  151 +-
 .../vec/functions/array/function_array_range.cpp   |    6 +-
 be/src/vec/functions/array/function_array_remove.h |  226 ++-
 .../vec/functions/array/function_arrays_overlap.h  |   84 +-
 be/src/vec/functions/cast/cast_to_jsonb.h          |   34 +-
 be/src/vec/functions/cast/cast_to_map.h            |    6 +-
 be/src/vec/functions/cast/cast_to_string.h         |  190 +-
 be/src/vec/functions/function.h                    |   56 +-
 be/src/vec/functions/function_case.h               |  458 -----
 .../function_date_or_datetime_computation.cpp      |   68 -
 .../function_date_or_datetime_computation.h        |  193 +-
 .../function_date_or_datetime_computation_v2.cpp   |   12 -
 .../vec/functions/function_datetime_floor_ceil.cpp |   20 +-
 be/src/vec/functions/function_json.cpp             |   61 +-
 be/src/vec/functions/function_jsonb.cpp            |  416 ++++-
 be/src/vec/functions/function_map.cpp              |  449 ++++-
 .../functions/function_math_unary_alway_nullable.h |   10 +-
 be/src/vec/functions/function_soundex.cpp          |  131 ++
 be/src/vec/functions/function_string.h             |   31 +-
 be/src/vec/functions/function_utility.cpp          |    5 +-
 be/src/vec/functions/match.cpp                     |   11 +-
 be/src/vec/functions/math.cpp                      |    4 +-
 be/src/vec/functions/round.h                       |    2 +
 be/src/vec/functions/simple_function_factory.h     |    6 +-
 be/src/vec/functions/uniform.cpp                   |  187 ++
 be/src/vec/olap/olap_data_convertor.h              |   34 +-
 be/src/vec/olap/vcollect_iterator.cpp              |    4 +
 be/src/vec/runtime/time_value.h                    |    8 +-
 be/src/vec/runtime/vdata_stream_mgr.cpp            |   11 +-
 be/src/vec/runtime/vdatetime_value.cpp             |   22 +-
 be/src/vec/runtime/vdatetime_value.h               |   19 +-
 be/src/vec/sink/load_stream_map_pool.cpp           |    6 +-
 be/src/vec/sink/load_stream_map_pool.h             |    1 +
 be/src/vec/sink/load_stream_stub.cpp               |   11 +-
 be/src/vec/sink/load_stream_stub.h                 |    4 +-
 be/src/vec/sink/vtablet_block_convertor.cpp        |    5 +-
 be/src/vec/sink/writer/vfile_result_writer.cpp     |    4 +-
 be/src/vec/utils/histogram_helpers.hpp             |   28 +-
 ...test.cpp => aggregate_function_ai_agg_test.cpp} |    3 +-
 ...{build_prompt_test.cpp => ai_function_test.cpp} |   27 +
 be/test/cloud/cloud_compaction_test.cpp            |  240 ++-
 be/test/common/check_overflow.cpp                  |  148 ++
 be/test/exprs/bloom_filter_func_test.cpp           |    2 +-
 be/test/io/cache/block_file_cache_test.cpp         |    3 +-
 be/test/io/fs/hdfs_file_system_test.cpp            |    1 +
 be/test/olap/block_column_predicate_test.cpp       |  916 ++++++++++
 be/test/olap/collection_statistics_test.cpp        |   37 +
 .../inverted_index/query_v2/boolean_query_test.cpp |  399 +++++
 .../query_v2/composite_reader_test.cpp             |   80 +
 .../inverted_index/query_v2/doc_set_test.cpp       |   86 +
 .../inverted_index/query_v2/query_test.cpp         |  183 --
 .../query_v2/score_combiner_test.cpp               |  103 ++
 .../query_v2/segment_postings_test.cpp             |  165 ++
 .../olap/rowset/segment_v2/zone_map_index_test.cpp |  202 +++
 be/test/olap/stale_at_test.cpp                     |  101 ++
 .../olap/vector_search/ann_index_reader_test.cpp   |    4 +-
 .../olap/vector_search/ann_range_search_test.cpp   |   63 +-
 .../vector_search/ann_topn_descriptor_test.cpp     |   26 +-
 .../ann_topn_runtime_negative_test.cpp             |  148 ++
 be/test/olap/vector_search/vector_search_utils.cpp |   10 +
 be/test/pipeline/exec/data_queue_test.cpp          |    2 +-
 .../operator/materialization_shared_state_test.cpp |   66 +-
 .../operator/scan_normalize_predicate_test.cpp     |  474 +++++
 .../plugin/cloud_plugin_downloader_test.cpp        |  241 +++
 be/test/runtime/user_function_cache_test.cpp       |  159 +-
 .../runtime_filter_producer_helper_test.cpp        |    2 +-
 be/test/util/bit_util_test.cpp                     |   93 +
 .../vec/aggregate_functions/agg_function_test.h    |    2 +-
 .../aggregate_functions/vec_window_funnel_test.cpp |    8 +-
 be/test/vec/columns/column_array_test.cpp          |    5 -
 be/test/vec/columns/column_const_test.cpp          |   26 +
 be/test/vec/columns/column_dictionary_test.cpp     |   15 +-
 be/test/vec/columns/column_varbinary_test.cpp      |  477 +++++
 be/test/vec/columns/common_column_test.h           |   16 -
 be/test/vec/common/custom_allocator_test.cpp       |   90 +
 be/test/vec/common/schema_util_rowset_test.cpp     |   60 +-
 be/test/vec/common/string_view_test.cpp            |  249 +++
 be/test/vec/core/column_map_test.cpp               |  250 +++
 .../vec/data_types/data_type_varbinary_test.cpp    |  205 +++
 .../serde/data_type_serde_varbinary_test.cpp       |  208 +++
 .../parquet/byte_array_dict_decoder_test.cpp       |   11 +-
 .../parquet/fix_length_dict_decoder_test.cpp       |   11 +-
 .../exec/format/parquet/parquet_reader_test.cpp    |    1 -
 be/test/vec/exec/orc/orc_reader_fill_data_test.cpp |   19 +-
 be/test/vec/exec/vjdbc_connector_test.cpp          |  272 +++
 be/test/vec/function/cast/cast_to_date_test.cpp    |    2 +
 .../vec/function/cast/cast_to_datetime_test.cpp    |    1 +
 be/test/vec/function/cast/cast_to_string.cpp       |   23 +
 .../vec/function/function_arrays_overlap_test.cpp  |   13 +-
 be/test/vec/function/function_string_test.cpp      |   69 +
 be/test/vec/function/function_time_test.cpp        |  327 +---
 be/test/vec/runtime/vdatetime_value_test.cpp       |  434 +++++
 bin/start_fe.sh                                    |   12 +-
 build.sh                                           |   14 +
 cloud/CMakeLists.txt                               |   93 +-
 cloud/script/start.sh                              |   90 +-
 cloud/src/common/bvars.cpp                         |   59 +-
 cloud/src/common/bvars.h                           |   46 +-
 cloud/src/common/config.h                          |   11 +-
 cloud/src/meta-service/meta_server.cpp             |    4 +-
 cloud/src/meta-service/meta_service.cpp            |   40 +-
 cloud/src/meta-service/meta_service.h              |   30 +-
 cloud/src/meta-service/meta_service_job.cpp        |   35 +-
 cloud/src/meta-service/meta_service_resource.cpp   |   13 +-
 cloud/src/meta-service/meta_service_snapshot.cpp   |  115 +-
 cloud/src/meta-store/keys.cpp                      |   91 +-
 cloud/src/meta-store/keys.h                        |    9 +
 cloud/src/meta-store/mem_txn_kv.cpp                |   27 +
 cloud/src/meta-store/mem_txn_kv.h                  |   13 +
 cloud/src/meta-store/meta_reader.cpp               |  217 +++
 cloud/src/meta-store/meta_reader.h                 |   39 +
 cloud/src/meta-store/txn_kv.cpp                    |   55 +
 cloud/src/meta-store/txn_kv.h                      |   25 +
 cloud/src/recycler/CMakeLists.txt                  |    4 +
 cloud/src/recycler/checker.cpp                     |  485 ++++-
 cloud/src/recycler/checker.h                       |   32 +
 cloud/src/recycler/meta_checker.cpp                |  383 ++--
 cloud/src/recycler/meta_checker.h                  |   83 +-
 cloud/src/recycler/recycler.cpp                    |  287 ++-
 cloud/src/recycler/recycler.h                      |   49 +-
 cloud/src/recycler/recycler_operation_log.cpp      |  548 +++---
 cloud/src/recycler/recycler_snapshot.cpp           |   85 +
 cloud/src/recycler/util.h                          |    2 +-
 cloud/src/snapshot/CMakeLists.txt                  |    4 +
 cloud/src/snapshot/snapshot_manager.cpp            |   77 +
 cloud/src/snapshot/snapshot_manager.h              |   67 +
 cloud/test/CMakeLists.txt                          |   19 +-
 cloud/test/fdb_injection_test.cpp                  |    4 +-
 cloud/test/keys_test.cpp                           |  143 +-
 cloud/test/mem_txn_kv_test.cpp                     |   80 +
 cloud/test/meta_reader_test.cpp                    |  446 ++++-
 cloud/test/meta_server_test.cpp                    |    9 +-
 cloud/test/meta_service_http_test.cpp              |   43 +-
 cloud/test/meta_service_job_test.cpp               |  244 ++-
 cloud/test/meta_service_snapshot_test.cpp          |  272 +++
 cloud/test/meta_service_test.cpp                   |   60 +-
 cloud/test/rate_limiter_test.cpp                   |    3 +-
 cloud/test/recycle_versioned_keys_test.cpp         | 1869 ++++++++++++++++++++
 cloud/test/recycler_operation_log_test.cpp         |  262 ++-
 cloud/test/recycler_test.cpp                       | 1112 ++++++++----
 cloud/test/resource_test.cpp                       |    3 +-
 cloud/test/rpc_kv_bvar_test.cpp                    |    6 +-
 cloud/test/txn_kv_test.cpp                         |   63 +
 cloud/test/txn_lazy_commit_test.cpp                |    3 +-
 docker/runtime/be/Dockerfile                       |    2 +-
 .../be/resource/be_disaggregated_entrypoint.sh     |  209 ++-
 .../runtime/be/resource/be_disaggregated_probe.sh  |   69 +-
 docker/runtime/doris-compose/cluster.py            |   20 +-
 docker/runtime/doris-compose/command.py            |   14 +-
 docker/runtime/doris-compose/resource/init_fe.sh   |    2 +
 docker/runtime/fe/Dockerfile                       |    2 +-
 .../fe/resource/fe_disaggregated_entrypoint.sh     |  136 +-
 .../runtime/fe/resource/fe_disaggregated_probe.sh  |   57 +-
 docker/runtime/ms/Dockerfile                       |    2 +-
 docker/thirdparties/custom_settings.env            |    4 +-
 .../scripts/data/composite_type_array_bulk.json    |   20 +-
 .../index/array_meta_composite_type_array.json     |    3 +-
 .../scripts/index/es6_composite_type_array.json    |   10 +-
 .../scripts/index/es7_composite_type_array.json    |   10 +-
 .../docker-compose/hive/hadoop-hive.env.tpl        |    7 +
 .../hive/scripts/data/default/account_fund/run.sh  |    3 +-
 .../hive/scripts/data/default/hive01/run.sh        |    3 +-
 .../hive/scripts/data/default/sale_table/run.sh    |    3 +-
 .../hive/scripts/data/default/string_table/run.sh  |    3 +-
 .../hive/scripts/data/default/student/run.sh       |    3 +-
 .../hive/scripts/data/default/test1/run.sh         |    3 +-
 .../hive/scripts/data/default/test2/run.sh         |    3 +-
 .../scripts/data/default/test_hive_doris/run.sh    |    3 +-
 .../scripts/data/multi_catalog/datev2_csv/run.sh   |    3 +-
 .../scripts/data/multi_catalog/datev2_orc/run.sh   |    3 +-
 .../data/multi_catalog/datev2_parquet/run.sh       |    3 +-
 .../multi_catalog/hive_text_complex_type/run.sh    |    3 +-
 .../multi_catalog/hive_text_complex_type2/run.sh   |    3 +-
 .../multi_catalog/hive_text_complex_type3/run.sh   |    3 +-
 .../hive_text_complex_type_delimiter/run.sh        |    3 +-
 .../hive_text_complex_type_delimiter2/run.sh       |    3 +-
 .../hive_text_complex_type_delimiter3/run.sh       |    3 +-
 .../hive_textfile_array_all_types/run.sh           |    3 +-
 .../hive_textfile_array_delimiter/run.sh           |    3 +-
 .../multi_catalog/hive_textfile_nestedarray/run.sh |    3 +-
 .../data/multi_catalog/hive_upper_case_orc/run.sh  |    3 +-
 .../multi_catalog/hive_upper_case_parquet/run.sh   |    3 +-
 .../data/multi_catalog/logs1_parquet/run.sh        |   10 -
 .../data/multi_catalog/one_partition/run.sh        |    3 +-
 .../data/multi_catalog/orc_nested_types/run.sh     |    3 +-
 .../multi_catalog/orc_partitioned_columns/run.sh   |    3 +-
 .../orc_partitioned_one_column/run.sh              |    3 +-
 .../multi_catalog/par_fields_in_file_orc/run.sh    |    3 +-
 .../par_fields_in_file_parquet/run.sh              |    3 +-
 .../parquet_alter_column_to_bigint/run.sh          |    3 +-
 .../parquet_alter_column_to_boolean/run.sh         |    3 +-
 .../parquet_alter_column_to_char/run.sh            |    3 +-
 .../parquet_alter_column_to_date/run.sh            |    3 +-
 .../parquet_alter_column_to_decimal/run.sh         |    3 +-
 .../parquet_alter_column_to_double/run.sh          |    3 +-
 .../parquet_alter_column_to_float/run.sh           |    3 +-
 .../parquet_alter_column_to_int/run.sh             |    3 +-
 .../parquet_alter_column_to_smallint/run.sh        |    3 +-
 .../parquet_alter_column_to_string/run.sh          |    3 +-
 .../parquet_alter_column_to_timestamp/run.sh       |    3 +-
 .../parquet_alter_column_to_tinyint/run.sh         |    3 +-
 .../parquet_alter_column_to_varchar/run.sh         |    3 +-
 .../multi_catalog/parquet_lz4_compression/run.sh   |    3 +-
 .../multi_catalog/parquet_lzo_compression/run.sh   |    3 +-
 .../data/multi_catalog/parquet_nested_types/run.sh |    3 +-
 .../parquet_partitioned_columns/run.sh             |    3 +-
 .../parquet_partitioned_one_column/run.sh          |    3 +-
 .../multi_catalog/parquet_predicate_table/run.sh   |    3 +-
 .../data/multi_catalog/partition_location_1/run.sh |    3 +-
 .../data/multi_catalog/partition_location_2/run.sh |    3 +-
 .../multi_catalog/partition_manual_remove/run.sh   |    3 +-
 .../data/multi_catalog/test_chinese_orc/run.sh     |    3 +-
 .../data/multi_catalog/test_chinese_parquet/run.sh |    3 +-
 .../data/multi_catalog/test_chinese_text/run.sh    |    3 +-
 .../data/multi_catalog/test_complex_types/run.sh   |   10 -
 .../multi_catalog/test_compress_partitioned/run.sh |   10 -
 .../multi_catalog/test_csv_format_error/run.sh     |    3 +-
 .../test_date_string_partition/run.sh              |    3 +-
 .../test_hive_same_db_table_name/run.sh            |    3 +-
 .../test_hive_special_char_partition/run.sh        |    3 +-
 .../test_mixed_par_locations_orc/run.sh            |    3 +-
 .../test_mixed_par_locations_parquet/run.sh        |    3 +-
 .../data/multi_catalog/test_multi_langs_orc/run.sh |    3 +-
 .../multi_catalog/test_multi_langs_parquet/run.sh  |    3 +-
 .../multi_catalog/test_multi_langs_text/run.sh     |    3 +-
 .../multi_catalog/test_special_orc_formats/run.sh  |    3 +-
 .../run.sh                                         |    3 +-
 .../run.sh                                         |    3 +-
 .../run.sh                                         |    3 +-
 .../data/multi_catalog/test_wide_table/run.sh      |   10 -
 .../multi_catalog/text_partitioned_columns/run.sh  |    3 +-
 .../text_partitioned_one_column/run.sh             |    3 +-
 .../multi_catalog/timestamp_with_time_zone/run.sh  |    3 +-
 .../data/multi_catalog/two_partition/run.sh        |    3 +-
 .../data/multi_catalog/type_change_orc/run.sh      |    3 +-
 .../data/multi_catalog/type_change_origin/run.sh   |    3 +-
 .../data/multi_catalog/type_change_parquet/run.sh  |    3 +-
 .../data/partition_type/bigint_partition/run.sh    |    3 +-
 .../data/partition_type/char_partition/run.sh      |    3 +-
 .../data/partition_type/date_partition/run.sh      |    3 +-
 .../data/partition_type/decimal_partition/run.sh   |    3 +-
 .../data/partition_type/double_partition/run.sh    |    3 +-
 .../data/partition_type/float_partition/run.sh     |    3 +-
 .../data/partition_type/int_partition/run.sh       |    3 +-
 .../data/partition_type/smallint_partition/run.sh  |    3 +-
 .../data/partition_type/string_partition/run.sh    |    3 +-
 .../data/partition_type/tinyint_partition/run.sh   |    3 +-
 .../data/partition_type/varchar_partition/run.sh   |    3 +-
 .../hive/scripts/data/regression/crdmm_data/run.sh |    3 +-
 .../hive/scripts/data/statistics/statistics/run.sh |    3 +-
 .../hive/scripts/data/statistics/stats/run.sh      |    3 +-
 .../hive/scripts/data/test/hive_test/run.sh        |    3 +-
 .../scripts/data/tpch_1000_parquet/part/run.sh     |    2 +-
 .../data/tvf/test_hdfs_tvf_compression/run.sh      |   10 -
 .../hive/scripts/data/tvf/test_tvf/run.sh          |   10 -
 .../docker-compose/hive/scripts/hive-metastore.sh  |   95 +-
 .../hive/scripts/prepare-hive-data.sh              |  148 ++
 .../iceberg-rest/docker-compose.yaml.tpl           |  130 +-
 .../iceberg-rest/iceberg-rest_settings.env         |   40 +-
 .../kerberos/entrypoint-hive-master.sh             |    7 +
 .../docker-compose/kerberos/hadoop-hive.env.tpl    |    7 +
 .../docker-compose/kerberos/kerberos.yaml.tpl      |    2 +
 .../docker-compose/kerberos/kerberos1_settings.env |    7 +-
 .../docker-compose/kerberos/kerberos2_settings.env |    7 +-
 ...-5414d3da-b984-4a28-a501-e7dc42a1760f-0.parquet |  Bin 0 -> 563 bytes
 ...manifest-3224f4a3-e7f2-402a-b1b1-bd1fe57d57ad-0 |  Bin 0 -> 2016 bytes
 ...est-list-7dbac4ab-1226-4c1f-8346-3b388de65ea3-0 |  Bin 0 -> 884 bytes
 ...est-list-7dbac4ab-1226-4c1f-8346-3b388de65ea3-1 |  Bin 0 -> 986 bytes
 .../hdfs_db.db/external_test_table/schema/schema-0 |   29 +
 .../external_test_table/snapshot/EARLIEST          |    1 +
 .../hdfs_db.db/external_test_table/snapshot/LATEST |    1 +
 .../external_test_table/snapshot/snapshot-1        |   19 +
 .../kerberos/sql/create_paimon_hive_table.hql      |    7 +
 .../docker-compose/mysql/init/01-drop-db.sql       |    1 +
 .../docker-compose/mysql/init/02-create-db.sql     |    1 +
 .../docker-compose/mysql/init/03-create-table.sql  |    5 +
 .../docker-compose/mysql/init/04-insert.sql        |    2 +
 docker/thirdparties/run-thirdparties-docker.sh     |   49 +-
 .../apache/doris/common/jni/vec/ColumnType.java    |   14 +-
 .../apache/doris/common/jni/vec/VectorColumn.java  |   50 +-
 .../org/apache/doris/jdbc/BaseJdbcExecutor.java    |    6 +
 .../org/apache/doris/jdbc/MySQLJdbcExecutor.java   |    7 +
 .../org/apache/doris/catalog/PrimitiveType.java    |   12 +
 .../java/org/apache/doris/catalog/ScalarType.java  |   24 +
 .../main/java/org/apache/doris/catalog/Type.java   |   71 +-
 .../java/org/apache/doris/catalog/VariantType.java |    8 +-
 .../main/java/org/apache/doris/common/Config.java  |   33 +-
 .../antlr4/org/apache/doris/nereids/DorisLexer.g4  |   11 +
 .../antlr4/org/apache/doris/nereids/DorisParser.g4 |   19 +
 .../src/main/java/org/apache/doris/DorisFE.java    |   13 +
 .../main/java/org/apache/doris/alter/Alter.java    |    9 +
 .../java/org/apache/doris/alter/AlterJobV2.java    |    7 +
 .../doris/alter/AlterLightSchChangeHelper.java     |    1 +
 .../java/org/apache/doris/alter/RollupJobV2.java   |   23 +-
 .../apache/doris/alter/SchemaChangeHandler.java    |   14 +-
 .../org/apache/doris/alter/SchemaChangeJobV2.java  |   24 +-
 .../doris/analysis/AnnIndexPropertiesChecker.java  |    7 +
 .../apache/doris/analysis/BuildIndexClause.java    |    7 +-
 .../java/org/apache/doris/analysis/IndexDef.java   |   16 +-
 .../org/apache/doris/analysis/LargeIntLiteral.java |    6 +-
 .../org/apache/doris/analysis/PartitionDesc.java   |   70 +
 .../doris/analysis/ReplacePartitionClause.java     |   13 +-
 .../org/apache/doris/analysis/SchemaTableType.java |    2 +
 .../org/apache/doris/analysis/SetLdapPassVar.java  |   62 -
 .../org/apache/doris/analysis/SetNamesVar.java     |   73 -
 .../java/org/apache/doris/analysis/SetPassVar.java |  100 --
 .../java/org/apache/doris/analysis/SetStmt.java    |  108 --
 .../apache/doris/analysis/SetUserDefinedVar.java   |   30 -
 .../apache/doris/analysis/SetUserPropertyVar.java  |  130 --
 .../apache/doris/analysis/SinglePartitionDesc.java |   99 ++
 .../org/apache/doris/analysis/SlotDescriptor.java  |    1 +
 .../java/org/apache/doris/analysis/StmtType.java   |    1 +
 .../apache/doris/analysis/VarBinaryLiteral.java    |  142 ++
 .../org/apache/doris/backup/BackupHandler.java     |   92 +-
 .../java/org/apache/doris/backup/BackupJob.java    |   38 +-
 .../org/apache/doris/backup/BackupJobInfo.java     |   70 -
 .../java/org/apache/doris/backup/Repository.java   |   35 -
 .../java/org/apache/doris/backup/RestoreJob.java   |   69 +-
 .../org/apache/doris/blockrule/SqlBlockRule.java   |   22 +
 .../apache/doris/blockrule/SqlBlockRuleMgr.java    |   25 +-
 .../org/apache/doris/catalog/AzureResource.java    |    2 +-
 .../doris/catalog/BuiltinAggregateFunctions.java   |    4 -
 .../doris/catalog/BuiltinScalarFunctions.java      |   12 +-
 .../apache/doris/catalog/CatalogRecycleBin.java    |   11 +
 .../main/java/org/apache/doris/catalog/Env.java    |   83 +-
 .../org/apache/doris/catalog/FunctionRegistry.java |    2 +-
 .../org/apache/doris/catalog/HdfsStorageVault.java |    9 +-
 .../java/org/apache/doris/catalog/HiveTable.java   |    6 +-
 .../org/apache/doris/catalog/JdbcResource.java     |   25 +-
 .../org/apache/doris/catalog/OlapTableFactory.java |   37 +-
 .../java/org/apache/doris/catalog/S3Resource.java  |    2 +-
 .../org/apache/doris/catalog/S3StorageVault.java   |    9 +-
 .../java/org/apache/doris/catalog/SchemaTable.java |   93 +-
 .../org/apache/doris/catalog/StorageVaultMgr.java  |    5 +-
 .../org/apache/doris/catalog/TableProperty.java    |    8 +-
 .../org/apache/doris/cloud/catalog/CloudEnv.java   |   34 +-
 .../cloud/datasource/CloudInternalCatalog.java     |    8 +-
 .../apache/doris/cloud/rpc/MetaServiceClient.java  |   35 +
 .../apache/doris/cloud/rpc/MetaServiceProxy.java   |   28 +
 .../doris/cloud/snapshot/CloudSnapshotHandler.java |   90 +
 .../snapshot/SnapshotState.java}                   |   33 +-
 .../apache/doris/cloud/storage/AzureRemote.java    |   27 +-
 .../apache/doris/cloud/storage/DefaultRemote.java  |   33 +
 .../org/apache/doris/cloud/storage/MockRemote.java |   11 +
 .../org/apache/doris/cloud/storage/RemoteBase.java |    5 +
 .../doris/cloud/system/CloudSystemInfoService.java |   43 +-
 .../org/apache/doris/common/ArgumentParser.java    |   35 +-
 .../org/apache/doris/common/ArgumentParsers.java   |  308 ++++
 .../apache/doris/common/CommandLineOptions.java    |   12 +
 .../org/apache/doris/common/NamedArguments.java    |  326 ++++
 .../cache/NereidsSortedPartitionsCacheManager.java |    4 +
 .../doris/common/cache/NereidsSqlCacheManager.java |  255 ++-
 .../doris/common/plugin/CloudPluginDownloader.java |  164 ++
 .../org/apache/doris/common/profile/Profile.java   |    2 -
 .../doris/common/profile/RuntimeProfile.java       |    9 -
 .../doris/common/profile/SummaryProfile.java       |   46 +-
 .../org/apache/doris/common/util/DebugUtil.java    |   61 +-
 .../apache/doris/common/util/IdGeneratorUtil.java  |   20 -
 .../org/apache/doris/common/util/PrintableMap.java |    7 +-
 .../apache/doris/common/util/PropertyAnalyzer.java |   51 +-
 .../org/apache/doris/datasource/CatalogIf.java     |   17 +-
 .../apache/doris/datasource/CatalogProperty.java   |   27 +-
 .../apache/doris/datasource/ExternalCatalog.java   |   45 +-
 .../apache/doris/datasource/InternalCatalog.java   | 1268 +------------
 .../AbstractVendedCredentialsProvider.java         |  103 ++
 .../credentials/CredentialExtractor.java           |   41 -
 .../datasource/credentials/CredentialUtils.java    |   68 +-
 .../credentials/VendedCredentialsFactory.java      |   72 +
 .../doris/datasource/hive/HMSExternalCatalog.java  |   52 +-
 .../doris/datasource/hive/HMSExternalTable.java    |    3 +-
 .../apache/doris/datasource/hive/HiveDlaTable.java |    2 +-
 .../doris/datasource/hive/HiveMetaStoreCache.java  |   14 +-
 .../doris/datasource/hive/HiveMetadataOps.java     |  117 --
 .../iceberg/IcebergDLFExternalCatalog.java         |   16 +-
 .../datasource/iceberg/IcebergExternalCatalog.java |   14 +-
 .../datasource/iceberg/IcebergMetadataOps.java     |   58 -
 .../iceberg/IcebergS3CredentialExtractor.java      |   53 -
 .../iceberg/IcebergVendedCredentialsProvider.java  |   80 +-
 .../iceberg/action/BaseIcebergAction.java          |   84 +
 .../action/IcebergCherrypickSnapshotAction.java    |   75 +
 .../action/IcebergExpireSnapshotsAction.java       |  127 ++
 .../iceberg/action/IcebergFastForwardAction.java   |   75 +
 .../action/IcebergOptimizeActionFactory.java       |  105 ++
 .../action/IcebergRewriteDataFilesAction.java      |  149 ++
 .../action/IcebergRollbackToSnapshotAction.java    |   72 +
 .../action/IcebergRollbackToTimestampAction.java   |   97 +
 .../action/IcebergSetCurrentSnapshotAction.java    |   91 +
 .../datasource/iceberg/source/IcebergScanNode.java |   27 +-
 .../datasource/jdbc/client/JdbcMySQLClient.java    |    5 +-
 .../lakesoul/source/LakeSoulScanNode.java          |   17 +-
 .../datasource/operations/ExternalMetadataOps.java |   17 -
 .../datasource/paimon/PaimonExternalCatalog.java   |   20 +-
 .../paimon/PaimonOssCredentialExtractor.java       |   68 -
 .../paimon/PaimonVendedCredentialsProvider.java    |   87 +-
 .../datasource/paimon/source/PaimonScanNode.java   |   30 +-
 .../property/constants/AzureProperties.java        |   70 -
 .../property/constants/S3Properties.java           |  336 ----
 .../metastore/AWSGlueMetaStoreBaseProperties.java  |    6 +-
 .../metastore/AWSGlueMetaStoreProperties.java      |   76 -
 .../metastore/AbstractPaimonProperties.java        |    2 +-
 .../property/metastore/DataProcProperties.java     |   37 -
 .../metastore/FileMetastoreProperties.java         |   46 -
 .../IcebergFileSystemMetaStoreProperties.java      |    7 +-
 .../metastore/IcebergGlueMetaStoreProperties.java  |    5 -
 .../metastore/IcebergHMSMetaStoreProperties.java   |   25 +-
 .../property/metastore/IcebergRestProperties.java  |    2 +-
 .../IcebergS3TablesMetaStoreProperties.java        |    4 +-
 .../PaimonAliyunDLFMetaStoreProperties.java        |    1 +
 .../metastore/PaimonHMSMetaStoreProperties.java    |    6 +-
 .../property/storage/AzureProperties.java          |    5 +-
 .../datasource/property/storage/COSProperties.java |    2 -
 .../datasource/property/storage/GCSProperties.java |    2 -
 .../property/storage/HdfsProperties.java           |    1 +
 .../property/storage/HdfsPropertiesUtils.java      |   80 +-
 .../datasource/property/storage/OSSProperties.java |   11 +-
 .../datasource/property/storage/S3Properties.java  |  289 ++-
 .../org/apache/doris/encryption/EncryptionKey.java |   62 +
 .../apache/doris/encryption/KeyManagerStore.java   |   61 +-
 .../doris/insertoverwrite/InsertOverwriteUtil.java |    6 +-
 .../doris/job/extensions/insert/InsertJob.java     |   16 +
 .../doris/job/extensions/insert/InsertTask.java    |    6 +-
 .../apache/doris/job/extensions/mtmv/MTMVTask.java |   13 +-
 .../java/org/apache/doris/journal/Journal.java     |    6 +
 .../org/apache/doris/journal/JournalEntity.java    |    6 +
 .../apache/doris/journal/bdbje/BDBJEJournal.java   |    5 +
 .../doris/journal/bdbje/BDBJournalCursor.java      |   18 +-
 .../apache/doris/journal/local/LocalJournal.java   |    5 +
 .../main/java/org/apache/doris/load/EtlStatus.java |   12 +
 .../org/apache/doris/load/GroupCommitManager.java  |   20 +-
 .../org/apache/doris/load/StreamLoadRecord.java    |    5 +-
 .../org/apache/doris/load/StreamLoadRecordMgr.java |    8 +-
 .../apache/doris/load/loadv2/BrokerLoadJob.java    |    5 +-
 .../load/loadv2/BrokerLoadingTaskAttachment.java   |    8 +-
 .../apache/doris/load/loadv2/InsertLoadJob.java    |    6 +-
 .../java/org/apache/doris/load/loadv2/LoadJob.java |    3 +
 .../apache/doris/load/loadv2/LoadLoadingTask.java  |    1 +
 .../org/apache/doris/load/loadv2/LoadManager.java  |    6 +-
 .../java/org/apache/doris/master/Checkpoint.java   |   16 +
 .../doris/mtmv/MTMVPartitionExprDateTrunc.java     |    4 +-
 .../java/org/apache/doris/mtmv/MTMVPlanUtil.java   |    7 +-
 ...MTMVRelatedPartitionDescSyncLimitGenerator.java |   27 +-
 .../org/apache/doris/mysql/MysqlSerializer.java    |   44 +-
 .../org/apache/doris/mysql/privilege/Auth.java     |   15 -
 .../apache/doris/mysql/privilege/UserProperty.java |    4 +-
 .../org/apache/doris/nereids/NereidsPlanner.java   |   25 +-
 .../org/apache/doris/nereids/SqlCacheContext.java  |  121 +-
 .../glue/translator/PhysicalPlanTranslator.java    |   62 +-
 .../doris/nereids/jobs/executor/Rewriter.java      |    5 +-
 .../doris/nereids/load/NereidsDataDescription.java |   12 +-
 .../nereids/load/NereidsLoadScanProvider.java      |   99 +-
 .../doris/nereids/parser/LogicalPlanBuilder.java   |  109 +-
 .../post/materialize/MaterializeProbeVisitor.java  |   15 +-
 .../org/apache/doris/nereids/rules/RuleType.java   |    1 +
 .../doris/nereids/rules/analysis/BindRelation.java |   78 +-
 .../nereids/rules/analysis/ExpressionAnalyzer.java |   35 +-
 .../rules/analysis/FoldConstantForSqlCache.java    |   98 +
 .../mv/InitMaterializationContextHook.java         |    6 +-
 .../exploration/mv/MaterializationContext.java     |   13 +
 .../mv/PreMaterializedViewRewriter.java            |    1 +
 .../rules/expression/ExpressionRuleType.java       |    1 +
 .../nereids/rules/expression/check/CheckCast.java  |   24 +-
 .../expression/rules/FoldConstantRuleOnBE.java     |   61 +-
 .../expression/rules/JsonFunctionRewrite.java      |   26 +-
 .../rules/SimplifyComparisonPredicate.java         |   78 +-
 .../rules/rewrite/DistinctAggStrategySelector.java |   26 +-
 .../rules/rewrite/DistinctAggregateRewriter.java   |    6 +-
 .../rewrite/EliminateGroupByKeyByUniform.java      |    7 +-
 .../doris/nereids/rules/rewrite/InitJoinOrder.java |    7 +-
 .../rewrite/PushDownFilterIntoSchemaScan.java      |    2 +-
 .../rewrite/PushDownVectorTopNIntoOlapScan.java    |    4 +-
 .../PushDownVirtualColumnsIntoOlapScan.java        |   75 +-
 .../rules/rewrite/SplitMultiDistinctStrategy.java  |    6 -
 .../rules/rewrite/VariantSubPathPruning.java       |   34 +
 .../doris/nereids/stats/FilterEstimation.java      |   14 +-
 .../doris/nereids/stats/StatsCalculator.java       |   31 +-
 .../doris/nereids/trees/expressions/Cast.java      |   15 +-
 .../expressions/functions/ComputeSignature.java    |    2 +-
 .../ComputeSignatureForDateArithmetic.java         |   16 +-
 .../functions/ComputeSignatureHelper.java          |   31 +-
 .../expressions/functions/SearchSignature.java     |    2 +-
 .../expressions/functions/agg/ApproxTopK.java      |   99 --
 .../expressions/functions/agg/ApproxTopSum.java    |   99 --
 .../trees/expressions/functions/agg/Histogram.java |   16 +-
 .../trees/expressions/functions/agg/MapAgg.java    |    4 +-
 .../trees/expressions/functions/agg/MapAggV2.java  |    4 +-
 .../functions/executable/DateTimeAcquire.java      |    6 +-
 .../functions/executable/DateTimeArithmetic.java   |  219 +--
 .../executable/DateTimeExtractAndTransform.java    |   17 +
 .../functions/executable/NumericArithmetic.java    |   19 +
 .../functions/executable/StringArithmetic.java     |   55 +
 .../functions/executable/TimeRoundSeries.java      |  369 +---
 .../functions/scalar/AesCryptoFunction.java        |    5 +
 .../trees/expressions/functions/scalar/Array.java  |   16 +-
 .../expressions/functions/scalar/ArrayRemove.java  |   20 +-
 .../functions/scalar/ArrayReverseSort.java         |    8 +-
 .../expressions/functions/scalar/ArraySort.java    |    8 +-
 .../expressions/functions/scalar/ArraySortBy.java  |   11 +
 .../expressions/functions/scalar/ArraySum.java     |    8 +-
 .../expressions/functions/scalar/ArrayUnion.java   |   12 +
 .../expressions/functions/scalar/ArrayZip.java     |    2 +-
 .../functions/scalar/ArraysOverlap.java            |   12 +
 .../expressions/functions/scalar/Coalesce.java     |   82 +-
 .../expressions/functions/scalar/CountEqual.java   |   12 +
 .../expressions/functions/scalar/CreateMap.java    |    5 +
 .../functions/scalar/CreateNamedStruct.java        |    9 +-
 .../expressions/functions/scalar/CreateStruct.java |   14 +
 .../expressions/functions/scalar/CurrentDate.java  |    4 +-
 .../expressions/functions/scalar/DayCeil.java      |    8 +-
 .../expressions/functions/scalar/DayFloor.java     |    8 +-
 .../expressions/functions/scalar/DaysAdd.java      |   29 +-
 .../expressions/functions/scalar/DaysSub.java      |   29 +-
 .../expressions/functions/scalar/Greatest.java     |   67 +-
 .../functions/scalar/GreatestLeast.java            |   83 +
 .../expressions/functions/scalar/HourCeil.java     |    8 +-
 .../expressions/functions/scalar/HourFloor.java    |    8 +-
 .../expressions/functions/scalar/HoursAdd.java     |   17 +-
 .../expressions/functions/scalar/HoursSub.java     |   17 +-
 .../trees/expressions/functions/scalar/If.java     |  108 +-
 .../scalar/{JsonbValid.java => JsonRemove.java}    |   49 +-
 .../expressions/functions/scalar/JsonbValid.java   |    5 +-
 .../trees/expressions/functions/scalar/Least.java  |   68 +-
 .../functions/scalar/MapContainsEntry.java         |  112 ++
 .../expressions/functions/scalar/MapEntries.java   |   96 +
 .../trees/expressions/functions/scalar/Mask.java   |   30 +-
 .../functions/scalar/MicroSecondsAdd.java          |   12 +-
 .../functions/scalar/MicroSecondsSub.java          |   12 +-
 .../functions/scalar/MilliSecondsAdd.java          |   12 +-
 .../functions/scalar/MilliSecondsSub.java          |   12 +-
 .../expressions/functions/scalar/MinuteCeil.java   |    8 +-
 .../expressions/functions/scalar/MinuteFloor.java  |    8 +-
 .../expressions/functions/scalar/MinutesAdd.java   |   19 +-
 .../expressions/functions/scalar/MinutesSub.java   |   19 +-
 .../expressions/functions/scalar/MonthCeil.java    |    8 +-
 .../expressions/functions/scalar/MonthFloor.java   |    8 +-
 .../expressions/functions/scalar/MonthsAdd.java    |   28 +-
 .../expressions/functions/scalar/MonthsSub.java    |   28 +-
 .../trees/expressions/functions/scalar/NullIf.java |   67 +-
 .../trees/expressions/functions/scalar/Nvl.java    |   67 +-
 .../expressions/functions/scalar/QuartersAdd.java  |    5 +-
 .../expressions/functions/scalar/QuartersSub.java  |    5 +-
 .../expressions/functions/scalar/SecToTime.java    |    5 +-
 .../expressions/functions/scalar/SecondCeil.java   |    8 +-
 .../expressions/functions/scalar/SecondFloor.java  |    8 +-
 .../expressions/functions/scalar/SecondsAdd.java   |   19 +-
 .../expressions/functions/scalar/SecondsSub.java   |   19 +-
 .../scalar/{SecToTime.java => Soundex.java}        |   26 +-
 .../functions/scalar/StructElement.java            |   14 +-
 .../trees/expressions/functions/scalar/ToJson.java |   18 +
 .../expressions/functions/scalar/Uniform.java      |  117 ++
 .../expressions/functions/scalar/WeekCeil.java     |    8 +-
 .../expressions/functions/scalar/WeekFloor.java    |    8 +-
 .../expressions/functions/scalar/WeeksAdd.java     |   28 +-
 .../expressions/functions/scalar/WeeksSub.java     |   28 +-
 .../expressions/functions/scalar/YearCeil.java     |    8 +-
 .../expressions/functions/scalar/YearFloor.java    |    8 +-
 .../expressions/functions/scalar/YearsAdd.java     |   28 +-
 .../expressions/functions/scalar/YearsSub.java     |   28 +-
 .../trees/expressions/literal/ArrayLiteral.java    |    2 +-
 .../trees/expressions/literal/DateLiteral.java     |    2 +
 .../trees/expressions/literal/DateTimeLiteral.java |    2 +
 .../expressions/literal/DateTimeV2Literal.java     |    8 +-
 .../trees/expressions/literal/Interval.java        |    2 +-
 .../trees/expressions/literal/LargeIntLiteral.java |    8 +
 .../nereids/trees/expressions/literal/Literal.java |   27 +-
 .../trees/expressions/literal/MapLiteral.java      |   69 +-
 .../expressions/literal/StringLikeLiteral.java     |    2 +-
 .../trees/expressions/literal/StructLiteral.java   |    2 +-
 .../trees/expressions/literal/TimeV2Literal.java   |   24 +-
 .../expressions/literal/VarBinaryLiteral.java      |  150 ++
 .../visitor/AggregateFunctionVisitor.java          |   10 -
 .../expressions/visitor/ExpressionVisitor.java     |    5 +
 .../expressions/visitor/ScalarFunctionVisitor.java |   25 +
 .../apache/doris/nereids/trees/plans/PlanType.java |    6 +
 .../nereids/trees/plans/algebra/Aggregate.java     |   13 +
 .../AdminBackupClusterSnapshotCommand.java         |  110 ++
 .../commands/AdminDropClusterSnapshotCommand.java  |  108 ++
 .../commands/AdminSetClusterSnapshotCommand.java   |  154 ++
 .../commands/AdminShowClusterSnapshotCommand.java  |  126 ++
 .../AdminShowClusterSnapshotPropertiesCommand.java |  110 ++
 .../plans/commands/CreateFunctionCommand.java      |   57 +-
 .../trees/plans/commands/CreateMTMVCommand.java    |    6 +-
 .../trees/plans/commands/CreatePolicyCommand.java  |   42 +-
 .../plans/commands/CreateStorageVaultCommand.java  |    2 +-
 .../trees/plans/commands/CreateTableCommand.java   |   80 +-
 .../trees/plans/commands/OptimizeTableCommand.java |  144 ++
 .../trees/plans/commands/ShowLoadCommand.java      |    4 +-
 .../plans/commands/ShowProcessListCommand.java     |    2 +-
 .../plans/commands/ShowTransactionCommand.java     |    5 +-
 .../plans/commands/ShowUserPropertyCommand.java    |    6 +-
 .../commands/alter/AlterRepositoryCommand.java     |   23 +-
 .../trees/plans/commands/info/CopyIntoInfo.java    |    5 +-
 .../trees/plans/commands/info/CreateMTMVInfo.java  |  143 +-
 .../plans/commands/info/CreateResourceInfo.java    |    4 +-
 .../trees/plans/commands/info/CreateTableInfo.java |  218 ++-
 .../plans/commands/info/FixedRangePartition.java   |    8 +
 .../trees/plans/commands/info/InPartition.java     |    4 +
 .../trees/plans/commands/info/IndexDefinition.java |    3 +-
 .../plans/commands/info/LessThanPartition.java     |    4 +
 .../plans/commands/info/PartitionDefinition.java   |   32 +
 .../plans/commands/info/PartitionTableInfo.java    |    4 +
 .../plans/commands/info/ReplacePartitionOp.java    |    3 +-
 .../plans/commands/info/RollupDefinition.java      |   21 +
 .../plans/commands/info/SetUserPropertyVarOp.java  |    2 +
 .../trees/plans/commands/info/TableRefInfo.java    |   38 +-
 .../insert/BaseExternalTableInsertExecutor.java    |    6 +
 .../plans/commands/insert/JdbcInsertExecutor.java  |    6 +
 .../insert/OlapGroupCommitInsertExecutor.java      |    6 +
 .../plans/commands/insert/OlapInsertExecutor.java  |    9 +-
 .../commands/optimize/BaseOptimizeAction.java      |  211 +++
 .../plans/commands/optimize/OptimizeAction.java    |   98 +
 .../commands/optimize/OptimizeActionFactory.java   |   83 +
 .../trees/plans/distribute/DistributePlanner.java  |    3 +-
 .../trees/plans/logical/LogicalSetOperation.java   |   14 +
 .../trees/plans/physical/PhysicalOlapScan.java     |   19 +-
 .../plans/physical/PhysicalOneRowRelation.java     |   13 +
 .../trees/plans/visitor/CommandVisitor.java        |   35 +
 .../plans/visitor/ExpressionLineageReplacer.java   |    4 +-
 .../apache/doris/nereids/types/AggStateType.java   |    8 +
 .../org/apache/doris/nereids/types/BigIntType.java |    5 +
 .../org/apache/doris/nereids/types/DataType.java   |   11 +
 .../apache/doris/nereids/types/DecimalV3Type.java  |   17 +-
 .../apache/doris/nereids/types/IntegerType.java    |    5 +
 .../apache/doris/nereids/types/LargeIntType.java   |    5 +
 .../apache/doris/nereids/types/SmallIntType.java   |    5 +
 .../apache/doris/nereids/types/StructField.java    |    2 +
 .../org/apache/doris/nereids/types/StructType.java |   24 +-
 .../apache/doris/nereids/types/TinyIntType.java    |    5 +
 .../apache/doris/nereids/types/VarBinaryType.java  |  103 ++
 .../apache/doris/nereids/types/VariantType.java    |   10 +-
 .../doris/nereids/types/coercion/AnyDataType.java  |    6 +
 .../types/coercion/FollowToAnyDataType.java        |    5 +
 .../doris/nereids/types/coercion/IntegralType.java |    7 +
 .../doris/nereids/util/MoreFieldsThread.java       |   31 +
 .../doris/nereids/util/TypeCoercionUtils.java      |  537 +++++-
 .../java/org/apache/doris/persist/EditLog.java     |   10 +
 .../apache/doris/persist/GlobalVarPersistInfo.java |    5 +
 .../org/apache/doris/persist/OperationType.java    |    2 +
 .../planner/BackendPartitionedSchemaScanNode.java  |    1 +
 .../apache/doris/planner/GroupCommitPlanner.java   |   11 +
 .../org/apache/doris/planner/IcebergTableSink.java |   26 +-
 .../org/apache/doris/planner/SchemaScanNode.java   |   18 +-
 .../org/apache/doris/policy/StoragePolicy.java     |    2 +-
 .../java/org/apache/doris/qe/ConnectContext.java   |   50 +-
 .../java/org/apache/doris/qe/ConnectProcessor.java |   83 +-
 .../main/java/org/apache/doris/qe/Coordinator.java |    9 +
 .../main/java/org/apache/doris/qe/DdlExecutor.java |   54 -
 .../java/org/apache/doris/qe/FEOpExecutor.java     |    5 +
 .../java/org/apache/doris/qe/GlobalVariable.java   |   26 +-
 .../main/java/org/apache/doris/qe/LoadContext.java |    9 +
 .../org/apache/doris/qe/NereidsCoordinator.java    |    5 +
 .../java/org/apache/doris/qe/SessionVariable.java  |  146 +-
 .../main/java/org/apache/doris/qe/SetExecutor.java |   70 -
 .../java/org/apache/doris/qe/StmtExecutor.java     |   97 +-
 .../main/java/org/apache/doris/qe/VariableMgr.java |   14 +-
 .../org/apache/doris/qe/cache/CacheAnalyzer.java   |   30 +-
 .../org/apache/doris/qe/runtime/LoadProcessor.java |    3 +
 .../WorkloadActionSetSessionVar.java               |   14 +-
 .../org/apache/doris/rpc/BackendServiceProxy.java  |   33 -
 .../apache/doris/service/FrontendServiceImpl.java  |   64 +-
 .../sessions/FlightSqlConnectContext.java          |    8 +-
 .../apache/doris/statistics/AnalysisManager.java   |   26 +-
 .../apache/doris/statistics/BaseAnalysisTask.java  |    8 +-
 .../org/apache/doris/statistics/ColStatsData.java  |    5 +-
 .../apache/doris/statistics/ColumnStatistic.java   |   24 +-
 .../apache/doris/statistics/HMSAnalysisTask.java   |    2 +
 .../apache/doris/statistics/OlapAnalysisTask.java  |    2 +
 .../doris/statistics/StatisticsRepository.java     |   15 +-
 .../doris/statistics/util/StatisticsUtil.java      |    7 +-
 .../main/java/org/apache/doris/system/Backend.java |    5 +
 .../java/org/apache/doris/system/HeartbeatMgr.java |    4 +
 .../doris/tablefunction/MetadataGenerator.java     |   67 +
 .../java/org/apache/doris/task/AgentClient.java    |   61 -
 .../apache/doris/task/PushStoragePolicyTask.java   |    2 +-
 .../org/apache/doris/analysis/AccessTestUtil.java  |    2 +-
 .../org/apache/doris/backup/BackupJobTest.java     |   98 +-
 .../org/apache/doris/catalog/S3ResourceTest.java   |    2 +-
 .../org/apache/doris/catalog/SchemaTableTest.java  |   96 +
 .../doris/cloud/catalog/HdfsStorageVaultTest.java  |    2 +-
 .../cloud/datasource/CloudInternalCatalogTest.java |  819 ---------
 .../cloud/system/CloudSystemInfoServiceTest.java   |   33 +
 .../apache/doris/common/ArgumentParsersTest.java   |  422 +++++
 .../org/apache/doris/common/CacheFactoryTest.java  |   32 +
 .../org/apache/doris/common/GenericPoolTest.java   |   35 -
 .../apache/doris/common/NamedArgumentsTest.java    |  394 +++++
 .../common/plugin/CloudPluginDownloaderTest.java   |  173 ++
 .../doris/common/profile/SummaryProfileTest.java   |   63 +
 .../apache/doris/common/util/LocationPathTest.java |   20 +-
 .../doris/datasource/InternalCatalogTest.java      |  600 -------
 .../AbstractVendedCredentialsProviderTest.java     |  297 ++++
 .../credentials/CredentialUtilsTest.java           |  246 +++
 .../credentials/VendedCredentialsFactoryTest.java  |  213 +++
 .../doris/datasource/hive/HiveMetadataOpsTest.java |  170 --
 .../IcebergVendedCredentialsProviderTest.java      |  361 ++--
 .../PaimonVendedCredentialsProviderTest.java       |  456 +++--
 .../paimon/source/PaimonScanNodeTest.java          |   12 +-
 .../property/constants/AzurePropertiesTest.java    |   55 -
 .../AWSGlueMetaStoreBasePropertiesTest.java        |  111 ++
 .../metastore/AWSGlueMetaStorePropertiesTest.java  |  174 --
 .../metastore/AbstractIcebergPropertiesTest.java   |  125 ++
 .../property/metastore/GlueCatalogTest.java        |    7 +-
 .../HMSAliyunDLFMetaStorePropertiesTest.java       |   51 +
 .../metastore/HMSGlueMetaStorePropertiesTest.java  |    2 +-
 .../IcebergAliyunDLFMetaStorePropertiesTest.java   |  106 ++
 .../IcebergFileSystemMetaStorePropertiesTest.java  |   69 +
 .../IcebergGlueMetaStorePropertiesTest.java        |   66 +
 .../IcebergHMSMetaStorePropertiesTest.java         |   69 +
 .../IcebergS3TablesMetaStorePropertiesTest.java    |   59 +
 .../PaimonAliyunDLFMetaStorePropertiesTest.java    |  139 ++
 .../property/metastore/PaimonCatalogTest.java      |    5 +-
 .../PaimonFileSystemMetaStorePropertiesTest.java   |   63 +
 .../PaimonHMSMetaStorePropertiesTest.java          |   65 +
 .../property/storage/COSPropertiesTest.java        |   15 +
 .../property/storage/GCSPropertiesTest.java        |   14 +
 .../property/storage/HdfsPropertiesTest.java       |    6 +
 .../property/storage/HdfsPropertiesUtilsTest.java  |   70 +
 .../property/storage/OBSPropertyTest.java          |   15 +
 .../property/storage/OSSPropertiesTest.java        |   15 +
 .../property/storage/S3PropertiesTest.java         |   10 +
 .../apache/doris/external/hms/HmsCatalogTest.java  |    5 +
 .../apache/doris/fs/obj/AzureObjStorageTest.java   |    2 +-
 .../org/apache/doris/fs/obj/S3FileSystemTest.java  |    2 +-
 .../doris/fs/obj/S3ObjStorageGlobListTest.java     |    2 +-
 .../doris/load/loadv2/InsertLoadJobTest.java       |    2 +-
 .../apache/doris/load/loadv2/LoadManagerTest.java  |    8 +-
 ...RelatedPartitionDescSyncLimitGeneratorTest.java |    4 +-
 .../doris/mysql/privilege/SetPasswordTest.java     |   29 +-
 .../glue/translator/CountStarSmallestSlotTest.java |  460 +++++
 .../mv/PreMaterializedViewRewriterTest.java        |   17 +
 .../doris/nereids/parser/NereidsParserTest.java    |   37 +
 .../nereids/parser/VarBinaryLiteralParserTest.java |  175 ++
 .../postprocess/TopnLazyMaterializeTest.java       |   27 +
 .../doris/nereids/properties/UniqueTest.java       |    4 +-
 .../nereids/rules/analysis/BindRelationTest.java   |   32 +
 .../nereids/rules/expression/FoldConstantTest.java |  243 +--
 .../expression/SimplifyArithmeticRuleTest.java     |    1 -
 .../rules/SimplifyComparisonPredicateTest.java     |  146 +-
 .../rules/SimplifyConditionalFunctionTest.java     |   10 +-
 .../rewrite/DistinctAggregateRewriterTest.java     |   38 +
 .../PushDownVirtualColumnsIntoOlapScanTest.java    |  414 ++++-
 .../rules/rewrite/SplitMultiDistinctTest.java      |   15 +
 .../doris/nereids/stats/FilterEstimationTest.java  |   11 +-
 .../doris/nereids/stats/StatsCalculatorTest.java   |   54 +-
 .../apache/doris/nereids/stats/StatsTestUtil.java  |    2 +-
 .../doris/nereids/trees/expressions/UdfTest.java   |   23 +-
 .../trees/expressions/VarBinaryLiteralTest.java    |  103 ++
 .../functions/ComputeSignatureHelperTest.java      |   67 +-
 .../trees/expressions/literal/DateLiteralTest.java |    3 +
 .../expressions/literal/DateTimeLiteralTest.java   |    5 +
 .../expressions/literal/IntegerLiteralTest.java    |   22 +-
 .../expressions/literal/LargeIntLiteralTest.java   |   89 +
 .../expressions/literal/VarBinaryLiteralTest.java  |  110 ++
 .../trees/plans/CreateTableCommandTest.java        |  183 ++
 .../AdminBackupClusterSnapshotCommandTest.java     |  123 ++
 .../AdminDropClusterSnapshotCommandTest.java       |  119 ++
 .../AdminSetClusterSnapshotCommandTest.java        |  154 ++
 .../AdminShowClusterSnapshotCommandTest.java       |  101 ++
 ...inShowClusterSnapshotPropertiesCommandTest.java |  101 ++
 .../trees/plans/commands/LoadCommandTest.java      |   42 +
 .../doris/nereids/types/VarBinaryTypeTest.java     |   88 +
 .../org/apache/doris/nereids/util/PlanChecker.java |   80 +-
 .../doris/nereids/util/TypeCoercionMatrixTest.java | 1272 +++++++++++++
 .../doris/nereids/util/TypeCoercionUtilsTest.java  |  558 +-----
 .../java/org/apache/doris/policy/PolicyTest.java   |    2 +-
 .../apache/doris/qe/ConnectProcessorRetryTest.java |  181 ++
 .../java/org/apache/doris/qe/SetExecutorTest.java  |   94 -
 .../java/org/apache/doris/qe/SqlCacheTest.java     |    7 +-
 .../org/apache/doris/rewrite/FEFunctionsTest.java  |    4 +-
 .../doris/statistics/AnalysisManagerTest.java      |    4 +-
 .../doris/statistics/OlapAnalysisTaskTest.java     |    8 +-
 .../doris/statistics/util/StatisticsUtilTest.java  |   22 +-
 .../apache/doris/utframe/MockedBackendFactory.java |   33 -
 gensrc/proto/cloud.proto                           |   25 +-
 gensrc/proto/internal_service.proto                |    2 +
 gensrc/proto/segment_v2.proto                      |    6 +
 gensrc/script/Makefile                             |    4 +-
 gensrc/script/gen_build_version.sh                 |   17 +-
 gensrc/thrift/BackendService.thrift                |   25 +-
 gensrc/thrift/Descriptors.thrift                   |    5 +-
 gensrc/thrift/Exprs.thrift                         |    6 +
 gensrc/thrift/FrontendService.thrift               |   16 +-
 gensrc/thrift/HeartbeatService.thrift              |    5 +
 gensrc/thrift/PaloInternalService.thrift           |  183 +-
 gensrc/thrift/PlanNodes.thrift                     |    6 +-
 gensrc/thrift/Types.thrift                         |   13 +-
 regression-test/conf/regression-conf.groovy        |    4 +
 .../data/ann_index_p0/cast_string_as_array.out     |  Bin 0 -> 363 bytes
 .../scalar_quantization.out}                       |  Bin 133 -> 143 bytes
 .../default_vcg_auto_failover.out                  |  Bin 0 -> 299 bytes
 .../failover_standby_disable_compaction.out}       |  Bin 129 -> 171 bytes
 .../standby_disable_compaction.out}                |  Bin 129 -> 171 bytes
 .../use_default_vcg_read_write.out                 |  Bin 0 -> 299 bytes
 .../use_vcg_read_write_routine_load.out            |  Bin 0 -> 3581 bytes
 .../use_vcg_read_write_unhealthy_node_50.out       |  Bin 0 -> 299 bytes
 .../virtual_compute_group/vcg_auto_failover.out    |  Bin 0 -> 299 bytes
 .../vcg_auto_failover_manual_failback.out          |  Bin 0 -> 367 bytes
 .../test_compaction_with_empty_rowset.out          |  Bin 0 -> 349 bytes
 .../data/correctness/test_time_function.out        |  Bin 447 -> 860 bytes
 .../test_outer_join_with_window_function.out       |  Bin 223 -> 220 bytes
 ...test_outer_join_with_window_function_datev2.out |  Bin 223 -> 220 bytes
 .../data/correctness_p0/test_select_constant.out   |  Bin 214 -> 216 bytes
 .../data/datatype_p0/datetimev2/test_exprs.out     |  Bin 2316 -> 2496 bytes
 .../float/test_float_special_values.out            |  Bin 11870 -> 66662 bytes
 .../one_level_nestedtypes_with_s3data.out          |  Bin 3604422 -> 3598328 
bytes
 .../nested_types/query/sql/nested_with_join.out    |  Bin 1020 -> 1024 bytes
 .../test_nestedtypes_csv_insert_into_with_s3.out   |  Bin 436103 -> 412376 
bytes
 .../test_nestedtypes_json_insert_into_with_s3.out  |  Bin 733470 -> 705865 
bytes
 .../get_assignment_compatible_type.out             |  Bin 753 -> 767 bytes
 .../test_create_view_nereids.out                   |  Bin 18763 -> 19317 bytes
 .../data/ddl_p0/test_alter_view_nereids.out        |  Bin 1051 -> 1076 bytes
 .../data/doc/sql-manual/StructNullsafe.out         |  Bin 0 -> 379 bytes
 .../basic-elements/data-types/array-md.out         |  Bin 1969 -> 1984 bytes
 .../sql-function/test_array_function.out           |  Bin 0 -> 7755 bytes
 .../sql-manual/sql-functions/date_functions.out    |  Bin 0 -> 17973 bytes
 .../outfile/csv/test_outfile_csv_complex_type.out  |  Bin 8605 -> 8561 bytes
 .../outfile/csv/test_outfile_csv_map_type.out      |  Bin 14057 -> 13059 bytes
 .../csv/test_outfile_csv_one_nested_type.out       |  Bin 9348 -> 9244 bytes
 .../orc/test_outfile_orc_one_nested_type.out       |  Bin 9323 -> 9219 bytes
 .../parquet/test_outfile_parquet_complex_type.out  |  Bin 8574 -> 8522 bytes
 .../parquet/test_outfile_parquet_map_type.out      |  Bin 13740 -> 12302 bytes
 .../test_outfile_parquet_one_nested_type.out       |  Bin 9323 -> 9219 bytes
 .../export_p0/test_outfile_orc_complex_type.out    |  Bin 8549 -> 8505 bytes
 .../data/export_p0/test_outfile_orc_map_type.out   |  Bin 14304 -> 13292 bytes
 .../data/external_table_p0/es/test_es_query.out    |  Bin 154465 -> 162279 
bytes
 .../orc/test_hive_read_orc_complex_type.out        |  Bin 20515 -> 20471 bytes
 .../external_table_p0/hive/hive_config_test.out    |  Bin 399 -> 464 bytes
 .../hive/test_hive_basic_type.out                  |  Bin 4557927 -> 4557891 
bytes
 .../hive/test_hive_get_schema_from_table.out       |  Bin 45855 -> 83101 bytes
 .../data/external_table_p0/hive/test_hive_orc.out  |  Bin 357273 -> 624091 
bytes
 .../hive/test_hive_topn_lazy_mat.out               |  Bin 19465 -> 79711 bytes
 .../action/test_iceberg_optimize_actions.out}      |  Bin 129 -> 143 bytes
 .../jdbc/test_jdbc_query_mysql.out                 |  Bin 82549 -> 82496 bytes
 .../external_table_p0/jdbc/test_jdbc_query_tvf.out |  Bin 2354 -> 2372 bytes
 .../jdbc/test_mysql_jdbc_catalog.out               |  Bin 24751 -> 24345 bytes
 .../type_test/ctas/test_mysql_all_types_ctas.out   |  Bin 91700 -> 91466 bytes
 .../select/test_mysql_all_types_select.out         |  Bin 94289 -> 94636 bytes
 .../type_test/tvf/test_mysql_all_types_tvf.out     |  Bin 6215 -> 6251 bytes
 .../paimon/test_paimon_catalog.out                 |  Bin 791619 -> 788923 
bytes
 .../external_table_p0/paimon/test_paimon_gcs.out   |  Bin 0 -> 665 bytes
 .../external_table_p2/hudi/test_hudi_snapshot.out  |  Bin 696105 -> 696473 
bytes
 .../paimon/test_paimon_hms_catalog.out             |  Bin 2143 -> 3483 bytes
 .../data/function_p0/test_array_agg.out            |  Bin 344 -> 311 bytes
 .../data/function_p0/test_math_function.out        |  Bin 0 -> 1486 bytes
 regression-test/data/insert_p0/insert.out          |  Bin 15882 -> 16004 bytes
 .../analyzer/test_custom_analyzer.out              |  Bin 1217 -> 1277 bytes
 .../test_cloud_build_index_basic.out               |  Bin 0 -> 551 bytes
 .../test_cloud_build_index_update.out              |  Bin 0 -> 605 bytes
 .../test_array_contains_with_inverted_index.out    |  Bin 44492 -> 56354 bytes
 .../inverted_index_p0/test_index_approx_top_k.out  |  Bin 9037 -> 0 bytes
 .../test_index_approx_top_sum.out                  |  Bin 9145 -> 0 bytes
 .../test_inverted_index_storage_format_upgrade.out |  Bin 1241 -> 0 bytes
 .../data/json_p0/test_json_load_and_function.out   |  Bin 261057 -> 261045 
bytes
 .../data/jsonb_p0/test_json_to_json.out            |  Bin 2295 -> 2791 bytes
 .../data/jsonb_p0/test_jsonb_load_and_function.out |  Bin 189130 -> 189123 
bytes
 .../data/load_p0/broker_load/test_array_load.out   |  Bin 7679 -> 11903 bytes
 .../broker_load/test_broker_load_seq.out}          |  Bin 129 -> 138 bytes
 .../broker_load/test_broker_load_with_negtive.out  |  Bin 0 -> 578 bytes
 .../load_p0/broker_load/test_s3_load_with_set.out  |  Bin 0 -> 224 bytes
 .../test_ingestion_load_alter_partition.out}       |  Bin 129 -> 162 bytes
 .../data/load_p0/stream_load/test_bitmap.csv       |    1 +
 .../stream_load/test_map_load_and_function.out     |  Bin 23868 -> 39200 bytes
 .../stream_load/test_stream_load_bitmap.out}       |  Bin 129 -> 115 bytes
 .../stream_load/test_stream_load_with_set.out}     |  Bin 129 -> 113 bytes
 .../data/load_p0/tvf/test_tvf_error_data.out       |  Bin 0 -> 629 bytes
 .../data/mtmv_p0/test_create_with_json_object.out  |  Bin 236 -> 239 bytes
 .../array/test_array_char(255).csv                 |    4 +-
 .../array/test_array_double.csv                    |    2 +-
 .../array/test_array_varchar(65535).csv            |    2 +-
 .../test_array_varchar(65535)_hive_serde_res.csv   |    2 +-
 .../cast_function/test_cast_map_function.out       |  Bin 784 -> 745 bytes
 .../nereids_function_p0/scalar_function/Array.out  |  Bin 770399 -> 771727 
bytes
 .../nereids_function_p0/scalar_function/Array1.out |  Bin 33267319 -> 34343181 
bytes
 .../data/nereids_function_p0/scalar_function/J.out |  Bin 160542 -> 160535 
bytes
 .../nereids_function_p0/scalar_function/Map.out    |  Bin 28228 -> 28192 bytes
 .../data/nereids_function_p0/scalar_function/S.out |  Bin 53833 -> 53858 bytes
 .../data/nereids_function_p0/type_coercion.out     |  Bin 732 -> 777 bytes
 .../data/nereids_p0/datatype/test_map.out          |  Bin 746 -> 1322 bytes
 .../nereids_p0/ddl/show_view/show_view_command.out |  Bin 1995 -> 2071 bytes
 .../fold_constant/fe_constant_cast_to_date.out     |  Bin 2083 -> 2109 bytes
 .../fold_constant/fe_constant_cast_to_datetime.out |  Bin 2927 -> 2966 bytes
 .../fold_constant/fold_constant_by_be.out          |  Bin 222 -> 223 bytes
 .../operator/test_arithmetic_operators.out         |  Bin 8249 -> 7894 bytes
 .../data/nereids_p0/show/test_show_create_view.out |  Bin 763 -> 837 bytes
 .../conditional_functions/test_coalesce.out        |  Bin 8653 -> 8703 bytes
 .../test_conditional_function.out                  |  Bin 2498 -> 2722 bytes
 .../conditional_functions/test_nullif.out          |  Bin 4252 -> 4701 bytes
 .../string_functions/test_string_function.out      |  Bin 3233 -> 4097 bytes
 .../data/nereids_p0/union/test_union.out           |  Bin 13835 -> 13952 bytes
 .../adjust_nullable/test_adjust_nullable.out       |  Bin 1121 -> 489 bytes
 .../agg_skew_rewrite/agg_skew_rewrite.out          |  Bin 8320 -> 8202 bytes
 .../nereids_rules_p0/agg_strategy/agg_strategy.out |  Bin 21517 -> 21077 bytes
 .../distinct_agg_strategy_selector.out             |  Bin 4760 -> 4377 bytes
 .../agg_strategy/test_variables.out                |  Bin 6275 -> 6211 bytes
 .../constant_propagation/constant_propagation.out  |  Bin 21556 -> 21658 bytes
 .../distinct_split/disitinct_split.out             |  Bin 13518 -> 13158 bytes
 .../nereids_rules_p0/eager_aggregate/basic.out     |  Bin 3111 -> 3201 bytes
 .../eager_aggregate/basic_one_side.out             |  Bin 3131 -> 3221 bytes
 ...simplify_comparison_predicate_int_vs_double.out |  Bin 0 -> 6124 bytes
 .../filter_push_down/push_filter_through.out       |  Bin 9740 -> 9770 bytes
 .../extend_infer_equal_predicate.out               |  Bin 30311 -> 30295 bytes
 .../infer_predicate/infer_intersect_except.out     |  Bin 4358 -> 4335 bytes
 .../infer_predicate/pull_up_predicate_literal.out  |  Bin 72316 -> 69355 bytes
 .../infer_predicate/pull_up_predicate_set_op.out   |  Bin 19686 -> 19873 bytes
 .../max_min_filter_push_down.out                   |  Bin 5969 -> 5984 bytes
 .../merge_aggregate/merge_aggregate.out            |  Bin 7977 -> 7803 bytes
 .../mv/date_trunc/mv_with_date_trunc.out           |  Bin 4435 -> 4378 bytes
 .../union_all_compensate/union_all_compensate.out  |  Bin 1287 -> 2103 bytes
 .../union_rewrite_grace_big.out                    |  Bin 4063 -> 6417 bytes
 .../data/nereids_rules_p0/pkfk/eliminate_inner.out |  Bin 6967 -> 7072 bytes
 .../pull_up_join_from_union.out                    |  Bin 5762 -> 5777 bytes
 .../simplify_conditional_function.out              |  Bin 1229 -> 1281 bytes
 .../data/nereids_rules_p0/sumRewrite.out           |  Bin 17085 -> 16815 bytes
 .../add_project_for_unique_function.out            |  Bin 13431 -> 13215 bytes
 .../data/nereids_syntax_p0/agg_4_phase.out         |  Bin 245 -> 316 bytes
 .../data/nereids_syntax_p0/set_operation.out       |  Bin 3623 -> 5494 bytes
 .../sql/test_compare_expression.out                |  Bin 898 -> 781 bytes
 .../test_arithmetic_operators.out                  |  Bin 8249 -> 7894 bytes
 .../data/point_query_p0/test_point_query.out       |  Bin 9949 -> 9954 bytes
 regression-test/data/query_p0/cache/sql_cache.out  |  Bin 669 -> 837 bytes
 regression-test/data/query_p0/cast/test_cast.out   |  Bin 1214 -> 1412 bytes
 .../query_p0/cast/test_complextype_to_json.out     |  Bin 1410 -> 1498 bytes
 .../test_inject_send_filter_size_fail.out          |  Bin 197 -> 200 bytes
 .../join/test_slow_close/test_slow_close.out       |  Bin 133 -> 135 bytes
 .../operator/test_arithmetic_operators.out         |  Bin 3289 -> 3193 bytes
 .../schema_table/test_sql_block_rule_status.out    |  Bin 0 -> 270 bytes
 .../test_aggregate_all_functions2.out              |  Bin 9232 -> 9232 bytes
 .../sql_functions/array_functions/sql/q02.out      |  Bin 2827 -> 2854 bytes
 .../array_functions/test_array_functions.out       |  Bin 28349 -> 29216 bytes
 .../test_array_functions_by_literal.out            |  Bin 29801 -> 30420 bytes
 .../test_array_functions_with_where.out            |  Bin 1869 -> 1911 bytes
 .../array_functions/test_array_with_scale_type.out |  Bin 7941 -> 8143 bytes
 .../cast_function/test_cast_map_function.out       |  Bin 784 -> 745 bytes
 .../conditional_functions/test_coalesce.out        |  Bin 8649 -> 8703 bytes
 .../test_conditional_function.out                  |  Bin 3456 -> 3303 bytes
 .../conditional_functions/test_json_parse.out      |  Bin 768 -> 1066 bytes
 .../conditional_functions/test_nullif.out          |  Bin 4280 -> 4574 bytes
 .../datetime_functions/test_date_floor_ceil.out    |  Bin 886 -> 6924 bytes
 .../json_functions/test_json_function.out          |  Bin 2071 -> 2996 bytes
 .../sql_functions/math_functions/test_round.out    |  Bin 5553 -> 5583 bytes
 .../string_functions/test_str_to_map.out           |  Bin 17405 -> 8142 bytes
 .../query_p0/topn_lazy/topn_lazy_on_data_model.out |  Bin 1272 -> 2130 bytes
 regression-test/data/query_p0/union/test_union.out |  Bin 13835 -> 13952 bytes
 .../adjust_virtual_slot_nullable.out               |  Bin 693 -> 626 bytes
 .../fix_array_type_and_lambda_func.out             |  Bin 0 -> 232 bytes
 .../data/shape_check/clickbench/query10.out        |  Bin 467 -> 415 bytes
 .../data/shape_check/clickbench/query11.out        |  Bin 508 -> 472 bytes
 .../data/shape_check/clickbench/query12.out        |  Bin 508 -> 472 bytes
 .../data/shape_check/clickbench/query14.out        |  Bin 504 -> 468 bytes
 .../data/shape_check/clickbench/query23.out        |  Bin 567 -> 531 bytes
 .../data/shape_check/clickbench/query9.out         |  Bin 448 -> 414 bytes
 .../tpcds_sf100/constraints/query23.out            |  Bin 4992 -> 4986 bytes
 .../tpcds_sf100/noStatsRfPrune/query1.out          |  Bin 2031 -> 2025 bytes
 .../tpcds_sf100/noStatsRfPrune/query11.out         |  Bin 3423 -> 3391 bytes
 .../tpcds_sf100/noStatsRfPrune/query14.out         |  Bin 10059 -> 9921 bytes
 .../tpcds_sf100/noStatsRfPrune/query23.out         |  Bin 4787 -> 4781 bytes
 .../tpcds_sf100/noStatsRfPrune/query24.out         |  Bin 3122 -> 3116 bytes
 .../tpcds_sf100/noStatsRfPrune/query30.out         |  Bin 3113 -> 3107 bytes
 .../tpcds_sf100/noStatsRfPrune/query4.out          |  Bin 5313 -> 5217 bytes
 .../tpcds_sf100/noStatsRfPrune/query44.out         |  Bin 4889 -> 4877 bytes
 .../tpcds_sf100/noStatsRfPrune/query58.out         |  Bin 7035 -> 7071 bytes
 .../tpcds_sf100/noStatsRfPrune/query65.out         |  Bin 2774 -> 2771 bytes
 .../tpcds_sf100/noStatsRfPrune/query72.out         |  Bin 4354 -> 4381 bytes
 .../tpcds_sf100/noStatsRfPrune/query74.out         |  Bin 3355 -> 3323 bytes
 .../tpcds_sf100/noStatsRfPrune/query81.out         |  Bin 3069 -> 3063 bytes
 .../tpcds_sf100/no_stats_shape/query1.out          |  Bin 2155 -> 2149 bytes
 .../tpcds_sf100/no_stats_shape/query11.out         |  Bin 3497 -> 3465 bytes
 .../tpcds_sf100/no_stats_shape/query14.out         |  Bin 10693 -> 10555 bytes
 .../tpcds_sf100/no_stats_shape/query23.out         |  Bin 4964 -> 4958 bytes
 .../tpcds_sf100/no_stats_shape/query24.out         |  Bin 3278 -> 3272 bytes
 .../tpcds_sf100/no_stats_shape/query30.out         |  Bin 3272 -> 3266 bytes
 .../tpcds_sf100/no_stats_shape/query4.out          |  Bin 5411 -> 5315 bytes
 .../tpcds_sf100/no_stats_shape/query44.out         |  Bin 4889 -> 4877 bytes
 .../tpcds_sf100/no_stats_shape/query58.out         |  Bin 7077 -> 7113 bytes
 .../tpcds_sf100/no_stats_shape/query65.out         |  Bin 2860 -> 2857 bytes
 .../tpcds_sf100/no_stats_shape/query72.out         |  Bin 4556 -> 4583 bytes
 .../tpcds_sf100/no_stats_shape/query74.out         |  Bin 3429 -> 3397 bytes
 .../tpcds_sf100/no_stats_shape/query81.out         |  Bin 3228 -> 3222 bytes
 .../shape_check/tpcds_sf100/rf_prune/query1.out    |  Bin 2103 -> 2097 bytes
 .../shape_check/tpcds_sf100/rf_prune/query14.out   |  Bin 10129 -> 9991 bytes
 .../shape_check/tpcds_sf100/rf_prune/query23.out   |  Bin 4974 -> 4968 bytes
 .../shape_check/tpcds_sf100/rf_prune/query24.out   |  Bin 3122 -> 3116 bytes
 .../shape_check/tpcds_sf100/rf_prune/query30.out   |  Bin 3239 -> 3233 bytes
 .../shape_check/tpcds_sf100/rf_prune/query4.out    |  Bin 5167 -> 5215 bytes
 .../shape_check/tpcds_sf100/rf_prune/query44.out   |  Bin 4689 -> 4677 bytes
 .../shape_check/tpcds_sf100/rf_prune/query58.out   |  Bin 7152 -> 7188 bytes
 .../shape_check/tpcds_sf100/rf_prune/query65.out   |  Bin 2916 -> 2913 bytes
 .../shape_check/tpcds_sf100/rf_prune/query8.out    |  Bin 10064 -> 10064 bytes
 .../shape_check/tpcds_sf100/rf_prune/query81.out   |  Bin 3061 -> 3055 bytes
 .../data/shape_check/tpcds_sf100/shape/query1.out  |  Bin 2176 -> 2170 bytes
 .../data/shape_check/tpcds_sf100/shape/query14.out |  Bin 10603 -> 10465 bytes
 .../data/shape_check/tpcds_sf100/shape/query23.out |  Bin 5016 -> 5010 bytes
 .../data/shape_check/tpcds_sf100/shape/query24.out |  Bin 3277 -> 3271 bytes
 .../data/shape_check/tpcds_sf100/shape/query30.out |  Bin 3291 -> 3285 bytes
 .../data/shape_check/tpcds_sf100/shape/query4.out  |  Bin 5265 -> 5313 bytes
 .../data/shape_check/tpcds_sf100/shape/query44.out |  Bin 4689 -> 4677 bytes
 .../data/shape_check/tpcds_sf100/shape/query58.out |  Bin 7194 -> 7230 bytes
 .../data/shape_check/tpcds_sf100/shape/query65.out |  Bin 3002 -> 2999 bytes
 .../data/shape_check/tpcds_sf100/shape/query8.out  |  Bin 10108 -> 10108 bytes
 .../data/shape_check/tpcds_sf100/shape/query81.out |  Bin 3220 -> 3214 bytes
 .../tpcds_sf1000/bs_downgrade_shape/query44.out    |  Bin 4683 -> 4671 bytes
 .../tpcds_sf1000/bs_downgrade_shape/query8.out     |  Bin 10108 -> 10108 bytes
 .../data/shape_check/tpcds_sf1000/hint/query1.out  |  Bin 2259 -> 2253 bytes
 .../data/shape_check/tpcds_sf1000/hint/query14.out |  Bin 10758 -> 10620 bytes
 .../data/shape_check/tpcds_sf1000/hint/query23.out |  Bin 5016 -> 5010 bytes
 .../data/shape_check/tpcds_sf1000/hint/query24.out |  Bin 3433 -> 3427 bytes
 .../data/shape_check/tpcds_sf1000/hint/query30.out |  Bin 3411 -> 3405 bytes
 .../data/shape_check/tpcds_sf1000/hint/query44.out |  Bin 4761 -> 4749 bytes
 .../data/shape_check/tpcds_sf1000/hint/query58.out |  Bin 7213 -> 7249 bytes
 .../data/shape_check/tpcds_sf1000/hint/query65.out |  Bin 3240 -> 3237 bytes
 .../data/shape_check/tpcds_sf1000/hint/query8.out  |  Bin 10311 -> 10311 bytes
 .../data/shape_check/tpcds_sf1000/hint/query81.out |  Bin 3359 -> 3353 bytes
 .../data/shape_check/tpcds_sf1000/shape/query1.out |  Bin 2178 -> 2172 bytes
 .../shape_check/tpcds_sf1000/shape/query14.out     |  Bin 10599 -> 10461 bytes
 .../shape_check/tpcds_sf1000/shape/query23.out     |  Bin 5016 -> 5010 bytes
 .../shape_check/tpcds_sf1000/shape/query24.out     |  Bin 3282 -> 3276 bytes
 .../shape_check/tpcds_sf1000/shape/query30.out     |  Bin 3272 -> 3266 bytes
 .../data/shape_check/tpcds_sf1000/shape/query4.out |  Bin 5265 -> 5313 bytes
 .../shape_check/tpcds_sf1000/shape/query44.out     |  Bin 4683 -> 4671 bytes
 .../shape_check/tpcds_sf1000/shape/query58.out     |  Bin 7194 -> 7230 bytes
 .../shape_check/tpcds_sf1000/shape/query65.out     |  Bin 3002 -> 2999 bytes
 .../data/shape_check/tpcds_sf1000/shape/query8.out |  Bin 10108 -> 10108 bytes
 .../shape_check/tpcds_sf1000/shape/query81.out     |  Bin 3220 -> 3214 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query1.out   |  Bin 2155 -> 2149 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query11.out  |  Bin 3781 -> 3749 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query14.out  |  Bin 10621 -> 10483 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query23.out  |  Bin 5273 -> 5267 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query24.out  |  Bin 3272 -> 3266 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query30.out  |  Bin 2537 -> 2531 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query4.out   |  Bin 5963 -> 5863 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query44.out  |  Bin 4841 -> 4829 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query58.out  |  Bin 7077 -> 7113 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query65.out  |  Bin 2860 -> 2857 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query72.out  |  Bin 4561 -> 4588 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query74.out  |  Bin 3769 -> 3737 bytes
 .../shape_check/tpcds_sf10t_orc/shape/query81.out  |  Bin 2537 -> 2531 bytes
 .../data/shape_check/tpch_sf1000/hint/q11.out      |  Bin 2074 -> 2068 bytes
 .../tpch_sf1000/nostats_rf_prune/q11.out           |  Bin 2168 -> 2162 bytes
 .../tpch_sf1000/nostats_rf_prune/q16.out           |  Bin 1200 -> 1148 bytes
 .../data/shape_check/tpch_sf1000/rf_prune/q11.out  |  Bin 2176 -> 2170 bytes
 .../data/shape_check/tpch_sf1000/shape/q11.out     |  Bin 2176 -> 2170 bytes
 .../shape_check/tpch_sf1000/shape_no_stats/q11.out |  Bin 2168 -> 2162 bytes
 .../shape_check/tpch_sf1000/shape_no_stats/q16.out |  Bin 1200 -> 1148 bytes
 .../test_show_create_table_and_views_nereids.out   |  Bin 6596 -> 6614 bytes
 .../data/variant_p0/test_array_function.out        |  Bin 374 -> 355 bytes
 .../data/variant_p0/variant_hirachinal.out         |  Bin 697 -> 889 bytes
 .../test_array_contains_with_inverted_index.out    |  Bin 46962 -> 56604 bytes
 .../create_view_star_except_and_cast_to_sql.out    |  Bin 739 -> 763 bytes
 regression-test/data/view_p0/view_p0.out           |  Bin 3484 -> 3590 bytes
 regression-test/framework/pom.xml                  |   13 +
 .../org/apache/doris/regression/Config.groovy      |   48 +-
 .../apache/doris/regression/ConfigOptions.groovy   |   49 +
 .../doris/regression/action/HttpCliAction.groovy   |    7 +-
 .../org/apache/doris/regression/suite/Suite.groovy |  213 ++-
 .../doris/regression/suite/SuiteCluster.groovy     |   13 +
 .../apache/doris/regression/util/GlobalLock.groovy |   58 +
 .../apache/doris/regression/util/JdbcUtils.groovy  |   42 +-
 .../doris/regression/util/OutputUtils.groovy       |   46 +
 .../regression/util/RemoteFileOperator.groovy      |  370 ++++
 .../cloud_p0/conf/regression-conf-custom.groovy    |    1 +
 .../pipeline/external/conf/regression-conf.groovy  |    4 +
 .../nonConcurrent/conf/regression-conf.groovy      |    4 +
 .../pipeline/p0/conf/regression-conf.groovy        |    5 +
 .../plugins/plugin_curl_requester.groovy           |   13 +-
 regression-test/plugins/plugin_index_change.groovy |   92 +-
 regression-test/plugins/test_helper.groovy         |    2 +-
 .../suites/ai_p0/test_ai_functions.groovy          |   12 +-
 .../alter_p2/test_alter_colocate_group.groovy      |   10 +-
 .../ann_index_p0/cast_string_as_array.groovy       |  155 ++
 .../suites/ann_index_p0/scalar_quantization.groovy |   60 +
 .../auth_call/test_assistant_command_auth.groovy   |    4 +-
 .../suites/auth_call/test_ddl_catalog_auth.groovy  |   12 +-
 .../test_master_slave_consistency_auth.groovy      |    6 +-
 .../suites/auth_p0/test_select_column_auth.groovy  |    2 +-
 .../test_backup_restore_colocate.groovy            |    2 +-
 .../backup_restore/test_backup_restore_hdfs.groovy |    2 +-
 .../test_backup_restore_with_hdfs.groovy           |    2 +-
 .../test_create_and_drop_repository.groovy         |    2 +-
 .../suites/ccr_syncer_p0/test_txn_insert.groovy    |    4 +-
 .../cloud/multi_cluster/vcluster/vcluster.groovy   |  173 --
 .../cloud_p0/cache/ttl/test_ttl_lru_evict.groovy   |  374 ++--
 .../virtual_compute_group/ddl/nation.sql           |   12 +
 .../virtual_compute_group/ddl/nation_delete.sql    |    1 +
 .../virtual_compute_group/ddl/nation_load.sql      |    6 +
 .../default_vcg_auto_failover.groovy               |  111 +-
 .../failover_standby_disable_compaction.groovy     |  313 ++++
 .../load_trigger_failover.groovy                   |  164 ++
 .../standby_disable_compaction.groovy              |  275 +++
 .../use_default_vcg_read_write.groovy              |  159 +-
 .../use_vcg_read_write.groovy                      |  136 +-
 ...oovy => use_vcg_read_write_routine_load.groovy} |  348 ++--
 ...te.groovy => use_vcg_read_write_s3_load.groovy} |  320 ++--
 ...=> use_vcg_read_write_unhealthy_node_50.groovy} |  155 +-
 .../virtual_compute_group/vcg_auto_failover.groovy |   88 +-
 ...vy => vcg_auto_failover_manual_failback.groovy} |  286 +--
 .../recycler/test_recycler_with_drop_column.groovy |    2 +-
 .../recycler/test_recycler_with_drop_index.groovy  |    2 +-
 .../recycler/test_recycler_with_drop_mv.groovy     |    4 +-
 .../recycler/test_recycler_with_drop_rollup.groovy |    2 +-
 .../cloud_p0/snapshot/test_snapshot_command.groovy |   55 +
 .../compaction_width_array_column.groovy           |    8 +-
 ...paction_with_dup_key_max_file_size_limit.groovy |    2 +-
 .../test_compaction_fail_release_lock.groovy       |   14 +-
 .../compaction/test_compaction_score_action.groovy |    1 +
 .../test_compaction_uniq_keys_row_store.groovy     |    2 +-
 .../test_compaction_with_empty_rowset.groovy       |  101 ++
 .../test_config_prune_delete_sign.groovy           |   29 +-
 .../test_filecache_with_base_compaction.groovy     |    8 +-
 ...ilecache_with_base_compaction_thresthold.groovy |  740 ++++++++
 .../test_single_replica_compaction.groovy          |    2 +-
 .../suites/correctness/test_time_function.groovy   |   35 +
 .../test_inlineview_with_project.groovy            |    2 +-
 .../correctness_p0/test_mask_function.groovy       |   23 +
 .../suites/correctness_p0/test_time_round.groovy   |  130 ++
 .../datetimev1/test_datetimev1_calc.groovy         |   74 -
 .../datatype_p0/datetimev2/test_exprs.groovy       |   70 +-
 .../datatype_p0/datev1/test_datev1_calc.groovy     |   80 -
 .../decimalv3/test_arithmetic_expressions.groovy   |  118 ++
 .../float/test_float_special_values.groovy         |  480 +++++
 .../one_level_nestedtypes_with_s3data.groovy       |    4 +-
 .../nested_types/query/sql/nested_with_join.sql    |    6 +-
 .../suites/demo_p0/test_lru_persist.groovy         |   37 +-
 .../suites/doc/sql-manual/StructNullsafe.groovy    |   53 +
 .../sql-function/test_array_function.groovy        |  534 ++++++
 .../sql-manual/sql-functions/date_functions.groovy | 1584 +++++++++++++++++
 .../manual-partitioning.md.groovy                  |    3 +-
 .../suites/export/test_array_export.groovy         |   14 +-
 .../parquet/test_outfile_parquet_map_type.groovy   |   19 +-
 .../external_table_p0/hive/hive_config_test.groovy |   10 +-
 .../hive/test_hive_basic_type.groovy               |   22 +-
 .../hive/test_hive_get_schema_from_table.groovy    |   22 +
 .../external_table_p0/hive/test_hive_orc.groovy    |   23 +
 .../hive/test_hive_query_cache.groovy              |  179 +-
 .../hive/test_hive_topn_lazy_mat.groovy            |   18 +
 .../action/test_iceberg_optimize_actions.groovy    |  341 ++++
 .../jdbc/test_jdbc_query_mysql.groovy              |   24 +-
 .../jdbc/test_mysql_jdbc_catalog.groovy            |    4 +-
 .../ctas/test_mysql_all_types_ctas.groovy          |    4 +-
 .../select/test_mysql_all_types_select.groovy      |    7 +
 .../type_test/tvf/test_mysql_all_types_tvf.groovy  |    1 -
 .../test_iceberg_hadoop_catalog_kerberos.groovy    |    1 +
 .../paimon/paimon_base_filesystem.groovy           |   39 +-
 .../paimon/test_paimon_catalog.groovy              |  491 ++---
 .../paimon/test_paimon_deletion_vector_oss.groovy  |    7 +-
 .../paimon/test_paimon_gcs.groovy                  |   84 +
 .../paimon/test_paimon_minio.groovy                |   18 +
 .../external_table_p0/paimon/test_paimon_s3.groovy |    9 +
 .../tvf/test_hdfs_parquet_group6.groovy            |    1 -
 .../tvf/test_tvf_topn_lazy_mat.groovy              |    9 +-
 .../hive/test_cloud_accessible_oss.groovy          |    9 +-
 .../paimon/test_paimon_dlf_catalog.groovy          |   10 +-
 .../test_paimon_dlf_catalog_miss_dlf_param.groovy  |   12 +-
 .../test_paimon_dlf_catalog_new_param.groovy       |   14 +-
 .../paimon/test_paimon_hms_catalog.groovy          |   77 +-
 .../hive_on_hms_and_dlf.groovy                     |   62 +-
 .../iceberg_on_hms_and_filesystem_and_dlf.groovy   |  155 +-
 .../iceberg_rest_s3_storage_vended_test.groovy}    |   78 +-
 .../iceberg_rest_storage_test.groovy}              |   89 +-
 ..._writer_v2_back_pressure_fault_injection.groovy |   29 +-
 .../suites/function_p0/test_array_agg.groovy       |    2 -
 .../suites/function_p0/test_math_function.groovy   |  157 ++
 .../test_group_commit_replay_wal.groovy            |   16 +
 .../insert_p0/insert_group_commit_into.groovy      |   12 +-
 .../suites/insert_p0/test_insert_docs_demo.groovy  |    2 +-
 .../test_insert_partition_fail_url.groovy          |    4 +-
 .../insert_p0/test_insert_strict_fail_url.groovy   |    4 +-
 .../analyzer/test_custom_analyzer.groovy           |   23 +
 .../test_cloud_build_index_basic.groovy            |  138 ++
 .../test_cloud_build_index_error.groovy            |  163 ++
 .../test_cloud_build_index_update.groovy           |  156 ++
 .../index_change/test_add_drop_index.groovy        |   78 +-
 .../test_add_drop_index_ignore_case_column.groovy  |   22 +-
 .../test_add_drop_index_on_table_with_mv.groovy    |   23 +-
 .../test_add_drop_index_repeatly.groovy            |   19 +-
 .../test_add_drop_index_with_data.groovy           |   46 +-
 .../test_add_drop_index_with_delete_data.groovy    |   26 +-
 .../index_change/test_index_change_1.groovy        |   34 +-
 .../index_change/test_index_change_2.groovy        |   34 +-
 .../index_change/test_index_change_3.groovy        |   63 +-
 .../index_change/test_index_change_4.groovy        |   34 +-
 .../index_change/test_index_change_5.groovy        |   31 +-
 .../index_change/test_index_change_6.groovy        |   45 +-
 .../test_index_change_on_new_column.groovy         |   29 +-
 .../test_index_change_on_renamed_column.groovy     |   23 +-
 ..._index_change_with_cumulative_compaction.groovy |   32 +-
 .../test_index_change_with_full_compaction.groovy  |   35 +-
 .../index_change/test_pk_uk_index_change.groovy    |   28 +-
 .../inverted_index_p0/load/test_spark_load.groovy  |    3 +
 .../inverted_index_p0/test_create_index_2.groovy   |   28 +-
 .../test_index_approx_top_k.groovy                 |  153 --
 .../test_index_approx_top_sum.groovy               |  153 --
 ...st_inverted_index_storage_format_upgrade.groovy |  409 -----
 .../test_pk_no_need_read_data.groovy               |   13 +-
 .../suites/jsonb_p0/test_json_to_json.groovy       |   56 +-
 .../load_p0/broker_load/test_array_load.groovy     |   22 +-
 .../broker_load/test_broker_load_seq.groovy        |   11 +-
 .../broker_load/test_broker_load_with_merge.groovy |    4 +-
 .../test_broker_load_with_negtive.groovy           |  144 ++
 .../test_broker_load_with_partition.groovy         |   27 +-
 .../test_broker_load_with_properties.groovy        |    7 +-
 .../broker_load/test_broker_load_with_where.groovy |   15 +-
 .../test_broker_load_without_filepath.groovy       |   18 +-
 .../load_p0/broker_load/test_etl_failed.groovy     |    3 +-
 .../broker_load/test_s3_load_with_set.groovy       |  218 +++
 .../load_p0/http_stream/test_http_stream.groovy    |   19 +
 .../ingestion_load/test_ingestion_load.groovy      |   28 +-
 .../test_ingestion_load_alter_column.groovy        |   30 +-
 .../test_ingestion_load_alter_partition.groovy     |   43 +-
 .../test_ingestion_load_drop_table.groovy          |   21 +-
 .../test_ingestion_load_multi_table.groovy         |   20 +-
 .../test_ingestion_load_with_inverted_index.groovy |   16 +-
 .../test_ingestion_load_with_partition.groovy      |   31 +-
 .../load_p0/routine_load/test_black_list.groovy    |    4 +
 .../load_p0/spark_load/test_spark_load.groovy      |    2 +-
 .../test_csv_with_none_utf8_data.groovy            |    2 +-
 .../load_p0/stream_load/test_json_load.groovy      |    2 +-
 .../stream_load/test_map_load_and_function.groovy  |  210 +++
 .../stream_load/test_stream_load_bitmap.groovy     |   54 +
 .../test_stream_load_err_log_limit.groovy          |    4 +-
 .../stream_load/test_stream_load_error_url.groovy  |    4 +-
 .../test_stream_load_with_filtered_rows.groovy     |    3 +-
 .../stream_load/test_stream_load_with_set.groovy   |   96 +
 .../load_p0/tvf/test_tvf_error_column.groovy       |  160 ++
 .../suites/load_p0/tvf/test_tvf_error_data.groovy  |  202 +++
 .../suites/manager/test_manager_interface_5.groovy |    6 +-
 .../metrics_p0/test_delete_bitmap_metrics.groovy   |   16 +-
 .../mtmv_p0/test_hive_empty_partition_mtmv.groovy  |   81 +
 .../mtmv_p0/test_mtmv_sql_cache_and_profile.groovy |  117 +-
 .../suites/mv_p0/agg_table_mv/agg_table_mv.groovy  |   83 +
 .../nereids_function_p0/scalar_function/Map.groovy |    8 +-
 .../nereids_function_p0/scalar_function/U.groovy   |   47 +
 .../cache/parse_sql_from_sql_cache.groovy          | 1760 ++++++++++--------
 .../cache/prepare_stmt_with_sql_cache.groovy       |   57 +-
 .../suites/nereids_p0/datatype/test_cast.groovy    |    8 +-
 .../suites/nereids_p0/datatype/test_map.groovy     |   14 +-
 .../suites/nereids_p0/delta_row/delta_row.groovy   |    4 +-
 .../expression/expression_depth_check.groovy       |    6 +-
 .../fold_constant/fe_constant_cast_to_date.groovy  |    2 +
 .../fe_constant_cast_to_datetime.groovy            |    2 +
 .../fold_constant/fold_constant_by_be.groovy       |   27 +-
 .../fold_constant_numeric_arithmatic.groovy        |    2 +
 .../fold_constant_string_arithmatic.groovy         |   43 +
 .../insert_into_table/insert_values.groovy         |    3 +-
 .../initial_join_order/initial_join_order.groovy   |    2 +-
 .../suites/nereids_p0/join/test_join_14.groovy     |   24 +-
 .../suites/nereids_p0/join/test_join_on.groovy     |    2 +-
 .../agg_state/test_outfile_agg_state.groovy        |   19 +-
 .../agg_state_array/test_outfile_agg_array.groovy  |   17 +-
 .../test_outfile_agg_state_bitmap.groovy           |   17 +-
 .../nereids_p0/outfile/hll/test_outfile_hll.groovy |   19 +-
 .../test_outfile_quantile_state.groovy             |   19 +-
 .../show/test_nereids_show_load_warnings.groovy    |   30 +-
 .../nereids_p0/show/test_show_create_view.groovy   |    8 +-
 .../test_aggregate_histogram.groovy                |  215 ---
 .../test_aggregate_window_functions.groovy         |    4 +
 .../test_encryption_function.groovy                |   12 +
 .../string_functions/test_string_function.groovy   |   53 +
 .../nereids_p0/stats/partitionRowCount.groovy      |    2 +-
 .../suites/nereids_p0/stats/virtual_column.groovy  |   40 +
 .../suites/nereids_p0/union/test_union.groovy      |   13 +-
 .../agg_strategy/agg_strategy.groovy               |    1 +
 .../agg_strategy/distinct_agg_rewriter.groovy      |    1 +
 .../distinct_agg_strategy_selector.groovy          |   15 +-
 .../agg_strategy/physical_agg_regulator.groovy     |    1 +
 .../agg_strategy/test_variables.groovy             |    1 +
 .../distinct_split/disitinct_split.groovy          |    1 +
 ...aggr_distinct_through_join_one_side_cust.groovy |    2 +-
 ...plify_comparison_predicate_int_vs_double.groovy |  161 ++
 .../infer_predicate/infer_intersect_except.groovy  |    9 +-
 .../pull_up_predicate_literal.groovy               |   18 -
 .../mv/agg_variety/agg_variety.groovy              |    1 +
 .../mv/date_trunc/mv_with_date_trunc.groovy        |   45 +-
 .../partition_mv_rewrite.groovy                    |   12 +-
 .../union_all_compensate.groovy                    |  528 +++---
 .../union_rewrite_grace_big.groovy                 | 1093 ++++++------
 .../nereids_rules_p0/mv/variant/variant_mv.groovy  |    2 +-
 .../nereids_rules_p0/skew_join/skew_join.groovy    |    2 +-
 .../suites/nereids_syntax_p0/agg_4_phase.groovy    |   23 +
 .../suites/nereids_syntax_p0/array_function.groovy |   11 +-
 .../suites/nereids_syntax_p0/mask_function.groovy  |    2 +-
 .../mv/aggregate/agg_sync_mv.groovy                |    2 +-
 .../test_simplify_comparison.groovy                |   10 +-
 .../mv/aggregate/agg_sync_mv.groovy                |    2 +-
 .../test_cloud_plugin_auto_download.groovy         |  121 ++
 .../suites/point_query_p0/test_point_query.groovy  |    2 +-
 .../suites/prepared_stmt_p0/prepared_stmt.groovy   |    2 +-
 .../suites/query_p0/cache/sql_cache.groovy         |  123 +-
 .../suites/query_p0/cast/test_cast.groovy          |   26 +-
 .../query_p0/cast/test_complextype_to_json.groovy  |   31 +-
 .../suites/query_p0/join/test_join.groovy          |   24 +-
 .../operative_slots/operative_slots.groovy         |   32 +-
 .../query_p0/operator/test_sort_operator.groovy    |    2 +-
 .../schema_table/test_active_queries.groovy        |    6 +-
 .../schema_table/test_sql_block_rule_status.groovy |   65 +
 .../test_aggregate_all_functions2.groovy           |    8 +-
 .../test_aggregate_histogram.groovy                |    5 +
 .../sql_functions/array_functions/sql/q02.sql      |    2 +-
 .../array_functions/test_array_functions.groovy    |    2 +-
 .../test_array_functions_by_literal.groovy         |   10 +-
 .../test_array_functions_with_where.groovy         |    2 +-
 .../sql_functions/conditional_functions/data.txt   |    1 +
 .../test_conditional_function.groovy               |  256 ++-
 .../conditional_functions/test_json_parse.groovy   |    2 +
 .../conditional_functions/test_nullif.groovy       |    2 +-
 .../datetime_functions/test_date_floor_ceil.groovy |  224 +++
 .../json_function/test_query_json_array.groovy     |   10 -
 .../json_functions/test_json_function.groovy       |  124 +-
 .../math_functions/test_format_round.groovy        |    7 +-
 .../sql_functions/math_functions/test_round.groovy |   17 +
 .../query_p0/system/test_table_properties.groovy   |    3 +
 .../suites/query_p0/test_multiple_stmt.groovy      |   50 +-
 .../suites/query_p0/test_row_policy.groovy         |   50 +
 .../topn_lazy/topn_lazy_on_data_model.groovy       |   16 +-
 .../suites/query_p0/union/test_union.groovy        |    9 +-
 .../adjust_virtual_slot_nullable.groovy            |   19 +-
 .../fix_array_type_and_lambda_func.groovy          |   57 +
 .../return_in_advance_if_block_is_empty.groovy     |    9 +-
 .../suites/s3_vault/default_vault_p2/load.groovy   |    8 +
 .../suites/s3_vault/multi_vault_p2/load.groovy     |    8 +
 .../suites/shape_check/clickbench/query5.groovy    |    1 +
 .../suites/show_p0/test_show_data_warehouse.groovy |   10 +-
 .../suites/show_p0/test_show_processlist.groovy    |    6 +-
 .../test_show_txn_error_msg.groovy}                |   25 +-
 regression-test/suites/ssb_sf1_p2/load.groovy      |    8 +
 .../suites/statistics/test_hot_value.groovy        |   59 +-
 .../ssb_unique_load_zstd/ddl/customer_create.sql   |    3 +-
 .../ssb_unique_load_zstd/ddl/date_create.sql       |    3 +-
 .../ssb_unique_load_zstd/ddl/lineorder_create.sql  |    3 +-
 .../ssb_unique_load_zstd/ddl/part_create.sql       |    3 +-
 .../ssb_unique_load_zstd/ddl/supplier_create.sql   |    3 +-
 .../ddl/supplier_sequence_create.sql               |    3 +-
 .../four/load_four_step.groovy                     |    2 +-
 .../three/load_three_step.groovy                   |    2 +-
 .../suites/variant_p0/test_array_function.groovy   |    2 -
 .../suites/variant_p0/variant_hirachinal.groovy    |   13 +
 .../suites/variant_p0/with_index/load.groovy       |   31 +-
 regression-test/suites/variant_p2/load.groovy      |   26 +-
 .../sql/monotonicEvaluationSegfault.sql            |    2 +-
 .../sql/nereids_monotonicEvaluationSegfault.sql    |    2 +-
 run-be-ut.sh                                       |    2 +
 run-cloud-ut.sh                                    |    1 +
 tools/coffeebench-tools/README.md                  |   42 +
 tools/coffeebench-tools/bin/create-tables.sh       |  100 ++
 tools/coffeebench-tools/bin/load-data.sh           |  159 ++
 tools/coffeebench-tools/bin/run-queries.sh         |  180 ++
 .../coffeebench-tools/conf/doris-cluster.conf      |   22 +-
 tools/coffeebench-tools/ddl/create-tables.sql      |  144 ++
 tools/coffeebench-tools/queries/q1.sql             |   18 +
 tools/coffeebench-tools/queries/q10.sql            |   25 +
 tools/coffeebench-tools/queries/q11.sql            |   26 +
 tools/coffeebench-tools/queries/q12.sql            |   30 +
 tools/coffeebench-tools/queries/q13.sql            |   30 +
 tools/coffeebench-tools/queries/q14.sql            |   29 +
 tools/coffeebench-tools/queries/q15.sql            |   61 +
 tools/coffeebench-tools/queries/q16.sql            |   27 +
 tools/coffeebench-tools/queries/q17.sql            |   66 +
 tools/coffeebench-tools/queries/q2.sql             |   17 +
 tools/coffeebench-tools/queries/q3.sql             |   31 +
 tools/coffeebench-tools/queries/q4.sql             |   20 +
 tools/coffeebench-tools/queries/q5.sql             |   23 +
 tools/coffeebench-tools/queries/q6.sql             |   19 +
 tools/coffeebench-tools/queries/q7.sql             |   30 +
 tools/coffeebench-tools/queries/q8.sql             |   25 +
 tools/coffeebench-tools/queries/q9.sql             |   23 +
 1688 files changed, 55827 insertions(+), 22375 deletions(-)

diff --cc 
fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceClient.java
index 2b0673d6453,0d0acfa11f7..aa9d34bcb5b
--- a/fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceClient.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceClient.java
@@@ -493,9 -493,38 +493,44 @@@ public class MetaServiceClient 
                  .createInstance(request);
      }
  
 +    public Cloud.GetStreamingTaskCommitAttachResponse
 +            
getStreamingTaskCommitAttach(Cloud.GetStreamingTaskCommitAttachRequest request) 
{
 +        return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
 +                .getStreamingTaskCommitAttach(request);
 +    }
++
+     public Cloud.AlterInstanceResponse 
alterInstance(Cloud.AlterInstanceRequest request) {
+         return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
+                 .alterInstance(request);
+     }
+ 
+     public Cloud.BeginSnapshotResponse 
beginSnapshot(Cloud.BeginSnapshotRequest request) {
+         return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
+             .beginSnapshot(request);
+     }
+ 
+     public Cloud.CommitSnapshotResponse 
commitSnapshot(Cloud.CommitSnapshotRequest request) {
+         return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
+                 .commitSnapshot(request);
+     }
+ 
+     public Cloud.AbortSnapshotResponse 
abortSnapshot(Cloud.AbortSnapshotRequest request) {
+         return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
+                 .abortSnapshot(request);
+     }
+ 
+     public Cloud.ListSnapshotResponse listSnapshot(Cloud.ListSnapshotRequest 
request) {
+         return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
+                 .listSnapshot(request);
+     }
+ 
+     public Cloud.DropSnapshotResponse dropSnapshot(Cloud.DropSnapshotRequest 
request) {
+         return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
+                 .dropSnapshot(request);
+     }
+ 
+     public Cloud.CloneInstanceResponse 
cloneInstance(Cloud.CloneInstanceRequest request) {
+         return 
blockingStub.withDeadlineAfter(Config.meta_service_brpc_timeout_ms, 
TimeUnit.MILLISECONDS)
+                 .cloneInstance(request);
+     }
  }
diff --cc 
fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceProxy.java
index 8710209ff8a,ed4cd45e19a..a843b4790ce
--- a/fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceProxy.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/cloud/rpc/MetaServiceProxy.java
@@@ -433,8 -433,31 +433,36 @@@ public class MetaServiceProxy 
          return w.executeRequest((client) -> client.createInstance(request));
      }
  
 +    public Cloud.GetStreamingTaskCommitAttachResponse 
getStreamingTaskCommitAttach(
 +            Cloud.GetStreamingTaskCommitAttachRequest request) throws 
RpcException {
 +        return w.executeRequest((client) -> 
client.getStreamingTaskCommitAttach(request));
 +    }
++
+     public Cloud.AlterInstanceResponse 
alterInstance(Cloud.AlterInstanceRequest request) throws RpcException {
+         return w.executeRequest((client) -> client.alterInstance(request));
+     }
+ 
+     public Cloud.BeginSnapshotResponse 
beginSnapshot(Cloud.BeginSnapshotRequest request) throws RpcException {
+         return w.executeRequest((client) -> client.beginSnapshot(request));
+     }
+ 
+     public Cloud.CommitSnapshotResponse 
commitSnapshot(Cloud.CommitSnapshotRequest request) throws RpcException {
+         return w.executeRequest((client) -> client.commitSnapshot(request));
+     }
+ 
+     public Cloud.AbortSnapshotResponse 
abortSnapshot(Cloud.AbortSnapshotRequest request) throws RpcException {
+         return w.executeRequest((client) -> client.abortSnapshot(request));
+     }
+ 
+     public Cloud.ListSnapshotResponse listSnapshot(Cloud.ListSnapshotRequest 
request) throws RpcException {
+         return w.executeRequest((client) -> client.listSnapshot(request));
+     }
+ 
+     public Cloud.DropSnapshotResponse dropSnapshot(Cloud.DropSnapshotRequest 
request) throws RpcException {
+         return w.executeRequest((client) -> client.dropSnapshot(request));
+     }
+ 
+     public Cloud.CloneInstanceResponse 
cloneInstance(Cloud.CloneInstanceRequest request) throws RpcException {
+         return w.executeRequest((client) -> client.cloneInstance(request));
+     }
  }
diff --cc 
fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertJob.java
index a4d6793b0b8,d0f6934f4e0..7658c3cb54d
--- 
a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertJob.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertJob.java
@@@ -120,8 -112,7 +120,9 @@@ public class InsertJob extends Abstract
                      .addColumn(new Column("TrackingUrl", 
ScalarType.createVarchar(200)))
                      .addColumn(new Column("LoadStatistic", 
ScalarType.createVarchar(200)))
                      .addColumn(new Column("User", 
ScalarType.createVarchar(50)))
 +                    // only execute type = streaming need record
 +                    .addColumn(new Column("Offset", 
ScalarType.createStringType()))
+                     .addColumn(new Column("FirstErrorMsg", 
ScalarType.createVarchar(200)))
                      .build();
  
      public static final ImmutableMap<String, Integer> COLUMN_TO_INDEX;
diff --cc 
fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java
index 261ca012311,4afb51a591d..8ff292ea8c0
--- 
a/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/job/extensions/insert/InsertTask.java
@@@ -68,8 -68,7 +68,9 @@@ public class InsertTask extends Abstrac
              new Column("TrackingUrl", ScalarType.createStringType()),
              new Column("LoadStatistic", ScalarType.createStringType()),
              new Column("User", ScalarType.createStringType()),
 +            new Column("Offset", ScalarType.createStringType()),
-             new Column("OtherMsg", ScalarType.createStringType()));
++            new Column("OtherMsg", ScalarType.createStringType()),
+             new Column("FirstErrorMsg", ScalarType.createStringType()));
  
      public static final ImmutableMap<String, Integer> COLUMN_TO_INDEX;
  
@@@ -274,7 -275,7 +277,8 @@@
          } else {
              trow.addToColumnValue(new 
TCell().setStringVal(userIdentity.getQualifiedUser()));
          }
 +        trow.addToColumnValue(new TCell().setStringVal(""));
+         trow.addToColumnValue(new TCell().setStringVal(firstErrorMsg == null 
? "" : firstErrorMsg));
          return trow;
      }
  


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to