This is an automated email from the ASF dual-hosted git repository.
hubgeter pushed a change to branch iceberg-v3-test-branch-4.1
in repository https://gitbox.apache.org/repos/asf/doris.git
discard 582d219d855 [fix](iceberg) Add missing Iceberg field IDs for position
delete files
add 2154c9c4bb7 branch-4.1: [feat](txn) Add txn write amplification brpc
metrics for sub txn load #63545 (#63590)
add 93af55ddd64 branch-4.1:[fix](fe) Fix redundant aggregation in
agg-union query plan #62231 (#63577)
add b672f277161 branch-4.1: [fix](auth)Fix arrow flight client ip auth
#63506 (#63592)
add a8bbe793c65 branch-4.1: [fix](workload) enforce explicit compute group
form for workload DDLs #63505 (#63596)
add da6ff4d07e1 branch-4.1: [fix](filecache) clean empty v3 cache dirs
#63344 (#63616)
add f530fcbfc7a branch-4.1: [fix](test) stabilize internal copy recycler
case #63340 (#63601)
add 9c268bcd3b6 branch-4.1: [refactor](be) Remove redundant remaining
conjunct roots #63525 (#63614)
add 01df440208f [fix](cache) Follower FE sql cache not invalidated on
table metadata replay (#63612) (#63658)
add 2e179175261 branch-4.1: [chore](regression-test) fix some unstable
cases #62922 (#63653)
add f63b7fd6bd8 branch-4.1: [improvement](cloud) Support configurable S3
credentials providers #62788 (#63680)
add a4974953e8b manual pick #62141 into branch 4.1 to keep consistency
with used test framework (#63689)
add efb3ffe3847 branch-4.1: [test](docker) Verify DML and 3-replica create
table when one BE is down #63401 (#63699)
add 4104d3293d6 branch-4.1: [fix](variant) clamp
variant_sparse_hash_shard_count to >=1 in SHOW CREATE output #63661 (#63717)
add 97fe945bf3b branch-4.1: [fix](case)fix iceberg unstable case. #63542
(#63710)
add 954f120f4b0 branch-4.1: [fix](mv) Avoid unioning query-unused MV
partitions #63081 (#63706)
add 9449c3783fb branch-4.1: [fix](fe) Reject JSONB and variant
distribution columns (#63211) (#63725)
add dee22643551 branch-4.1: [feat](Iceberg)Rest & S3Table Support Iam-role
(#60498) (#63655)
add 49d2f43399f branch-4.1: [improvement](cloud) Add enable_recycler
config to skip recycler dynamically #63286 (#63399)
add 8a6c5d8d7a8 branch-4.1: [refactor](be) Remove scanner eos flag #63578
(#63731)
add 16ed81902e3 branch-4.1: [fix](function) fix tokenize function
incorrect result when first argument is const #62699 (#63735)
add e4d7b7a8bf3 branch-4.1: [fix](be) Handle legacy DecimalV2 segments
with missing precision/frac #63569 (#63749)
add 6f6da3250b4 [fix](balance) Fix PartitionRebalancer generating invalid
moves to BEs without required storage medium (#62206) (#63756)
add d4d1b5fbd76 branch-4.1: [fix](regression) Make Iceberg rewrite where
init script idempotent #63673 (#63753)
add f2af29b8ad5 branch-4.1: [fix](regression-test) stabilize 2 muted
external_table_p0 tests #63646 (#63745)
add 5233a514f5a branch-4.1: [feature] Add information_schema role mappings
table (#62417)
add b360a985278 branch-4.1 [fix](variant) Bind Variant search to nested
indexes (#63765)
add d993f75ce42 branch-4.1: [fix](regression) Wait row count before
partition stats check (#63759)
add 07b496967bd branch-4.1: [feat](snapshot) Support storage vault for
create/list snapshot #62523 #57345 (#63534)
add 2ef097bfead branch-4.1: [feat](snapshot) Support storage vault for
clone instance #63217 (#63533)
add b9101d2af4d branch-4.1: [fix](fe) Normalize default HDFS paths in
LocationPath #63476 (#63770)
add 69f7bf3c658 branch-4.1: [fix](cloud) Skip wait for async rowset warmup
#62764 (#63778)
add c026559f5d4 Revert "[fix](cache) Follower FE sql cache not invalidated
on table metadata replay (#63612)" (#63871)
add 361bfd09b0e branch-4.1: [feature](be/fe) Add
exponential_moving_average aggregate function #63499 (#63814)
add a1de719fabb Backport 63509 branch 4.1 (#63741)
add 7d84e2ec19c branch-4.1: [pick](streamingjob) pick streaming-job batch
#63079 #63402 #63404 #63471 #63480 #63490 #63514 #63618 (#63812)
add d959ea0ae44 branch-4.1 [fix](match) Allow MATCH on aliased variant
subcolumns (#63811)
add 18c36546541 branch-4.1: [fix](test) fix some routine load case
unstable (#63803)
add b1a563a5c1b branch-4.1: [fix](cloud) skip stale tablet cache check for
STOP_TOKEN #63520 (#63786)
add 7517b64f8ac branch-4.1: [Enhancement](memory) Add
ConcurrentLong2ObjectHashMap and ConcurrentLong2LongHashMap (#61332) (#63797)
add cbf771c83aa branch-4.1: [fix](timestamptz) Report TIMESTAMPTZ as
string to MySQL clients #63292 (#63806)
add fde5aec7117 branch-4.1: [opt](memory) Remove unused fields from
CloudReplica #62125 (#62156)
add 2a018eda9f2 branch-4.1: [refactor](cloud) Replace Tablet references
with tabletId in CloudTabletRebalancer (#61233) (#63844)
add 45786882ede branch-4.1: [fix](show variables) Fix changed variable
output in show variables #63734 (#63793)
add 06867ad1c57 branch-4.1: [fix](be) Include HDFS connection in file
handle cache key #63516 (#63687)
add 028a1f79eb9 Backport 63102 branch 4.1 (#63740)
add 90e921325b4 branch-4.1: [improvement](cloud) Enable packed file and
empty rowset optimization by default #63475 (#63775)
add a794109e3bb branch-4.1: [fix](hive table) Fill Hive meta cache when
loading row count for queries #63470 (#63800)
add 316edd32a8a branch-4.1: [fix](be) Keep prefetch reader alive for async
tasks #63796 (#63867)
add 8d32ab18adb branch-4.1: [fix](coordinator) fix
computeDestIdToInstanceId picking wrong ExchangeNode for multi-input fragments
#63615 (#63821)
add 958968fde62 branch-4.1: [fix](test) Cast variant subcolumn as json in
variant_hirachinal for stable output #63828 (#63856)
add 82b2eab76b0 branch-4.1: [fix](file cache) guard null IOContext in
cached remote reader #63842 (#63869)
add b201ad6c86a branch-4.1: [fix](test) replace removed JMockit with
Mockito in CloudProcVersionDisplayTest #63473 (#63790)
add 45ebc2be1a7 branch-4.1: [fix](fe) Preserve operative slots when deep
copying logical relations #63315 (#63709)
add 9e2cff03c5b branch-4.1: [fix](variant) preserve TIMESTAMPTZ values in
sparse path #63522 (#63761)
add fae70a21d9b branch-4.1: [improve](streaming-job) avoid potential OOM
when reading large snapshot splits #63833 (#63883)
add d53b2f0aaa5 [branch-4.1][fix](search) reject Lucene-syntax search on
columns without inverted index (#63858)
add d07c8ea5bcf branch-4.1: [Fix](FoldConst) Preserve NaN in numeric
constant folding #63870 (#63909)
add 8106fbd948c branch-4.1: [fix](test) Wait for target rowset count in
test_time_series_compaction_policy #63890 (#63904)
add c0f0d2dc4f0 branch-4.1: [fix](recycler) Reduce
recycle_job_lease_expired_ms for SnapshotDataMigrator #63388 (#63881)
add 314f9c1c016 branch-4.1: [fix](planner) align legacy literal
compareLiteral with Nereids ComparableLiteral semantics (#63481) (#63874)
add ebd75c9d08e branch-4.1: Add datasketches HLL sketch aggregate
functions #63143 (#63911)
add 6848d984dc6 branch-4.1: [fix](cloud) Drain txn lazy committer workers
before destruction #63876 (#63926)
add aa1bd29172d branch-4.1: [fix](fe) Fix assert row join pushdown alias
handling #63892 (#63934)
add 592c63cf5e3 branch-4.1: [opt](memory) Remove unused dbId field from
CloudReplica #62079 (#62105)
add 55e0619d821 branch-4.1: [opt](memory) Remove unused indexId field from
CloudReplica #62080 (#62097)
add 01bba92ee0e branch-4.1: [Fix](variance) Fix sample variance/stddev NaN
res for single value#63605 (#63912)
add 5491bbdf3d9 branch-4.1:[feature](fe) Show compute group for MTMV
refresh task (#63206) (#63933)
add ce53a3e5fa0 branch-4.1: [fix](be ut) Skip custom memcpy on ARM+ASAN to
fix segfault at process startup #63656 (#63942)
add 49267a70910 branch-4.1: [fix](filecache) fix clear_file_cache right
after reboot causing file cache size percent overflow #63410 (#63958)
add f1cc4a373fd [fix](ann-index) Fix ANN range search state leakage and
incorrect slot index tracking. (#63965)
add 8721197c774 branch-4.1: [feat](cloud) Add system rate limit for
meta-service #61516 (#63932)
add 8dad59471d0 branch-4.1: [fix](regression) fix unstable
test_audit_log_internal_query_failure due to other cases modify global vars
#63030 (#63943)
add a123edd2726 branch-4.1: [Fix](nereids) Preserve negative zero sign in
SIGNBIT constant folding #63954 (#63973)
add b715c8bbdb9 branch-4.1: [Chore] correct null check in
`DictionaryManager.dropTableDictionaries()` #63630 (#63964)
add a9c29b3fbc7 branch-4.1: [fix](variant) Remove deprecated flatten
nested setting from P1 regression #63840 (#63949)
add 7c7646a908f branch-4.1: [feat](job) add per-job routine load metrics
#63576 (#63953)
add 1071eef5182 branch-4.1:[fix](iceberg) Reject COW table row-level DML
(#63950) (#63976)
add e57efb99a65 branch-4.1:[fix](iceberg) Add missing Iceberg field IDs
for position delete files(#63483) (#63977)
add 0dd938acc36 branch-4.1: [opt](memory) release packed file writer
buffer after flush #63967 (#63989)
add 5b6201af96c branch-4.1: [fix](iceberg) Add missing Iceberg field IDs
for position delete files. #63483 (#63995)
add cf62dc1638c branch-4.1: [improve](nereids) filter
nereidsPrunedTabletIds per partition in distributionPrune #63851 (#63979)
add a64b0d05ea7 branch-4.1: [fix](fe) Skip dropped columns in follower
stats sync #63882 (#63945)
add 9d3342207f8 branch-4.1:[fix](iceberg)fix iceberg v3 row lineage count
distinct error result(#63826) (#63999)
add 62d11909ff2 branch-4.1: [bug](jdbc) fix sqlserver couldn't get schema
with higher version driver jar (#63626) (#63994)
add ba921e343d9 branch-4.1: [refact](udf) remove the udf cache
expiration_time property #63897 (#63991)
add 93100ef475a branch-4.1: [fix](filecache) avoid crash when late holder
cleanup sees removed cache cell #62437 (#63956)
add bcfa30d9c54 branch-4.1: [bug](iceberg) fix iceberg sink writer with
spill report error (#62899) (#63993)
add 624e5be1802 branch-4.1: [fix](transaction) select txn insert backend
from current cluster #63634 (#63952)
add 10c3d1a50a4 branch-4.1: [fix](build) Bump UI axios to patched release
#63185 (#63983)
add c2f90e932b2 [fix](test)delete unstable case in agg_strategy (#64023)
add 32560ae3b35 branch-4.1: [fix](cloud) Normalize SC rowset graph before
delete bitmap capture #63960 (#63987)
add 31670b8c632 branch-4.1: [fix](be) Fix DCHECK in
LocalExchangeSharedState::sub_total_mem_usage #63742 (#64014)
add e3790f2a6ad branch-4.1: [feature](function) Support murmur_hash3_128
function #63196 (#63975)
add 44501fe163c branch-4.1 [opt](nerieds) PhysicalOlapScan and
PhysicalFileScan should print its id in plan (#62509) (#63538)
add 3b5e066d7ed branch-4.1: [fix](variant) fix array subscript on pruned
variant subpath #63891 (#63971)
add 03566894524 branch-4.1: [fix](iceberg) Use object store path for data
location #64028 (#64042)
add 3ebad14ec8d branch-4.1: [fix](serde) Support large string arrow
builder for variant serde (#64048)
add cb4008f6407 branch-4.1:[fix](metric) Preserve labels for histogram
metrics to fix wrong metric name for prometheus (#63485) (#63716)
new 83422d21c27 [fix](iceberg) Add missing Iceberg field IDs for position
delete files
new ec5b969d464 [fix](iceberg) Fill row-id hidden column for
format-version 1 tables
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (582d219d855)
\
N -- N -- N refs/heads/iceberg-v3-test-branch-4.1 (ec5b969d464)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.gitleaks.toml | 14 +
.gitmodules | 3 +
.licenserc.yaml | 1 +
.rat-excludes | 1 +
be/src/cloud/cloud_meta_mgr.cpp | 12 +
be/src/cloud/cloud_rowset_builder.cpp | 2 +
be/src/cloud/cloud_schema_change_job.cpp | 43 +-
be/src/cloud/cloud_tablet.cpp | 45 +-
be/src/cloud/cloud_tablet.h | 14 +-
be/src/cloud/cloud_warm_up_manager.cpp | 32 +-
be/src/cloud/config.cpp | 4 +-
be/src/core/data_type/data_type_factory.cpp | 19 +-
.../data_type_timestamptz_serde.cpp | 17 +
.../data_type_serde/data_type_timestamptz_serde.h | 4 +
.../data_type_serde/data_type_variant_serde.cpp | 53 +-
.../operator/spill_iceberg_table_sink_operator.cpp | 33 +-
be/src/exec/pipeline/dependency.h | 3 +-
be/src/exec/scan/olap_scanner.cpp | 12 -
be/src/exec/scan/scanner.cpp | 53 +-
be/src/exec/scan/scanner.h | 1 -
.../sink/writer/iceberg/viceberg_sort_writer.cpp | 29 +
.../sink/writer/iceberg/viceberg_sort_writer.h | 25 +-
.../sink/writer/iceberg/viceberg_table_writer.cpp | 6 +-
.../sink/writer/iceberg/viceberg_table_writer.h | 10 +-
...gregate_function_datasketches_hll_union_agg.cpp | 44 +
...aggregate_function_datasketches_hll_union_agg.h | 243 +++++
.../aggregate/aggregate_function_ema.cpp} | 19 +-
be/src/exprs/aggregate/aggregate_function_ema.h | 173 +++
.../aggregate_function_simple_factory.cpp | 5 +
be/src/exprs/aggregate/aggregate_function_stddev.h | 28 +-
be/src/exprs/function/function_hash.cpp | 158 ++-
be/src/exprs/function/function_search.cpp | 720 ++++---------
be/src/exprs/function/function_search.h | 99 +-
be/src/exprs/function/function_tokenize.cpp | 18 +-
be/src/exprs/function/function_tokenize.h | 2 +-
.../function/variant_inverted_index_search.cpp | 720 +++++++++++++
.../exprs/function/variant_inverted_index_search.h | 218 ++++
be/src/exprs/vectorized_fn_call.cpp | 19 +-
be/src/exprs/vectorized_fn_call.h | 3 +-
be/src/exprs/vexpr.cpp | 12 +-
be/src/exprs/vexpr.h | 23 +-
be/src/exprs/vexpr_context.cpp | 37 +-
be/src/exprs/vexpr_context.h | 3 +-
be/src/exprs/virtual_slot_ref.cpp | 7 +-
be/src/exprs/virtual_slot_ref.h | 5 +-
be/src/exprs/vsearch.cpp | 56 +
be/src/format/native/native_reader.cpp | 11 +-
be/src/format/parquet/byte_array_dict_decoder.cpp | 29 +-
be/src/format/parquet/byte_array_plain_decoder.cpp | 42 +-
be/src/format/parquet/vparquet_group_reader.cpp | 148 +--
be/src/format/parquet/vparquet_group_reader.h | 15 +-
be/src/format/table/iceberg_reader.cpp | 18 +-
be/src/glibc-compatibility/CMakeLists.txt | 11 +-
.../schema_cluster_snapshots_scanner.cpp | 14 +
.../schema_role_mappings_scanner.cpp | 145 +++
.../schema_role_mappings_scanner.h} | 33 +-
be/src/information_schema/schema_scanner.cpp | 3 +
be/src/io/cache/block_file_cache.cpp | 38 +-
be/src/io/cache/block_file_cache.h | 2 +-
be/src/io/cache/cached_remote_file_reader.cpp | 6 +-
be/src/io/cache/file_block.cpp | 3 +-
be/src/io/cache/fs_file_cache_storage.cpp | 32 +-
be/src/io/fs/buffered_reader.cpp | 4 +-
be/src/io/fs/buffered_reader.h | 8 +-
be/src/io/fs/file_handle_cache.cpp | 20 +-
be/src/io/fs/file_handle_cache.h | 21 +-
be/src/io/fs/local_file_system.cpp | 20 +
be/src/io/fs/local_file_system.h | 3 +
be/src/io/fs/packed_file_writer.cpp | 9 +-
be/src/io/fs/packed_file_writer.h | 6 +
be/src/load/routine_load/data_consumer.cpp | 10 +-
be/src/service/internal_service.cpp | 7 +
.../index/inverted/inverted_index_profile.h | 9 +
.../storage/index/inverted/inverted_index_stats.h | 14 +
.../query_v2/bit_set_query/bit_set_query.h | 8 +-
.../query_v2/bit_set_query/bit_set_weight.h | 6 +-
be/src/storage/iterators.h | 2 -
be/src/storage/rowset/beta_rowset_reader.cpp | 1 -
be/src/storage/rowset/rowset_reader_context.h | 1 -
be/src/storage/segment/segment.cpp | 47 +-
be/src/storage/segment/segment_iterator.cpp | 74 +-
be/src/storage/segment/segment_iterator.h | 4 +-
.../segment/variant/variant_column_reader.cpp | 51 +-
.../segment/variant/variant_column_reader.h | 4 +-
be/src/storage/tablet/tablet_reader.cpp | 1 -
be/src/storage/tablet/tablet_reader.h | 1 -
be/src/util/hash/murmur_hash3.cpp | 17 +-
be/src/util/hash/murmur_hash3.h | 7 +-
be/src/util/s3_util.cpp | 10 +
be/test/cloud/cloud_tablet_test.cpp | 44 +
be/test/cloud/cloud_warm_up_manager_test.cpp | 298 ++++++
be/test/core/data_type/data_type_decimal_test.cpp | 179 ++++
.../core/data_type_serde/data_type_serde_test.cpp | 25 +
.../data_type_serde_timestamptz_test.cpp | 83 ++
be/test/data/vec/columns/TIMESTAMPTZ(3).csv | 16 +
be/test/exec/scan/scanner_late_arrival_rf_test.cpp | 52 +-
.../schema_cluster_snapshots_scanner_test.cpp | 5 +
.../schema_role_mappings_scanner_test.cpp | 40 +
.../agg_datasketches_hll_union_agg_test.cpp | 1097 ++++++++++++++++++++
be/test/exprs/function/function_hash_test.cpp | 137 +++
.../exprs/function/function_search_nested_test.cpp | 353 ++++++-
be/test/exprs/function/function_search_test.cpp | 463 +++++++++
be/test/exprs/function/function_tokenize_test.cpp | 94 ++
.../parquet/byte_array_dict_decoder_test.cpp | 17 +
.../parquet/byte_array_plain_decoder_test.cpp | 43 +
be/test/io/cache/block_file_cache_test.cpp | 298 ++++++
be/test/io/cache/block_file_cache_test_common.h | 12 +-
.../fs_file_cache_storage_leak_cleaner_test.cpp | 57 +
be/test/io/fs/buffered_reader_test.cpp | 85 +-
be/test/io/fs/file_handle_cache_test.cpp | 43 +
be/test/io/fs/local_file_system_test.cpp | 24 +
be/test/io/fs/packed_file_writer_test.cpp | 19 +
.../storage/index/ann/ann_range_search_test.cpp | 210 +++-
.../index/inverted/query_v2/boolean_query_test.cpp | 22 +
build.sh | 9 +
cloud/src/common/bvars.cpp | 1 +
cloud/src/common/bvars.h | 1 +
cloud/src/common/config.h | 16 +
cloud/src/common/http_helper.cpp | 61 ++
cloud/src/common/http_helper.h | 6 +
cloud/src/common/metric.cpp | 16 +
cloud/src/meta-service/CMakeLists.txt | 1 +
cloud/src/meta-service/meta_service_helper.h | 16 +
cloud/src/meta-service/meta_service_job.cpp | 12 +-
.../meta_service_rate_limit_helper.cpp | 843 +++++++++++++++
.../meta-service/meta_service_rate_limit_helper.h | 80 ++
cloud/src/meta-service/meta_service_resource.cpp | 542 ++++++++--
cloud/src/meta-service/meta_service_txn.cpp | 3 +
cloud/src/meta-service/txn_lazy_committer.cpp | 57 +-
cloud/src/meta-service/txn_lazy_committer.h | 9 +-
cloud/src/recycler/recycler.cpp | 45 +-
cloud/src/recycler/s3_accessor.cpp | 41 +-
cloud/src/recycler/s3_accessor.h | 3 +
cloud/src/recycler/snapshot_chain_compactor.cpp | 5 +-
cloud/src/recycler/snapshot_data_migrator.cpp | 5 +-
cloud/test/CMakeLists.txt | 2 +-
cloud/test/meta_service_helper_test.cpp | 151 +++
cloud/test/meta_service_job_test.cpp | 65 ++
cloud/test/recycler_test.cpp | 81 ++
cloud/test/resource_test.cpp | 166 +++
common/cpp/aws_common.cpp | 12 +-
contrib/datasketches-cpp | 1 +
docker/runtime/doris-compose/Readme.md | 14 +
docker/runtime/doris-compose/cluster.py | 54 +-
docker/runtime/doris-compose/command.py | 53 +-
docker/runtime/doris-compose/resource/common.sh | 96 ++
docker/runtime/doris-compose/resource/init_fe.sh | 55 +-
.../create_preinstalled_scripts/iceberg/run21.sql | 9 +-
.../create_preinstalled_scripts/iceberg/run27.sql | 9 +-
.../postgresql/postgresql-14.yaml.tpl | 4 +-
.../doris/common/classloader/ScannerLoader.java | 72 +-
.../apache/doris/common/jni/utils/ExpiringMap.java | 100 --
.../java/org/apache/doris/udf/BaseExecutor.java | 17 +-
.../authentication/AuthenticationException.java | 19 +-
.../authentication/AuthenticationFailureType.java | 32 +-
.../doris/authentication/AuthenticationResult.java | 57 +-
.../doris/authentication/BasicPrincipal.java | 32 +
.../org/apache/doris/authentication/Principal.java | 10 +
.../AuthenticationExceptionTest.java | 12 +
.../authentication/AuthenticationResultTest.java | 35 +-
.../doris/authentication/BasicPrincipalTest.java | 11 +-
.../fe-authentication-handler/pom.xml | 15 +-
.../handler/AuthenticationOutcome.java | 10 +
.../handler/AuthenticationPluginManager.java | 29 +
.../handler/AuthenticationService.java | 84 +-
.../handler/AuthenticationOutcomeTest.java | 41 +
.../handler/AuthenticationPluginManagerTest.java | 5 +
.../handler/AuthenticationServiceTest.java | 274 ++++-
.../handler/IntegrationRegistryTest.java | 3 +-
.../plugin/ldap/LdapAuthenticationPlugin.java | 28 +-
.../pom.xml | 57 +-
.../DefinitionBackedRoleMappingEvaluator.java | 113 ++
.../IntegrationPropertyRoleMappingEvaluator.java | 200 ++++
.../rolemapping/NoOpRoleMappingEvaluator.java} | 35 +-
.../rolemapping/RoleMappingDefinition.java | 118 +++
.../rolemapping/RoleMappingDefinitionProvider.java | 23 +-
.../rolemapping/RoleMappingEvaluator.java | 24 +-
.../rolemapping/UnifiedRoleMappingCelEngine.java | 495 +++++++++
.../oidc/playground/RoleMappingCelPlayground.java | 152 +++
.../playground/RoleMappingCelPlaygroundTest.java} | 31 +-
...ntegrationPropertyRoleMappingEvaluatorTest.java | 85 ++
.../UnifiedRoleMappingCelEngineTest.java | 180 ++++
fe/fe-authentication/pom.xml | 1 +
.../org/apache/doris/catalog/PrimitiveType.java | 5 +-
.../main/java/org/apache/doris/catalog/Type.java | 6 +
.../java/org/apache/doris/catalog/VariantType.java | 3 +-
.../main/java/org/apache/doris/common/Config.java | 24 +-
.../apache/doris/job/cdc/DataSourceConfigKeys.java | 3 +
.../job/cdc/request/FetchTableSplitsRequest.java | 12 +
fe/fe-core/pom.xml | 23 +-
.../antlr4/org/apache/doris/nereids/DorisLexer.g4 | 3 +
.../antlr4/org/apache/doris/nereids/DorisParser.g4 | 14 +-
.../doris/analysis/HashDistributionDesc.java | 14 +-
.../org/apache/doris/analysis/IPv4Literal.java | 31 +-
.../org/apache/doris/analysis/IPv6Literal.java | 45 +-
.../java/org/apache/doris/analysis/MapLiteral.java | 2 +-
.../org/apache/doris/analysis/SchemaTableType.java | 1 +
.../org/apache/doris/analysis/StructLiteral.java | 2 +-
.../org/apache/doris/analysis/TimeV2Literal.java | 22 +-
.../AuthenticationIntegrationMgr.java | 47 +-
.../AuthenticationIntegrationRuntime.java | 346 ++++++
.../doris/authentication/RoleMappingMeta.java | 142 +++
.../doris/authentication/RoleMappingMgr.java | 279 +++++
.../doris/catalog/BuiltinAggregateFunctions.java | 5 +
.../doris/catalog/BuiltinScalarFunctions.java | 4 +
.../apache/doris/catalog/CloudTabletStatMgr.java | 20 +-
.../main/java/org/apache/doris/catalog/Env.java | 39 +-
.../apache/doris/catalog/HashDistributionInfo.java | 23 +
.../doris/catalog/LocalTabletInvertedIndex.java | 13 +-
.../java/org/apache/doris/catalog/OlapTable.java | 3 +
.../java/org/apache/doris/catalog/Replica.java | 19 -
.../org/apache/doris/catalog/S3StorageVault.java | 4 +-
.../java/org/apache/doris/catalog/SchemaTable.java | 12 +
.../apache/doris/catalog/TabletInvertedIndex.java | 4 +-
.../apache/doris/clone/LoadStatisticForTag.java | 13 +-
.../apache/doris/clone/PartitionRebalancer.java | 2 +-
.../apache/doris/cloud/catalog/CloudReplica.java | 79 --
.../doris/cloud/catalog/CloudTabletRebalancer.java | 508 +++++----
.../doris/cloud/snapshot/CloudSnapshotHandler.java | 2 +-
.../java/org/apache/doris/common/ErrorCode.java | 2 +
.../apache/doris/common/util/ClassLoaderUtils.java | 80 +-
.../org/apache/doris/common/util/LocationPath.java | 14 +-
.../doris/datasource/ExternalRowCountCache.java | 53 +-
.../org/apache/doris/datasource/ExternalTable.java | 13 +-
.../doris/datasource/hive/HMSExternalTable.java | 28 +-
.../datasource/iceberg/IcebergMetadataOps.java | 6 +
.../doris/datasource/iceberg/IcebergUtils.java | 8 +-
.../s3tables/CustomAwsCredentialsProvider.java | 43 -
.../doris/datasource/jdbc/client/JdbcClient.java | 14 +-
.../jdbc/client/JdbcPostgreSQLClient.java | 5 +
.../jdbc/client/JdbcSQLServerClient.java | 7 +
.../common/AwsCredentialsProviderFactory.java | 28 +
.../common/IcebergAwsAssumeRoleProperties.java | 52 +
.../IcebergAwsClientCredentialsProperties.java | 144 +++
.../metastore/AbstractIcebergProperties.java | 5 +
.../property/metastore/IcebergRestProperties.java | 72 +-
.../IcebergS3TablesMetaStoreProperties.java | 33 +-
.../datasource/property/storage/S3Properties.java | 96 +-
.../apache/doris/dictionary/DictionaryManager.java | 2 +-
.../streaming/DataSourceConfigValidator.java | 143 ++-
.../insert/streaming/StreamingInsertJob.java | 45 +-
.../streaming/StreamingJobSchedulerTask.java | 7 +
.../insert/streaming/StreamingMultiTblTask.java | 5 +-
.../apache/doris/job/extensions/mtmv/MTMVTask.java | 31 +-
.../doris/job/extensions/mtmv/MTMVTaskContext.java | 12 +-
.../doris/job/offset/SourceOffsetProvider.java | 24 +-
.../job/offset/jdbc/JdbcSourceOffsetProvider.java | 512 +++++++--
.../offset/jdbc/JdbcTvfSourceOffsetProvider.java | 71 +-
.../apache/doris/job/util/StreamingJobUtils.java | 72 +-
.../org/apache/doris/journal/JournalEntity.java | 12 +
.../java/org/apache/doris/master/Checkpoint.java | 2 -
.../java/org/apache/doris/metric/CloudMetrics.java | 26 +-
.../apache/doris/metric/DorisMetricRegistry.java | 36 +
.../{MetricVisitor.java => HistogramMetric.java} | 47 +-
.../org/apache/doris/metric/JsonMetricVisitor.java | 18 +
.../java/org/apache/doris/metric/MetricRepo.java | 101 +-
.../org/apache/doris/metric/MetricVisitor.java | 4 +
.../doris/metric/PrometheusMetricVisitor.java | 24 +-
.../doris/metric/SimpleCoreMetricVisitor.java | 6 +
.../java/org/apache/doris/mtmv/MTMVJobManager.java | 25 +-
.../org/apache/doris/mysql/AcceptListener.java | 1 +
.../org/apache/doris/mysql/MysqlCapability.java | 12 +-
.../java/org/apache/doris/mysql/MysqlProto.java | 29 +-
.../org/apache/doris/mysql/MysqlSerializer.java | 7 +-
.../mysql/authenticate/AuthenticateRequest.java | 134 ++-
.../mysql/authenticate/AuthenticateResponse.java | 66 +-
.../doris/mysql/authenticate/AuthenticateType.java | 2 +
.../authenticate/AuthenticationFailureSummary.java | 101 ++
.../mysql/authenticate/AuthenticatorManager.java | 376 ++++++-
.../MysqlAuthPacketCredentialExtractor.java | 90 ++
.../AuthenticationIntegrationAuthenticator.java | 239 +++++
.../password/AuthPacketAwarePasswordResolver.java | 62 ++
.../password/ClearPasswordResolver.java | 22 +
.../password/NativePasswordResolver.java | 30 +-
.../authenticate/password/PasswordResolver.java | 15 +
.../plugin/AuthenticationPluginAuthenticator.java | 253 +++++
.../org/apache/doris/mysql/privilege/Auth.java | 22 +-
.../doris/mysql/privilege/UserPropertyMgr.java | 14 +
.../doris/nereids/parser/LogicalPlanBuilder.java | 74 +-
.../parser/LogicalPlanBuilderForEncryption.java | 10 +
.../properties/ChildrenPropertiesRegulator.java | 22 +-
.../rules/exploration/mv/PartitionCompensator.java | 3 +-
.../rules/rewrite/CheckMatchExpression.java | 7 +-
.../rules/rewrite/PushDownJoinOnAssertNumRows.java | 102 +-
.../rules/rewrite/RewriteSearchToSlots.java | 63 +-
.../rules/rewrite/VariantSubPathPruning.java | 3 +-
.../trees/copier/LogicalPlanDeepCopier.java | 2 +-
.../functions/agg/DataSketchesHllUnionAgg.java | 113 ++
.../functions/agg/ExponentialMovingAverage.java | 122 +++
.../functions/executable/NumericArithmetic.java | 9 +-
.../functions/scalar/MurmurHash3128.java | 82 ++
.../functions/scalar/MurmurHash3U128.java | 81 ++
.../visitor/AggregateFunctionVisitor.java | 10 +
.../expressions/visitor/ScalarFunctionVisitor.java | 10 +
.../apache/doris/nereids/trees/plans/PlanType.java | 2 +
.../AdminCreateClusterSnapshotCommand.java | 9 +-
.../trees/plans/commands/AlterUserCommand.java | 7 +-
.../plans/commands/AlterWorkloadGroupCommand.java | 17 +-
.../plans/commands/CreateRoleMappingCommand.java | 122 +++
.../plans/commands/CreateWorkloadGroupCommand.java | 30 +-
...serCommand.java => DropRoleMappingCommand.java} | 40 +-
.../plans/commands/DropWorkloadGroupCommand.java | 13 +-
.../trees/plans/commands/IcebergDeleteCommand.java | 5 +-
.../plans/commands/IcebergDmlCommandUtils.java | 61 ++
.../trees/plans/commands/IcebergMergeCommand.java | 7 +-
.../trees/plans/commands/IcebergUpdateCommand.java | 5 +-
.../trees/plans/physical/PhysicalFileScan.java | 5 +-
.../trees/plans/physical/PhysicalHudiScan.java | 2 +-
.../trees/plans/physical/PhysicalOlapScan.java | 4 +-
.../trees/plans/visitor/CommandVisitor.java | 10 +
.../apache/doris/nereids/types/VariantType.java | 3 +-
.../doris/persist/DropRoleMappingOperationLog.java | 58 ++
.../java/org/apache/doris/persist/EditLog.java | 19 +
.../org/apache/doris/persist/OperationType.java | 2 +
.../doris/persist/meta/MetaPersistMethod.java | 23 +-
.../doris/persist/meta/PersistMetaModules.java | 5 +-
.../org/apache/doris/planner/OlapScanNode.java | 22 +-
.../java/org/apache/doris/qe/ConnectContext.java | 26 +
.../apache/doris/qe/InsertStreamTxnExecutor.java | 21 +-
.../java/org/apache/doris/qe/StmtExecutor.java | 1 -
.../doris/qe/runtime/ThriftPlansBuilder.java | 29 +-
.../WorkloadSchedPolicyMgr.java | 55 +-
.../apache/doris/service/FrontendServiceImpl.java | 15 +-
.../service/arrowflight/DorisFlightSqlService.java | 6 +
.../auth2/FlightCredentialValidator.java | 3 +-
.../auth2/FlightRemoteIpServerStreamTracer.java | 103 ++
.../doris/statistics/FollowerColumnSender.java | 4 +-
.../CdcStreamTableValuedFunction.java | 86 +-
.../doris/tablefunction/MetadataGenerator.java | 77 ++
...e.doris.mysql.authenticate.AuthenticatorFactory | 2 +-
.../org/apache/doris/analysis/ExprEqualsTest.java | 348 +++++++
.../analysis/LiteralExprCompareLiteralTest.java | 455 ++++++++
.../doris/analysis/LiteralExprEqualsTest.java | 366 +++++++
.../AuthenticationIntegrationMgrTest.java | 164 +--
.../AuthenticationIntegrationRuntimeTest.java | 432 ++++++++
.../doris/authentication/RoleMappingMgrTest.java | 238 +++++
.../org/apache/doris/catalog/SchemaTableTest.java | 13 +
.../org/apache/doris/catalog/UserPropertyTest.java | 30 +
.../java/org/apache/doris/clone/RebalanceTest.java | 81 ++
.../org/apache/doris/clone/RebalancerTestUtil.java | 16 +
.../cloud/catalog/CloudTabletRebalancerTest.java | 48 +-
.../common/proc/CloudProcVersionDisplayTest.java | 65 +-
.../apache/doris/common/util/LocationPathTest.java | 15 +
.../datasource/ExternalRowCountCacheTest.java | 66 +-
.../datasource/hive/HMSExternalTableTest.java | 176 ++++
.../datasource/iceberg/CreateIcebergTableTest.java | 42 +
.../iceberg/IcebergDDLAndDMLPlanTest.java | 15 +-
.../doris/datasource/iceberg/IcebergUtilsTest.java | 43 +
.../metastore/IcebergRestPropertiesTest.java | 303 ++++++
.../IcebergS3TablesMetaStorePropertiesTest.java | 272 +++++
.../property/storage/S3PropertiesTest.java | 45 +
.../doris/datasource/s3tables/S3TablesTest.java | 9 -
.../streaming/DataSourceConfigValidatorTest.java | 174 ++++
.../JdbcSourceOffsetProviderAsyncSplitTest.java | 486 +++++++++
.../doris/job/offset/jdbc/SplitProgressTest.java | 60 ++
.../java/org/apache/doris/metric/MetricsTest.java | 105 +-
.../org/apache/doris/mtmv/MTMVJobManagerTest.java | 88 ++
.../java/org/apache/doris/mtmv/MTMVTaskTest.java | 88 +-
.../apache/doris/mysql/MysqlAuthPacketTest.java | 26 +-
.../apache/doris/mysql/MysqlCapabilityTest.java | 5 +-
.../doris/mysql/MysqlHandshakePacketTest.java | 3 +
.../org/apache/doris/mysql/MysqlProtoTest.java | 118 +++
.../mysql/MysqlSerializerTimestampTzTest.java | 84 ++
.../mysql/authenticate/AuthenticateTypeTest.java | 63 +-
.../authenticate/AuthenticatorManagerTest.java | 948 +++++++++++++++++
.../MysqlAuthPacketCredentialExtractorTest.java | 90 ++
.../TestAuthenticationPluginFactory.java | 63 ++
...AuthenticationIntegrationAuthenticatorTest.java | 188 ++++
.../password/ClearPasswordResolverTest.java | 63 ++
.../AuthenticationPluginAuthenticatorTest.java | 178 ++++
.../org/apache/doris/mysql/privilege/AuthTest.java | 23 +
.../doris/nereids/parser/EncryptSQLTest.java | 34 +
.../nereids/parser/RoleMappingParserTest.java | 77 ++
.../exploration/mv/PartitionCompensatorTest.java | 104 ++
.../nereids/rules/expression/FoldConstantTest.java | 20 +-
.../rules/rewrite/AggregateUnionPlanTest.java | 117 +++
.../rules/rewrite/CheckMatchExpressionTest.java | 45 +
.../rewrite/PushDownJoinOnAssertNumRowsTest.java | 66 ++
.../rules/rewrite/RewriteSearchToSlotsTest.java | 109 +-
.../rules/rewrite/VariantPruningLogicTest.java | 47 +
.../trees/copier/LogicalPlanDeepCopierTest.java | 11 +
.../executable/NumericArithmeticTest.java | 10 +
.../AdminCreateClusterSnapshotCommandTest.java | 3 +
.../plans/commands/IcebergDmlCommandUtilsTest.java | 91 ++
.../commands/info/DistributionDescriptorTest.java | 48 +
.../doris/qe/InsertStreamTxnExecutorTest.java | 57 +
.../WorkloadSchedPolicyMgrTest.java | 206 ++++
.../doris/service/FrontendServiceImplTest.java | 125 ++-
.../FlightRemoteIpServerStreamTracerTest.java | 92 ++
.../doris/statistics/FollowerColumnSenderTest.java | 30 +
....authentication.spi.AuthenticationPluginFactory | 27 +-
fe/fe-foundation/pom.xml | 14 +-
.../util/ConcurrentLong2LongHashMap.java | 526 ++++++++++
.../util/ConcurrentLong2ObjectHashMap.java | 487 +++++++++
.../util/ConcurrentLong2LongHashMapTest.java | 458 ++++++++
.../util/ConcurrentLong2ObjectHashMapTest.java | 432 ++++++++
fe/pom.xml | 7 +-
.../postgresql/connection/PostgresConnection.java | 905 ++++++++++++++++
.../cdcclient/service/PipelineCoordinator.java | 14 +-
.../doris/cdcclient/sink/DorisBatchStreamLoad.java | 2 +-
.../deserialize/DebeziumJsonDeserializer.java | 46 +-
.../source/reader/AbstractCdcSourceReader.java | 23 +-
.../source/reader/JdbcIncrementalSourceReader.java | 322 +++---
.../cdcclient/source/reader/SourceReader.java | 5 +
.../source/reader/mysql/MySqlSourceReader.java | 352 ++++---
.../reader/postgres/PostgresSourceReader.java | 4 +
.../apache/doris/cdcclient/utils/ConfigUtil.java | 29 +-
.../source/fetch/PostgresScanFetchTask.java | 391 +++++++
.../deserialize/DebeziumJsonDeserializerTest.java | 76 ++
.../doris/cdcclient/utils/ConfigUtilTest.java | 61 +-
gensrc/proto/cloud.proto | 7 +
gensrc/thrift/AgentService.thrift | 7 +-
gensrc/thrift/Descriptors.thrift | 1 +
gensrc/thrift/FrontendService.thrift | 1 +
.../test_select_stddev_variance_window.out | 933 +++++++++--------
.../ddl/create_nestedtypes_with_schemachange.out | 12 +-
.../timestamptz/test_cast_timestamptz.out | 4 +-
.../timestamptz/test_timestamptz_cast.out | 12 +-
.../sql-functions/doc_date_functions_test.out | 48 +-
.../select/test_sqlserver_all_types_select.out | 16 +
.../paimon/test_paimon_catalog_timestamp_tz.out | 12 +-
.../data/function_p0/test_agg_foreach.out | 3 +-
.../data/function_p0/test_agg_foreach_notnull.out | 3 +-
...est_streaming_mysql_job_charset_and_strings.out | 39 +
.../cdc/test_streaming_mysql_job_composite_pk.out | 47 +
.../cdc/test_streaming_mysql_job_datetime_pk.out | 29 +
.../cdc/test_streaming_mysql_job_decimal_pk.out | 29 +
.../cdc/test_streaming_mysql_job_enum_set.out | 27 +
...est_streaming_mysql_job_id_gap_completeness.out | 21 +
.../test_streaming_mysql_job_integer_boundary.out | 31 +
.../cdc/test_streaming_mysql_job_json_types.out | 52 +
.../test_streaming_mysql_job_offset_earliest.out | 9 +
....out => test_streaming_mysql_job_partition.out} | 0
...ming_mysql_job_snapshot_with_concurrent_dml.out | 25 +
.../cdc/test_streaming_postgres_job_all_type.out | 4 +-
.../test_streaming_postgres_job_array_boundary.out | 29 +
.../test_streaming_postgres_job_composite_pk.out | 47 +
.../cdc/test_streaming_postgres_job_decimal_pk.out | 15 +
..._streaming_postgres_job_id_gap_completeness.out | 21 +
.../test_streaming_postgres_job_jsonb_types.out | 32 +
...ming_postgres_job_snapshot_historical_dates.out | 45 +
...g_postgres_job_snapshot_with_concurrent_dml.out | 25 +
.../cdc/test_streaming_postgres_job_uuid.out | 26 +
.../data/nereids_function_p0/agg_function/agg.out | 672 ++++++------
.../data/nereids_function_p0/scalar_function/S.out | 3 +
.../data/nereids_p0/aggregate/agg_nullable_2.out | 19 +-
.../ddl/show_variables/show_variables_command.out | 8 +
.../test_select_stddev_variance_window.out | 293 ++++--
.../nereids_rules_p0/agg_strategy/agg_strategy.out | 200 ++--
.../normalize_window_nullable_agg_test.out | 5 +-
.../nereids_syntax_p0/mv/aggregate/agg_sync_mv.out | 157 ++-
.../data/query_p0/aggregate/aggregate.out | 30 +-
.../exponential_moving_average.out | 31 +
.../test_datasketches_hll_union_agg.out | 28 +
.../datetime_functions/test_date_function.out | 2 +-
.../hash_functions/test_hash_function.out | 123 ++-
.../test_ipv4_ipv6_multi_not_equal.out | 36 +
.../test_select_stddev_variance_window.out | 205 ++--
.../tpcds_sf100/noStatsRfPrune/query75.out | 117 ++-
.../tpcds_sf100/no_stats_shape/query75.out | 117 ++-
.../shape_check/tpcds_sf10t_orc/shape/query75.out | 117 ++-
regression-test/data/variant_p0/desc.out | 50 +-
regression-test/data/variant_p0/nested.out | 2 +-
regression-test/data/variant_p0/nested2.out | 8 +-
.../variant_p0/test_variant_timestamptz_sparse.out | 7 +
.../org/apache/doris/regression/suite/Suite.groovy | 163 +++
.../doris/regression/suite/SuiteCluster.groovy | 79 +-
.../ann_range_search_pushdown_regression.groovy | 141 +++
...ge_search_source_index_status_regression.groovy | 84 ++
.../arrow_flight_sql_p0/test_auth_remote_ip.groovy | 78 ++
.../suites/audit/test_audit_log_behavior.groovy | 16 +-
.../test_authentication_integration_auth.groovy | 3 +
.../auth_p0/test_role_mapping_system_table.groovy | 123 +++
...rg_s3tables_catalog_credentials_provider.groovy | 105 ++
.../test_recycler_with_internal_copy.groovy | 21 +-
.../test_time_series_compaction_policy.groovy | 49 +-
.../test_timestamptz_jdbc_binary_protocol.groovy | 85 ++
.../test_export_variant_10k_columns.groovy | 0
.../cache/test_file_cache_query_limit.groovy | 64 +-
.../hive/test_hive_query_cache.groovy | 11 +-
.../dml/test_iceberg_merge_into_advanced.groovy | 50 +-
.../dml/test_iceberg_merge_into_basic.groovy | 10 +-
.../dml/test_iceberg_update_delete_advanced.groovy | 42 +-
.../dml/test_iceberg_update_delete_basic.groovy | 10 +-
.../test_iceberg_v1_rowid_hidden_column.groovy | 175 ++++
...test_iceberg_v3_row_lineage_query_insert.groovy | 63 +-
...eberg_v3_row_lineage_update_delete_merge.groovy | 10 +-
.../select/test_sqlserver_all_types_select.groovy | 14 +
.../tvf/test_hdfs_parquet_group6.groovy | 4 +-
.../test_dml_when_one_be_down.groovy | 141 +++
.../test_streaming_mysql_job_async_split.groovy | 160 +++
...t_streaming_mysql_job_async_split_uneven.groovy | 195 ++++
..._streaming_mysql_job_charset_and_strings.groovy | 195 ++++
.../test_streaming_mysql_job_composite_pk.groovy | 198 ++++
.../test_streaming_mysql_job_datetime_pk.groovy | 153 +++
.../cdc/test_streaming_mysql_job_decimal_pk.groovy | 152 +++
.../cdc/test_streaming_mysql_job_enum_set.groovy | 182 ++++
..._streaming_mysql_job_id_gap_completeness.groovy | 159 +++
...est_streaming_mysql_job_integer_boundary.groovy | 165 +++
.../cdc/test_streaming_mysql_job_json_types.groovy | 176 ++++
...test_streaming_mysql_job_offset_earliest.groovy | 130 +++
.../cdc/test_streaming_mysql_job_partition.groovy | 166 +++
.../cdc/test_streaming_mysql_job_server_id.groovy | 133 +++
...t_streaming_mysql_job_snapshot_fat_split.groovy | 153 +++
...g_mysql_job_snapshot_with_concurrent_dml.groovy | 148 +++
.../cdc/test_streaming_postgres_job.groovy | 29 +-
...st_streaming_postgres_job_array_boundary.groovy | 185 ++++
...ing_postgres_job_async_split_multi_table.groovy | 178 ++++
...ng_postgres_job_async_split_pause_resume.groovy | 198 ++++
...treaming_postgres_job_async_split_uneven.groovy | 198 ++++
...stgres_job_async_split_uneven_restart_fe.groovy | 207 ++++
...streaming_postgres_job_binlog_restart_fe.groovy | 191 ++++
...test_streaming_postgres_job_composite_pk.groovy | 198 ++++
.../test_streaming_postgres_job_decimal_pk.groovy | 130 +++
...eaming_postgres_job_drop_during_snapshot.groovy | 148 +++
...reaming_postgres_job_id_gap_completeness.groovy | 146 +++
.../test_streaming_postgres_job_jsonb_types.groovy | 186 ++++
.../test_streaming_postgres_job_publication.groovy | 124 ++-
..._streaming_postgres_job_slot_lsn_advance.groovy | 224 ++++
...treaming_postgres_job_snapshot_fat_split.groovy | 141 +++
...g_postgres_job_snapshot_historical_dates.groovy | 229 ++++
...ostgres_job_snapshot_with_concurrent_dml.groovy | 153 +++
...st_streaming_postgres_job_special_offset.groovy | 15 +-
...g_postgres_job_special_offset_restart_fe.groovy | 188 ++++
.../cdc/test_streaming_postgres_job_uuid.groovy | 176 ++++
.../cdc/tvf/test_cdc_stream_tvf_mysql.groovy | 83 +-
.../cdc/tvf/test_cdc_stream_tvf_postgres.groovy | 32 +
...ming_job_cdc_stream_postgres_async_split.groovy | 193 ++++
...c_stream_postgres_async_split_restart_fe.groovy | 218 ++++
.../jsonb_p0/test_jsonb_distribution_column.groovy | 46 +
.../load_p0/routine_load/test_black_list.groovy | 4 +-
.../nereids_function_p0/scalar_function/S.groovy | 2 +
.../show_variables/show_variables_command.groovy | 8 +
.../fold_constant_numeric_arithmatic.groovy | 7 +
.../nereids_p0/stats/partitionRowCount.groovy | 16 +-
.../agg_strategy/agg_strategy.groovy | 2 -
.../test_multicast_sink_multi_exchange.groovy | 96 ++
.../suites/query_p0/aggregate/aggregate.groovy | 1 +
.../exponential_moving_average.groovy | 158 +++
.../test_datasketches_hll_union_agg.groovy | 170 +++
.../hash_functions/test_hash_function.groovy | 65 +-
.../test_ipv4_ipv6_multi_not_equal.groovy | 107 ++
.../suites/search/test_search_function.groovy | 13 +-
...est_partition_rebalancer_medium_mismatch.groovy | 178 ++++
.../suites/variant_p0/doc_mode/load.groovy | 2 +-
regression-test/suites/variant_p0/load.groovy | 2 +-
regression-test/suites/variant_p0/nested.groovy | 188 ----
.../suites/variant_p0/nested/load.groovy | 200 ----
.../variant_p0/nested/nested_in_top_array.groovy | 135 ---
.../suites/variant_p0/nested/sql/q01.sql | 13 -
regression-test/suites/variant_p0/nested2.groovy | 164 ---
.../test_doris_24269_create_table_like.groovy | 59 ++
.../variant_p0/test_variant_array_subscript.groovy | 54 +
.../test_variant_timestamptz_sparse.groovy | 102 ++
.../suites/variant_p0/variant_hirachinal.groovy | 4 +-
.../suites/variant_p1/predefine/load.groovy | 3 +-
run-be-ut.sh | 14 +-
ui/package.json | 2 +-
558 files changed, 38968 insertions(+), 5445 deletions(-)
create mode 100644 .gitleaks.toml
create mode 100644
be/src/exprs/aggregate/aggregate_function_datasketches_hll_union_agg.cpp
create mode 100644
be/src/exprs/aggregate/aggregate_function_datasketches_hll_union_agg.h
copy be/src/{storage/index/inverted/inverted_index_stats.h =>
exprs/aggregate/aggregate_function_ema.cpp} (67%)
create mode 100644 be/src/exprs/aggregate/aggregate_function_ema.h
create mode 100644 be/src/exprs/function/variant_inverted_index_search.cpp
create mode 100644 be/src/exprs/function/variant_inverted_index_search.h
create mode 100644 be/src/information_schema/schema_role_mappings_scanner.cpp
copy be/src/{storage/index/inverted/inverted_index_stats.h =>
information_schema/schema_role_mappings_scanner.h} (53%)
create mode 100644 be/test/cloud/cloud_warm_up_manager_test.cpp
create mode 100644 be/test/data/vec/columns/TIMESTAMPTZ(3).csv
create mode 100644
be/test/exec/schema_scanner/schema_role_mappings_scanner_test.cpp
create mode 100644
be/test/exprs/aggregate/agg_datasketches_hll_union_agg_test.cpp
create mode 100644 be/test/io/fs/file_handle_cache_test.cpp
create mode 100644 cloud/src/meta-service/meta_service_rate_limit_helper.cpp
create mode 100644 cloud/src/meta-service/meta_service_rate_limit_helper.h
create mode 100644 cloud/test/meta_service_helper_test.cpp
create mode 160000 contrib/datasketches-cpp
delete mode 100644
fe/be-java-extensions/java-common/src/main/java/org/apache/doris/common/jni/utils/ExpiringMap.java
copy be/src/storage/index/inverted/inverted_index_stats.h =>
fe/fe-authentication/fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationFailureType.java
(58%)
copy fe/fe-authentication/{fe-authentication-handler =>
fe-authentication-role-mapping}/pom.xml (52%)
create mode 100644
fe/fe-authentication/fe-authentication-role-mapping/src/main/java/org/apache/doris/authentication/rolemapping/DefinitionBackedRoleMappingEvaluator.java
create mode 100644
fe/fe-authentication/fe-authentication-role-mapping/src/main/java/org/apache/doris/authentication/rolemapping/IntegrationPropertyRoleMappingEvaluator.java
copy
fe/fe-authentication/{fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationException.java
=>
fe-authentication-role-mapping/src/main/java/org/apache/doris/authentication/rolemapping/NoOpRoleMappingEvaluator.java}
(51%)
create mode 100644
fe/fe-authentication/fe-authentication-role-mapping/src/main/java/org/apache/doris/authentication/rolemapping/RoleMappingDefinition.java
copy be/src/storage/index/inverted/inverted_index_stats.h =>
fe/fe-authentication/fe-authentication-role-mapping/src/main/java/org/apache/doris/authentication/rolemapping/RoleMappingDefinitionProvider.java
(73%)
copy be/src/storage/index/inverted/inverted_index_stats.h =>
fe/fe-authentication/fe-authentication-role-mapping/src/main/java/org/apache/doris/authentication/rolemapping/RoleMappingEvaluator.java
(62%)
create mode 100644
fe/fe-authentication/fe-authentication-role-mapping/src/main/java/org/apache/doris/authentication/rolemapping/UnifiedRoleMappingCelEngine.java
create mode 100644
fe/fe-authentication/fe-authentication-role-mapping/src/test/java/org/apache/doris/authentication/plugin/oidc/playground/RoleMappingCelPlayground.java
copy
fe/fe-authentication/{fe-authentication-api/src/main/java/org/apache/doris/authentication/AuthenticationException.java
=>
fe-authentication-role-mapping/src/test/java/org/apache/doris/authentication/plugin/oidc/playground/RoleMappingCelPlaygroundTest.java}
(51%)
create mode 100644
fe/fe-authentication/fe-authentication-role-mapping/src/test/java/org/apache/doris/authentication/rolemapping/IntegrationPropertyRoleMappingEvaluatorTest.java
create mode 100644
fe/fe-authentication/fe-authentication-role-mapping/src/test/java/org/apache/doris/authentication/rolemapping/UnifiedRoleMappingCelEngineTest.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/authentication/AuthenticationIntegrationRuntime.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/authentication/RoleMappingMeta.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/authentication/RoleMappingMgr.java
delete mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/iceberg/s3tables/CustomAwsCredentialsProvider.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/property/common/IcebergAwsAssumeRoleProperties.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/datasource/property/common/IcebergAwsClientCredentialsProperties.java
copy fe/fe-core/src/main/java/org/apache/doris/metric/{MetricVisitor.java =>
HistogramMetric.java} (51%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/mysql/authenticate/AuthenticationFailureSummary.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/mysql/authenticate/MysqlAuthPacketCredentialExtractor.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/mysql/authenticate/integration/AuthenticationIntegrationAuthenticator.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/mysql/authenticate/password/AuthPacketAwarePasswordResolver.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/mysql/authenticate/plugin/AuthenticationPluginAuthenticator.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/DataSketchesHllUnionAgg.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/agg/ExponentialMovingAverage.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MurmurHash3128.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/expressions/functions/scalar/MurmurHash3U128.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/CreateRoleMappingCommand.java
copy
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/{AlterUserCommand.java
=> DropRoleMappingCommand.java} (55%)
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/nereids/trees/plans/commands/IcebergDmlCommandUtils.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/persist/DropRoleMappingOperationLog.java
create mode 100644
fe/fe-core/src/main/java/org/apache/doris/service/arrowflight/auth2/FlightRemoteIpServerStreamTracer.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/analysis/ExprEqualsTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/analysis/LiteralExprCompareLiteralTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/analysis/LiteralExprEqualsTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/authentication/AuthenticationIntegrationRuntimeTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/authentication/RoleMappingMgrTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/job/offset/jdbc/JdbcSourceOffsetProviderAsyncSplitTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/job/offset/jdbc/SplitProgressTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mtmv/MTMVJobManagerTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mysql/MysqlSerializerTimestampTzTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mysql/authenticate/AuthenticatorManagerTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mysql/authenticate/MysqlAuthPacketCredentialExtractorTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mysql/authenticate/TestAuthenticationPluginFactory.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mysql/authenticate/integration/AuthenticationIntegrationAuthenticatorTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mysql/authenticate/password/ClearPasswordResolverTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/mysql/authenticate/plugin/AuthenticationPluginAuthenticatorTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/parser/RoleMappingParserTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/rules/rewrite/AggregateUnionPlanTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/nereids/trees/plans/commands/IcebergDmlCommandUtilsTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/qe/InsertStreamTxnExecutorTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/resource/workloadschedpolicy/WorkloadSchedPolicyMgrTest.java
create mode 100644
fe/fe-core/src/test/java/org/apache/doris/service/arrowflight/auth2/FlightRemoteIpServerStreamTracerTest.java
copy cloud/src/meta-service/CMakeLists.txt =>
fe/fe-core/src/test/resources/META-INF/services/org.apache.doris.authentication.spi.AuthenticationPluginFactory
(51%)
create mode 100644
fe/fe-foundation/src/main/java/org/apache/doris/foundation/util/ConcurrentLong2LongHashMap.java
create mode 100644
fe/fe-foundation/src/main/java/org/apache/doris/foundation/util/ConcurrentLong2ObjectHashMap.java
create mode 100644
fe/fe-foundation/src/test/java/org/apache/doris/foundation/util/ConcurrentLong2LongHashMapTest.java
create mode 100644
fe/fe-foundation/src/test/java/org/apache/doris/foundation/util/ConcurrentLong2ObjectHashMapTest.java
create mode 100644
fs_brokers/cdc_client/src/main/java/io/debezium/connector/postgresql/connection/PostgresConnection.java
create mode 100644
fs_brokers/cdc_client/src/main/java/org/apache/flink/cdc/connectors/postgres/source/fetch/PostgresScanFetchTask.java
create mode 100644
fs_brokers/cdc_client/src/test/java/org/apache/doris/cdcclient/source/deserialize/DebeziumJsonDeserializerTest.java
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_charset_and_strings.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_composite_pk.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_datetime_pk.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_decimal_pk.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_enum_set.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_id_gap_completeness.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_integer_boundary.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_json_types.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_offset_earliest.out
copy
regression-test/data/job_p0/streaming_job/cdc/{test_streaming_postgres_job_partition.out
=> test_streaming_mysql_job_partition.out} (100%)
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_mysql_job_snapshot_with_concurrent_dml.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_array_boundary.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_composite_pk.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_decimal_pk.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_id_gap_completeness.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_jsonb_types.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_snapshot_historical_dates.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_snapshot_with_concurrent_dml.out
create mode 100644
regression-test/data/job_p0/streaming_job/cdc/test_streaming_postgres_job_uuid.out
create mode 100644
regression-test/data/query_p0/aggregate/exponential_moving_average/exponential_moving_average.out
create mode 100644
regression-test/data/query_p0/sql_functions/aggregate_functions/test_datasketches_hll_union_agg.out
create mode 100644
regression-test/data/query_p0/sql_functions/ip_functions/test_ipv4_ipv6_multi_not_equal.out
create mode 100644
regression-test/data/variant_p0/test_variant_timestamptz_sparse.out
create mode 100644
regression-test/suites/ann_index_p0/ann_range_search_pushdown_regression.groovy
create mode 100644
regression-test/suites/ann_index_p0/ann_range_search_source_index_status_regression.groovy
create mode 100644
regression-test/suites/arrow_flight_sql_p0/test_auth_remote_ip.groovy
create mode 100644
regression-test/suites/auth_p0/test_role_mapping_system_table.groovy
create mode 100644
regression-test/suites/aws_iam_role_p0/test_iceberg_s3tables_catalog_credentials_provider.groovy
create mode 100644
regression-test/suites/datatype_p0/timestamptz/test_timestamptz_jdbc_binary_protocol.groovy
rename regression-test/suites/{export_p0 =>
export_p2}/test_export_variant_10k_columns.groovy (100%)
create mode 100644
regression-test/suites/external_table_p0/iceberg/test_iceberg_v1_rowid_hidden_column.groovy
create mode 100644
regression-test/suites/fault_injection_p0/test_dml_when_one_be_down.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_async_split.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_async_split_uneven.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_charset_and_strings.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_composite_pk.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_datetime_pk.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_decimal_pk.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_enum_set.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_id_gap_completeness.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_integer_boundary.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_json_types.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_offset_earliest.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_partition.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_server_id.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_snapshot_fat_split.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_mysql_job_snapshot_with_concurrent_dml.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_array_boundary.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_async_split_multi_table.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_async_split_pause_resume.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_async_split_uneven.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_async_split_uneven_restart_fe.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_binlog_restart_fe.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_composite_pk.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_decimal_pk.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_drop_during_snapshot.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_id_gap_completeness.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_jsonb_types.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_slot_lsn_advance.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_snapshot_fat_split.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_snapshot_historical_dates.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_snapshot_with_concurrent_dml.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_special_offset_restart_fe.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/test_streaming_postgres_job_uuid.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/tvf/test_streaming_job_cdc_stream_postgres_async_split.groovy
create mode 100644
regression-test/suites/job_p0/streaming_job/cdc/tvf/test_streaming_job_cdc_stream_postgres_async_split_restart_fe.groovy
create mode 100644
regression-test/suites/jsonb_p0/test_jsonb_distribution_column.groovy
create mode 100644
regression-test/suites/nereids_syntax_p0/distribute/test_multicast_sink_multi_exchange.groovy
create mode 100644
regression-test/suites/query_p0/aggregate/exponential_moving_average/exponential_moving_average.groovy
create mode 100644
regression-test/suites/query_p0/sql_functions/aggregate_functions/test_datasketches_hll_union_agg.groovy
create mode 100644
regression-test/suites/query_p0/sql_functions/ip_functions/test_ipv4_ipv6_multi_not_equal.groovy
create mode 100644
regression-test/suites/storage_medium_p0/test_partition_rebalancer_medium_mismatch.groovy
delete mode 100644 regression-test/suites/variant_p0/nested.groovy
delete mode 100644 regression-test/suites/variant_p0/nested/load.groovy
delete mode 100644
regression-test/suites/variant_p0/nested/nested_in_top_array.groovy
delete mode 100644 regression-test/suites/variant_p0/nested/sql/q01.sql
delete mode 100644 regression-test/suites/variant_p0/nested2.groovy
create mode 100644
regression-test/suites/variant_p0/test_doris_24269_create_table_like.groovy
create mode 100644
regression-test/suites/variant_p0/test_variant_array_subscript.groovy
create mode 100644
regression-test/suites/variant_p0/test_variant_timestamptz_sparse.groovy
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]