Gabriel39 opened a new pull request, #66149:
URL: https://github.com/apache/doris/pull/66149
### What problem does this PR solve?
Issue Number: close #xxx
Related PR: #66032
Problem Summary:
PR #66032 evaluates Parquet V2 dictionary predicates directly, but string
runtime filters still fall back to scalar Field evaluation for every dictionary
entry. This causes excessive dictionary-filter build time and can also let
runtime-filter selectivity sampling on the tiny dictionary disable filtering
for later row batches.
This change evaluates the wrapped runtime-filter implementation once over
the typed dictionary column and reuses the dictionary-id bitmap for all pages.
It covers IN, BLOOM, IN_OR_BLOOM (both resolved forms), MIN, MAX, and MINMAX
across every scalar type supported by runtime filters: booleans, integer and
floating-point types, date/time types, decimals, IPv4/IPv6, CHAR, VARCHAR, and
STRING.
Validation:
- 48 ParquetScanTest tests passed under ASAN_UT.
- 11 focused runtime-filter and type-matrix tests passed under ASAN_UT.
- Full Release BE build passed.
- Repository clang-format check passed.
### Release note
None
### Check List (For Author)
- Test
- [x] Unit Test
- Behavior changed:
- [x] No.
- Does this need documentation?
- [x] No.
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]