Skip to content

perf: hold the filter on a scan as its residual predicate - #398

Merged
KKould merged 3 commits into
mainfrom
perf/scan-residual-predicate
Nov 2, 2026
Merged

KKould merged 3 commits into
mainfrom
perf/scan-residual-predicate

perf(scan): evaluate the scan predicate while iterating

08e47cf
Select commit
Loading
Failed to load commit list.
Codecov / codecov/project succeeded Nov 2, 2026 in 1s

93.07% (+0.05%) compared to 6a2b30a

View this Pull Request on Codecov

93.07% (+0.05%) compared to 6a2b30a

Details

Codecov Report

❌ Patch coverage is 97.87234% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 93.07%. Comparing base (6a2b30a) to head (08e47cf).

Files with missing lines Patch % Lines
src/optimizer/rule/normalization/column_pruning.rs 98.27% 1 Missing ⚠️
src/optimizer/rule/normalization/mod.rs 66.66% 1 Missing ⚠️
...ptimizer/rule/normalization/pushdown_predicates.rs 91.66% 1 Missing ⚠️
src/planner/operator/visitor.rs 66.66% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #398      +/-   ##
==========================================
+ Coverage   93.01%   93.07%   +0.05%     
==========================================
  Files         273      273              
  Lines       39012    39175     +163     
==========================================
+ Hits        36286    36461     +175     
+ Misses       2726     2714      -12     
Files with missing lines Coverage Δ
src/db.rs 95.08% <100.00%> (+0.01%) ⬆️
src/db/program.rs 92.59% <ø> (ø)
src/execution/dql/aggregate/hash_agg.rs 97.80% <100.00%> (+0.02%) ⬆️
src/execution/dql/index_scan.rs 97.27% <100.00%> (+0.02%) ⬆️
src/execution/dql/seq_scan.rs 100.00% <100.00%> (ø)
src/optimizer/plan_utils.rs 90.75% <100.00%> (+0.05%) ⬆️
src/optimizer/rule/implementation/dql/filter.rs 94.44% <100.00%> (-2.14%) ⬇️
...rc/optimizer/rule/implementation/dql/table_scan.rs 97.76% <100.00%> (+0.20%) ⬆️
src/optimizer/rule/normalization/elimination.rs 95.37% <100.00%> (+0.09%) ⬆️
src/optimizer/rule/normalization/join_reorder.rs 98.00% <ø> (ø)
... and 13 more

... and 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.