Package | Description |
---|---|
org.apache.calcite.plan |
Defines interfaces for constructing rule-based optimizers of
relational expressions.
|
org.apache.calcite.rel.metadata |
Defines metadata interfaces and utilities for relational
expressions.
|
org.apache.calcite.rel.rules |
Provides a core set of planner rules.
|
org.apache.calcite.rex |
Provides a language for representing row-expressions.
|
org.apache.calcite.tools |
Provides utility classes.
|
Modifier and Type | Field and Description |
---|---|
private RexSimplify |
SubstitutionVisitor.simplify |
Modifier and Type | Method and Description |
---|---|
RexSimplify |
SubstitutionVisitor.UnifyRuleCall.getSimplify() |
Modifier and Type | Method and Description |
---|---|
static RexNode |
SubstitutionVisitor.splitFilter(RexSimplify simplify,
RexNode condition,
RexNode target)
Maps a condition onto a target.
|
Modifier and Type | Field and Description |
---|---|
(package private) RexSimplify |
RelMdPredicates.JoinConditionBasedPredicateInference.simplify |
Constructor and Description |
---|
JoinConditionBasedPredicateInference(Join joinRel,
RexNode leftPredicates,
RexNode rightPredicates,
RexSimplify simplify) |
Modifier and Type | Field and Description |
---|---|
private RexSimplify |
ReduceExpressionsRule.RexReplacer.simplify |
Modifier and Type | Method and Description |
---|---|
private static Pair<RexNode,RexNode> |
AbstractMaterializedViewRule.computeCompensationPredicates(RexBuilder rexBuilder,
RexSimplify simplify,
AbstractMaterializedViewRule.EquivalenceClasses sourceEC,
Pair<RexNode,RexNode> sourcePreds,
AbstractMaterializedViewRule.EquivalenceClasses targetEC,
Pair<RexNode,RexNode> targetPreds,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> sourceToTargetTableMapping)
We check whether the predicates in the source are contained in the predicates
in the target.
|
protected com.google.common.collect.Multimap<java.lang.Integer,java.lang.Integer> |
AbstractMaterializedViewRule.MaterializedViewAggregateRule.generateMapping(RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RelNode node,
RelNode target,
ImmutableBitSet positions,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> tableMapping,
AbstractMaterializedViewRule.EquivalenceClasses sourceEC,
java.util.List<RexNode> additionalExprs)
Mapping from node expressions to target expressions.
|
protected static boolean |
ReduceExpressionsRule.reduceExpressionsInternal(RelNode rel,
RexSimplify simplify,
RexUnknownAs unknownAs,
java.util.List<RexNode> expList,
RelOptPredicateList predicates) |
protected abstract RelNode |
AbstractMaterializedViewRule.rewriteQuery(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RexNode compensationColumnsEquiPred,
RexNode otherCompensationPred,
Project topProject,
RelNode node,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> viewToQueryTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses viewEC,
AbstractMaterializedViewRule.EquivalenceClasses queryEC)
If the view will be used in a union rewriting, this method is responsible for
rewriting the query branch of the union using the given compensation predicate.
|
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewJoinRule.rewriteQuery(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RexNode compensationColumnsEquiPred,
RexNode otherCompensationPred,
Project topProject,
RelNode node,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> viewToQueryTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses viewEC,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewAggregateRule.rewriteQuery(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
RexNode compensationColumnsEquiPred,
RexNode otherCompensationPred,
Project topProject,
RelNode node,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses viewEC,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
protected abstract RelNode |
AbstractMaterializedViewRule.rewriteView(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
AbstractMaterializedViewRule.MatchModality matchModality,
boolean unionRewriting,
RelNode input,
Project topProject,
RelNode node,
Project topViewProject,
RelNode viewNode,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses queryEC)
Rewrites the query using the given view query.
|
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewJoinRule.rewriteView(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
AbstractMaterializedViewRule.MatchModality matchModality,
boolean unionRewriting,
RelNode input,
Project topProject,
RelNode node,
Project topViewProject,
RelNode viewNode,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
protected RelNode |
AbstractMaterializedViewRule.MaterializedViewAggregateRule.rewriteView(RelBuilder relBuilder,
RexBuilder rexBuilder,
RexSimplify simplify,
RelMetadataQuery mq,
AbstractMaterializedViewRule.MatchModality matchModality,
boolean unionRewriting,
RelNode input,
Project topProject,
RelNode node,
Project topViewProject,
RelNode viewNode,
com.google.common.collect.BiMap<RexTableInputRef.RelTableRef,RexTableInputRef.RelTableRef> queryToViewTableMapping,
AbstractMaterializedViewRule.EquivalenceClasses queryEC) |
Constructor and Description |
---|
RexReplacer(RexSimplify simplify,
RexUnknownAs unknownAs,
java.util.List<RexNode> reducibleExps,
java.util.List<RexNode> reducedValues,
java.util.List<java.lang.Boolean> addCasts) |
Modifier and Type | Field and Description |
---|---|
private RexSimplify |
RexUtil.ExprSimplifier.simplify
Deprecated.
|
private RexSimplify |
RexProgramBuilder.simplify |
Modifier and Type | Method and Description |
---|---|
RexSimplify |
RexSimplify.withParanoid(boolean paranoid)
Returns a RexSimplify the same as this but which verifies that
the expression before and after simplification are equivalent.
|
private RexSimplify |
RexSimplify.withPredicateElimination(boolean predicateElimination)
Returns a RexSimplify the same as this but with a specified
predicateElimination value. |
RexSimplify |
RexSimplify.withPredicates(RelOptPredicateList predicates)
Returns a RexSimplify the same as this but with a specified
predicates value. |
RexSimplify |
RexSimplify.withUnknownAsFalse(boolean unknownAsFalse)
Deprecated.
Use methods with a
RexUnknownAs argument, such as
simplify(RexNode, RexUnknownAs) . |
Modifier and Type | Method and Description |
---|---|
static RexProgramBuilder |
RexProgramBuilder.create(RexBuilder rexBuilder,
RelDataType inputRowType,
java.util.List<RexNode> exprList,
java.util.List<? extends RexNode> projectList,
RexNode condition,
RelDataType outputRowType,
boolean normalize,
RexSimplify simplify)
Creates a program builder with the same contents as a program.
|
private RexSimplify.CaseBranch |
RexSimplify.generateBranch(boolean simplifyCond,
RexSimplify simplifier,
RexSimplify.CaseBranch branch)
If boolean is true, simplify cond in input branch and return new branch.
|
RexProgram |
RexProgram.normalize(RexBuilder rexBuilder,
RexSimplify simplify)
Creates a simplified/normalized copy of this program.
|
Constructor and Description |
---|
ExprSimplifier(RexSimplify simplify)
Deprecated.
|
ExprSimplifier(RexSimplify simplify,
boolean matchNullability)
Deprecated.
|
ExprSimplifier(RexSimplify simplify,
RexUnknownAs unknownAs,
boolean matchNullability)
Deprecated.
|
RexProgramBuilder(RelDataType inputRowType,
RexBuilder rexBuilder,
RexSimplify simplify)
Creates a program-builder.
|
RexProgramBuilder(RexBuilder rexBuilder,
RelDataType inputRowType,
java.util.List<RexNode> exprList,
java.lang.Iterable<? extends RexNode> projectList,
RexNode condition,
RelDataType outputRowType,
boolean normalize,
RexSimplify simplify)
Creates a program builder with the same contents as a program.
|
Modifier and Type | Field and Description |
---|---|
private RexSimplify |
RelBuilder.simplifier |
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.