public class RelMdAllPredicates extends Object implements MetadataHandler<BuiltInMetadata.AllPredicates>
This should be used to infer whether same filters are applied on a given plan by materialized view rewriting rules.
The output predicates might contain references to columns produced
by TableScan operators (RexTableInputRef). In turn, each TableScan
operator is identified uniquely by its qualified name and an identifier.
If the provider cannot infer the lineage for any of the expressions contain in any of the predicates, it will return null. Observe that this is different from the empty list of predicates, which means that there are not predicates in the (sub)plan.
| Modifier and Type | Field and Description |
|---|---|
static RelMetadataProvider |
SOURCE |
| Constructor and Description |
|---|
RelMdAllPredicates() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waithandlerMethodspublic static final RelMetadataProvider SOURCE
public MetadataDef<BuiltInMetadata.AllPredicates> getDef()
getDef in interface MetadataHandler<BuiltInMetadata.AllPredicates>public @Nullable RelOptPredicateList getAllPredicates(RelNode rel, RelMetadataQuery mq)
BuiltInMetadata.AllPredicates.getAllPredicates(),
invoked using reflection.public @Nullable RelOptPredicateList getAllPredicates(HepRelVertex rel, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(RelSubset rel, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(TableScan scan, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(Project project, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(Filter filter, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(Calc calc, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(Join join, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(Aggregate agg, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(TableModify tableModify, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(SetOp setOp, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(Sort sort, RelMetadataQuery mq)
public @Nullable RelOptPredicateList getAllPredicates(Exchange exchange, RelMetadataQuery mq)
Copyright © 2012-2022 Apache Software Foundation. All Rights Reserved.