[feature](be) Build table filters from conjuncts#63733
Merged
Merged
Conversation
### What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary: TableReader stored TableReadOptions::conjuncts but did not convert them into _table_filters before ColumnMapper created FileScanRequest. This adds conservative single-slot conjunct extraction during open_reader(), prepares/opens the generated filter contexts, and covers the localized Parquet row filtering path in TableReader tests.
### Release note
None
### Check List (For Author)
- Test: Manual test
- Ran git diff --check. ./run-be-ut.sh --run '--filter=TableReaderTest.*' could not run because JAVA_HOME points to JDK 11 and JDK_17 is not set. build-support/check-format.sh could not run because clang-format is not installed.
- Behavior changed: Yes. TableReader now localizes single-slot table conjuncts into FileScanRequest local filters during reader open.
- Does this need documentation: No
Contributor
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
### What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary: TableReader builds table filters from table-level conjuncts, but the conjunct slot refs use table block positions. Passing them directly to ParquetReader is incorrect because ParquetReader evaluates filters on a file-local block with different column positions. This rewrites localized conjunct slot refs to file-local positions and opens those localized filter expressions after FileScanRequest creation.
### Release note
None
### Check List (For Author)
- Test: Unit Test
- git diff --check
- build-support/check-format.sh --files be/src/format/reader/column_mapper.cpp be/src/format/reader/table_reader.cpp be/src/format/reader/table_reader.h be/test/format/reader/table_reader_test.cpp (blocked: clang-format not found)
- ./run-be-ut.sh --run '--filter=TableReaderTest.*' (blocked: JAVA_HOME points to JDK 11 and JDK_17 is not set)
- Behavior changed: No
- Does this need documentation: No
f19f78a
into
apache:refact_reader_branch
10 of 13 checks passed
Gabriel39
added a commit
to Gabriel39/incubator-doris
that referenced
this pull request
May 27, 2026
Gabriel39
added a commit
to Gabriel39/incubator-doris
that referenced
this pull request
May 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
Release note
None
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)