Expand description
PushDownFilter applies filters as early as possible
Structsยง
- Column
Checker ๐ - Evaluates the columns referenced in the given expression to see if they refer only to the left or right columns
- Inferred
Predicates ๐ - Inferred predicates collector. When the JoinType is not Inner, we need to detect whether the inferred predicate can strictly filter out NULL, otherwise ignore it. e.g.
- Push
Down Filter - Optimizer rule for pushing (moving) filter expressions down in a plan so they are applied as early as possible.
Functionsยง
- can_
evaluate_ ๐as_ join_ condition - Determine whether the predicate can evaluate as the join conditions
- contain ๐
- check whether the expression uses the columns in
check_map. - extract_
or_ ๐clause - extract qual from OR sub-clause.
- extract_
or_ ๐clauses_ for_ join - examine OR clause to see if any useful clauses can be extracted and push down. extract at least one qual from each sub clauses of OR clause, then form the quals to new OR clause as predicate.
- infer_
join_ ๐predicates - Extracts any equi-join join predicates from the given filter expressions.
- infer_
join_ ๐predicates_ from_ on_ filters - Infer predicates from the join filter.
- infer_
join_ ๐predicates_ from_ predicates - Infer predicates from the pushed down predicates.
- infer_
join_ ๐predicates_ impl - Infer predicates from the given predicates.
- insert_
below ๐ - Replace the existing child of the single input node with
new_child. - lr_
is_ ๐preserved - For a given JOIN type, determine whether each input of the join is preserved
for post-join (
WHEREclause) filters. - make_
filter - Creates a new LogicalPlan::Filter node.
- on_
lr_ ๐is_ preserved - For a given JOIN type, determine whether each input of the join is preserved
for the join condition (
ONclause filters). - push_
down_ ๐all_ join - push down join/cross-join
- push_
down_ ๐join - replace_
cols_ by_ name - replaces columns by its name on the projection.
- rewrite_
projection ๐ - Attempts to push
predicateinto aFilterExecbelow `projection - schema_
columns ๐ - Returns all columns in the schema