[refactor](predicate) Normalize predicates generation#59187
[refactor](predicate) Normalize predicates generation#59187Gabriel39 merged 2 commits intoapache:masterfrom
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
TPC-DS: Total hot run time: 40656 ms |
|
run buildall |
TPC-DS: Total hot run time: 1606 ms |
|
run buildall |
TPC-DS: Total hot run time: 1984 ms |
|
run buildall |
TPC-DS: Total hot run time: 182809 ms |
ClickBench: Total hot run time: 27.64 s |
|
run buildall |
TPC-H: Total hot run time: 34938 ms |
TPC-DS: Total hot run time: 179720 ms |
ClickBench: Total hot run time: 27.15 s |
|
run buildall |
TPC-H: Total hot run time: 35460 ms |
TPC-DS: Total hot run time: 179422 ms |
ClickBench: Total hot run time: 27.64 s |
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
|
run buildall |
TPC-H: Total hot run time: 36464 ms |
TPC-DS: Total hot run time: 180127 ms |
ClickBench: Total hot run time: 27.72 s |
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
|
run buildall |
|
run buildall |
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
|
run buildall |
| @@ -295,150 +296,199 @@ Status ScanLocalState<Derived>::_normalize_conjuncts(RuntimeState* state) { | |||
|
|
|||
| template <typename Derived> | |||
| Status ScanLocalState<Derived>::_normalize_predicate(vectorized::VExprContext* context, | |||
There was a problem hiding this comment.
这块逻辑,太复杂,我们得拆分一下,更容易加beut,否则后面很难维护了。
TPC-H: Total hot run time: 35193 ms |
TPC-DS: Total hot run time: 178994 ms |
ClickBench: Total hot run time: 27.34 s |
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
|
run buildall |
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
1 similar comment
BE Regression && UT Coverage ReportIncrement line coverage Increment coverage report
|
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
This PR refine predicates generation. Previously, predicates are generated on ScanOperator for OlapTable and push down to TabletReader. However, for other types of tables, Exprs are just push down simply and converted to predicates on own file readers. This introduces complexity and overhead for us to maintain. And then, this PR makes all predicates generated on ScanOperator for all tables.
This PR refine predicates generation. Previously, predicates are generated on ScanOperator for OlapTable and push down to TabletReader. However, for other types of tables, Exprs are just push down simply and converted to predicates on own file readers. This introduces complexity and overhead for us to maintain. And then, this PR makes all predicates generated on ScanOperator for all tables.
### What problem does this PR solve? pick #57397 #58283 #58290 #58282 #58832 #58905 #58960 #59005 #59088 #59098 #59126 #59187 #59581 #59625 #59775 ### Check List (For Author) - Test <!-- At least one of them must be included. --> - [ ] Regression test - [ ] Unit Test - [ ] Manual test (add detailed scripts or steps below) - [ ] No need to test or manual test. Explain why: - [ ] This is a refactor/code format and no logic has been changed. - [ ] Previous test can cover this change. - [ ] No code files have been changed. - [ ] Other reason <!-- Add your reason? --> - Behavior changed: - [ ] No. - [ ] Yes. <!-- Explain the behavior change --> - Does this need documentation? - [ ] No. - [ ] Yes. <!-- Add document PR link here. eg: apache/doris-website#1214 --> ### Check List (For Reviewer who merge this PR) - [ ] Confirm the release note - [ ] Confirm test cases - [ ] Confirm document - [ ] Add branch pick label <!-- Add branch pick label that this PR should merge into -->
…ax filter (#60197) ### What problem does this PR solve? Problem Summary: 1. Fixed an issue where the Parquet reader's pushdown predicate row group min-max filter was ineffective due to a refactoring of the column predicate #59187. 2. Removed tablet_schema from RuntimePredicate when performing topn runtime filters, making RuntimePredicate not limited to olap scan node. 3. Removed the feature in #59053 where the Parquet reader could obtain runtime filters in real time, for the purpose of unifying the implementation of olap and file scan node logic in the future. 4. Temporarily disable the topn runtime filter for VARBINARY type, as the implementation of this type in column predicate is incomplete, affecting pr #58721.
…ax filter (#60197) ### What problem does this PR solve? Problem Summary: 1. Fixed an issue where the Parquet reader's pushdown predicate row group min-max filter was ineffective due to a refactoring of the column predicate #59187. 2. Removed tablet_schema from RuntimePredicate when performing topn runtime filters, making RuntimePredicate not limited to olap scan node. 3. Removed the feature in #59053 where the Parquet reader could obtain runtime filters in real time, for the purpose of unifying the implementation of olap and file scan node logic in the future. 4. Temporarily disable the topn runtime filter for VARBINARY type, as the implementation of this type in column predicate is incomplete, affecting pr #58721.
What problem does this PR solve?
This PR refine predicates generation. Previously, predicates are generated on ScanOperator for OlapTable and push down to TabletReader. However, for other types of tables, Exprs are just push down simply and converted to predicates on own file readers. This introduces complexity and overhead for us to maintain.
And then, this PR makes all predicates generated on ScanOperator for all tables.
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)