| Class | Description |
|---|---|
| AsyncCalcSplitRule |
Defines split rules for async calc nodes.
|
| AsyncCalcSplitRule.AsyncCalcSplitNestedRule |
Splits nested call <- asyncCall chains so that nothing is immediately waiting on an async
call in a single calc.
|
| AsyncCalcSplitRule.AsyncCalcSplitOnePerCalcRule |
Splits async calls if there are multiple across projections, so that there's one per calc.
|
| AsyncCalcSplitRule.AsyncCalcSplitOnePerCalcRule.State |
State object used to keep track of whether a match has been found yet.
|
| AsyncCalcSplitRule.AsyncRemoteCalcCallFinder |
An Async implementation of
RemoteCalcCallFinder which finds uses of AsyncScalarFunction. |
| CalcPythonCorrelateTransposeRule |
Rule will transpose the conditions after the Python correlate node if the join type is inner
join.
|
| ConstantRankNumberColumnRemoveRule |
Planner rule that removes the output column of rank number iff there is an equality condition for
the rank column.
|
| EnumerableToLogicalTableScan |
Rule that converts an EnumerableTableScan into a LogicalTableScan.
|
| EventTimeTemporalJoinRewriteRule |
Traverses an event time temporal table join
RelNode tree and update the right child to
set FlinkLogicalTableSourceScan's eventTimeSnapshot property to true which will prevent
it generating a new StreamPhysicalChangelogNormalize later. |
| FlinkAggregateExpandDistinctAggregatesRule |
Planner rule that expands distinct aggregates (such as
COUNT(DISTINCT x)) from a Aggregate. |
| FlinkAggregateJoinTransposeRule |
Planner rule that pushes an
Aggregate past a Join. |
| FlinkAggregateProjectMergeRule |
Extends calcite's AggregateProjectMergeRule, modification: consider the timeAttribute field when
analyzing interesting fields for the LogicalWindowAggregate node while normal Aggregate node
needn't.
|
| FlinkAggregateRemoveRule |
Planner rule that removes a
Aggregate if its aggregate
functions are SUM, MIN, MAX, AUXILIARY_GROUP with no filterArgs, and the underlying relational
expression is already distinct. |
| FlinkBushyJoinReorderRule |
Flink bushy join reorder rule, which will convert
MultiJoin to a bushy join tree. |
| FlinkCalcMergeRule |
Planner rule that merges a
Calc onto a Calc. |
| FlinkFilterCalcMergeRule |
Extends calcite's FilterCalcMergeRule, modification: only merge the two neighbouring
Filter and Calc if each non-deterministic RexNode of bottom Calc should
appear at most once in the implicit project list and condition of top Filter. |
| FlinkFilterJoinRule<C extends FlinkFilterJoinRule.Config> |
Planner rule that pushes filters above and within a join node into the join node and/or its
children nodes.
|
| FlinkFilterJoinRule.FlinkFilterIntoJoinRule |
Rule that tries to push filter expressions into a join condition and into the inputs of the
join.
|
| FlinkFilterJoinRule.FlinkJoinConditionPushRule |
Rule that pushes parts of the join condition to its inputs.
|
| FlinkFilterProjectTransposeRule |
Extends calcite's FilterProjectTransposeRule for streaming scenario, modification: does not
transpose the top filter references field which generated by non-deterministic function.
|
| FlinkJoinPushExpressionsRule |
Planner rule that pushes down expressions in "equal" join condition.
|
| FlinkJoinReorderRule |
Flink join reorder rule, which can change the join order of input relNode tree.
|
| FlinkJoinToMultiJoinRule |
Flink Planner rule to flatten a tree of
LogicalJoins into a single MultiJoin with
N inputs. |
| FlinkLimit0RemoveRule |
Planner rule that rewrites `limit 0` to empty
Values. |
| FlinkLogicalCalcRemoveRule |
Rule to remove trivial
FlinkLogicalCalc. |
| FlinkProjectCalcMergeRule |
Extends calcite's ProjectMergeRule, modification: only merge the two neighbouring
Project
and Calc if each non-deterministic RexNode of bottom Calc should appear
at most once in the project list of top Project. |
| FlinkProjectJoinTransposeRule |
Planner rule that pushes a
Project past a Join by splitting the projection into a projection on top of each
child of the join. |
| FlinkProjectMergeRule |
Extends calcite's ProjectMergeRule, modification: only merge the two neighbouring
Projects if each non-deterministic RexNode of bottom Project should appear at
most once in the project list of top Project. |
| FlinkSemiAntiJoinFilterTransposeRule |
Planner rule that pushes semi-join down in a tree past a
Filter. |
| FlinkSemiAntiJoinJoinTransposeRule |
Planner rule that pushes a
org.apache.calcite.rel.core.SemiJoin down in a tree past a
Join in order to trigger other rules that will convert SemiJoins. |
| FlinkSemiAntiJoinProjectTransposeRule |
Planner rule that pushes a
org.apache.calcite.rel.core.SemiJoin down in a tree past a
Project. |
| ImmutableConstantRankNumberColumnRemoveRule |
ImmutableConstantRankNumberColumnRemoveRule contains immutable implementation classes generated from
abstract value types defined as nested inside ConstantRankNumberColumnRemoveRule. |
| ImmutableConstantRankNumberColumnRemoveRule.ConstantRankNumberColumnRemoveRuleConfig |
Immutable implementation of
ConstantRankNumberColumnRemoveRule.ConstantRankNumberColumnRemoveRuleConfig. |
| ImmutableConstantRankNumberColumnRemoveRule.ConstantRankNumberColumnRemoveRuleConfig.Builder |
Builds instances of type
ConstantRankNumberColumnRemoveRuleConfig. |
| ImmutableEnumerableToLogicalTableScan |
ImmutableEnumerableToLogicalTableScan contains immutable implementation classes generated from
abstract value types defined as nested inside EnumerableToLogicalTableScan. |
| ImmutableEnumerableToLogicalTableScan.EnumerableToLogicalTableScanConfig |
Immutable implementation of
EnumerableToLogicalTableScan.EnumerableToLogicalTableScanConfig. |
| ImmutableEnumerableToLogicalTableScan.EnumerableToLogicalTableScanConfig.Builder |
Builds instances of type
EnumerableToLogicalTableScanConfig. |
| ImmutableEventTimeTemporalJoinRewriteRule |
ImmutableEventTimeTemporalJoinRewriteRule contains immutable implementation classes generated from
abstract value types defined as nested inside EventTimeTemporalJoinRewriteRule. |
| ImmutableEventTimeTemporalJoinRewriteRule.Config |
Immutable implementation of
EventTimeTemporalJoinRewriteRule.Config. |
| ImmutableEventTimeTemporalJoinRewriteRule.Config.Builder |
Builds instances of type
Config. |
| ImmutableFlinkBushyJoinReorderRule |
ImmutableFlinkBushyJoinReorderRule contains immutable implementation classes generated from
abstract value types defined as nested inside FlinkBushyJoinReorderRule. |
| ImmutableFlinkBushyJoinReorderRule.Config |
Immutable implementation of
FlinkBushyJoinReorderRule.Config. |
| ImmutableFlinkBushyJoinReorderRule.Config.Builder |
Builds instances of type
Config. |
| ImmutableFlinkCalcMergeRule |
ImmutableFlinkCalcMergeRule contains immutable implementation classes generated from
abstract value types defined as nested inside FlinkCalcMergeRule. |
| ImmutableFlinkCalcMergeRule.FlinkCalcMergeRuleConfig |
Immutable implementation of
FlinkCalcMergeRule.FlinkCalcMergeRuleConfig. |
| ImmutableFlinkCalcMergeRule.FlinkCalcMergeRuleConfig.Builder |
Builds instances of type
FlinkCalcMergeRuleConfig. |
| ImmutableFlinkFilterIntoJoinRuleConfig |
Immutable implementation of
FlinkFilterJoinRule.FlinkFilterIntoJoinRule.FlinkFilterIntoJoinRuleConfig. |
| ImmutableFlinkFilterIntoJoinRuleConfig.Builder |
Builds instances of type
ImmutableFlinkFilterIntoJoinRuleConfig. |
| ImmutableFlinkFilterJoinRuleConfig |
Immutable implementation of
FlinkFilterJoinRule.FlinkJoinConditionPushRule.FlinkFilterJoinRuleConfig. |
| ImmutableFlinkFilterJoinRuleConfig.Builder |
Builds instances of type
ImmutableFlinkFilterJoinRuleConfig. |
| ImmutableFlinkJoinReorderRule |
ImmutableFlinkJoinReorderRule contains immutable implementation classes generated from
abstract value types defined as nested inside FlinkJoinReorderRule. |
| ImmutableFlinkJoinReorderRule.Config |
Immutable implementation of
FlinkJoinReorderRule.Config. |
| ImmutableFlinkJoinReorderRule.Config.Builder |
Builds instances of type
Config. |
| ImmutableFlinkJoinToMultiJoinRule |
ImmutableFlinkJoinToMultiJoinRule contains immutable implementation classes generated from
abstract value types defined as nested inside FlinkJoinToMultiJoinRule. |
| ImmutableFlinkJoinToMultiJoinRule.Config |
Immutable implementation of
FlinkJoinToMultiJoinRule.Config. |
| ImmutableFlinkJoinToMultiJoinRule.Config.Builder |
Builds instances of type
Config. |
| ImmutableFlinkLimit0RemoveRule |
ImmutableFlinkLimit0RemoveRule contains immutable implementation classes generated from
abstract value types defined as nested inside FlinkLimit0RemoveRule. |
| ImmutableFlinkLimit0RemoveRule.FlinkLimit0RemoveRuleConfig |
Immutable implementation of
FlinkLimit0RemoveRule.FlinkLimit0RemoveRuleConfig. |
| ImmutableFlinkLimit0RemoveRule.FlinkLimit0RemoveRuleConfig.Builder |
Builds instances of type
FlinkLimit0RemoveRuleConfig. |
| ImmutableJoinTableFunctionScanToCorrelateRule |
ImmutableJoinTableFunctionScanToCorrelateRule contains immutable implementation classes generated from
abstract value types defined as nested inside JoinTableFunctionScanToCorrelateRule. |
| ImmutableJoinTableFunctionScanToCorrelateRule.Config |
Immutable implementation of
JoinTableFunctionScanToCorrelateRule.Config. |
| ImmutableJoinTableFunctionScanToCorrelateRule.Config.Builder |
Builds instances of type
Config. |
| ImmutableLogicalUnnestRule |
ImmutableLogicalUnnestRule contains immutable implementation classes generated from
abstract value types defined as nested inside LogicalUnnestRule. |
| ImmutableLogicalUnnestRule.LogicalUnnestRuleConfig |
Immutable implementation of
LogicalUnnestRule.LogicalUnnestRuleConfig. |
| ImmutableLogicalUnnestRule.LogicalUnnestRuleConfig.Builder |
Builds instances of type
LogicalUnnestRuleConfig. |
| ImmutableProjectSnapshotTransposeRule |
ImmutableProjectSnapshotTransposeRule contains immutable implementation classes generated from
abstract value types defined as nested inside ProjectSnapshotTransposeRule. |
| ImmutableProjectSnapshotTransposeRule.Config |
Immutable implementation of
ProjectSnapshotTransposeRule.Config. |
| ImmutableProjectSnapshotTransposeRule.Config.Builder |
Builds instances of type
Config. |
| ImmutablePushFilterIntoLegacyTableSourceScanRule |
ImmutablePushFilterIntoLegacyTableSourceScanRule contains immutable implementation classes generated from
abstract value types defined as nested inside PushFilterIntoLegacyTableSourceScanRule. |
| ImmutablePushFilterIntoLegacyTableSourceScanRule.PushFilterIntoLegacyTableSourceScanRuleConfig |
Immutable implementation of
PushFilterIntoLegacyTableSourceScanRule.PushFilterIntoLegacyTableSourceScanRuleConfig. |
| ImmutablePushFilterIntoLegacyTableSourceScanRule.PushFilterIntoLegacyTableSourceScanRuleConfig.Builder |
Builds instances of type
PushFilterIntoLegacyTableSourceScanRuleConfig. |
| ImmutablePushProjectIntoTableSourceScanRule |
ImmutablePushProjectIntoTableSourceScanRule contains immutable implementation classes generated from
abstract value types defined as nested inside PushProjectIntoTableSourceScanRule. |
| ImmutablePushProjectIntoTableSourceScanRule.Config |
Immutable implementation of
PushProjectIntoTableSourceScanRule.Config. |
| ImmutablePushProjectIntoTableSourceScanRule.Config.Builder |
Builds instances of type
Config. |
| ImmutableRemoveUnreachableCoalesceArgumentsRule |
ImmutableRemoveUnreachableCoalesceArgumentsRule contains immutable implementation classes generated from
abstract value types defined as nested inside RemoveUnreachableCoalesceArgumentsRule. |
| ImmutableRemoveUnreachableCoalesceArgumentsRule.Config |
Immutable implementation of
RemoveUnreachableCoalesceArgumentsRule.Config. |
| ImmutableRemoveUnreachableCoalesceArgumentsRule.Config.Builder |
Builds instances of type
Config. |
| ImmutableReplaceIntersectWithSemiJoinRule |
ImmutableReplaceIntersectWithSemiJoinRule contains immutable implementation classes generated from
abstract value types defined as nested inside ReplaceIntersectWithSemiJoinRule. |
| ImmutableReplaceIntersectWithSemiJoinRule.ReplaceIntersectWithSemiJoinRuleConfig |
Immutable implementation of
ReplaceIntersectWithSemiJoinRule.ReplaceIntersectWithSemiJoinRuleConfig. |
| ImmutableReplaceIntersectWithSemiJoinRule.ReplaceIntersectWithSemiJoinRuleConfig.Builder |
Builds instances of type
ReplaceIntersectWithSemiJoinRuleConfig. |
| ImmutableReplaceMinusWithAntiJoinRule |
ImmutableReplaceMinusWithAntiJoinRule contains immutable implementation classes generated from
abstract value types defined as nested inside ReplaceMinusWithAntiJoinRule. |
| ImmutableReplaceMinusWithAntiJoinRule.ReplaceMinusWithAntiJoinRuleConfig |
Immutable implementation of
ReplaceMinusWithAntiJoinRule.ReplaceMinusWithAntiJoinRuleConfig. |
| ImmutableReplaceMinusWithAntiJoinRule.ReplaceMinusWithAntiJoinRuleConfig.Builder |
Builds instances of type
ReplaceMinusWithAntiJoinRuleConfig. |
| ImmutableRewriteMinusAllRule |
ImmutableRewriteMinusAllRule contains immutable implementation classes generated from
abstract value types defined as nested inside RewriteMinusAllRule. |
| ImmutableRewriteMinusAllRule.RewriteMinusAllRuleConfig |
Immutable implementation of
RewriteMinusAllRule.RewriteMinusAllRuleConfig. |
| ImmutableRewriteMinusAllRule.RewriteMinusAllRuleConfig.Builder |
Builds instances of type
RewriteMinusAllRuleConfig. |
| ImmutableUncollectToTableFunctionScanRule |
ImmutableUncollectToTableFunctionScanRule contains immutable implementation classes generated from
abstract value types defined as nested inside UncollectToTableFunctionScanRule. |
| ImmutableUncollectToTableFunctionScanRule.UncollectToTableFunctionScanRuleConfig |
Immutable implementation of
UncollectToTableFunctionScanRule.UncollectToTableFunctionScanRuleConfig. |
| ImmutableUncollectToTableFunctionScanRule.UncollectToTableFunctionScanRuleConfig.Builder |
Builds instances of type
UncollectToTableFunctionScanRuleConfig. |
| ImmutableWrapJsonAggFunctionArgumentsRule |
ImmutableWrapJsonAggFunctionArgumentsRule contains immutable implementation classes generated from
abstract value types defined as nested inside WrapJsonAggFunctionArgumentsRule. |
| ImmutableWrapJsonAggFunctionArgumentsRule.Config |
Immutable implementation of
WrapJsonAggFunctionArgumentsRule.Config. |
| ImmutableWrapJsonAggFunctionArgumentsRule.Config.Builder |
Builds instances of type
Config. |
| JoinTableFunctionScanToCorrelateRule |
Rule that rewrites
Join on TableFunctionScan to Correlate. |
| LogicalUnnestRule |
Planner rule that rewrites UNNEST to explode function.
|
| ProjectSnapshotTransposeRule |
Transpose
LogicalProject past into LogicalSnapshot. |
| ProjectWatermarkAssignerTransposeRule |
Transpose between the
LogicalWatermarkAssigner and LogicalProject. |
| ProjectWindowTableFunctionTransposeRule |
Planner rule that pushes a
LogicalProject into a LogicalTableFunctionScan which
contains a Window table function call by splitting the projection into a projection on top of
child of the TableFunctionScan. |
| PushFilterInCalcIntoTableSourceScanRule |
Pushes a filter condition from the
FlinkLogicalCalc and into a FlinkLogicalTableSourceScan. |
| PushFilterIntoLegacyTableSourceScanRule |
Planner rule that tries to push a filter into a
FilterableTableSource. |
| PushFilterIntoSourceScanRuleBase |
Base class for rules that push down filters into table scan.
|
| PushFilterIntoTableSourceScanRule |
Planner rule that tries to push a filter into a
LogicalTableScan, which table is a TableSourceTable. |
| PushLimitIntoTableSourceScanRule |
Planner rule that tries to push limit into a
FlinkLogicalTableSourceScan, which table is
a TableSourceTable. |
| PushPartitionIntoTableSourceScanRule |
Planner rule that tries to push partition evaluated by filter condition into a
LogicalTableScan. |
| PushProjectIntoTableSourceScanRule |
Pushes a
LogicalProject into a LogicalTableScan. |
| PushWatermarkIntoTableSourceScanAcrossCalcRule |
Rule to push the
FlinkLogicalWatermarkAssigner across the FlinkLogicalCalc to the
FlinkLogicalTableSourceScan. |
| PushWatermarkIntoTableSourceScanRule |
Rule to push the
FlinkLogicalWatermarkAssigner into the FlinkLogicalTableSourceScan. |
| PushWatermarkIntoTableSourceScanRuleBase |
Base rule for interface
SupportsWatermarkPushDown and SupportsSourceWatermark. |
| PythonCorrelateSplitRule |
Rule will split the Python
FlinkLogicalTableFunctionScan with Java calls or the Java
FlinkLogicalTableFunctionScan with Python calls into a FlinkLogicalCalc which
will be the left input of the new FlinkLogicalCorrelate and a new FlinkLogicalTableFunctionScan. |
| PythonMapMergeRule |
Rule will merge Python
FlinkLogicalCalc used in Map operation, Flatten FlinkLogicalCalc and Python FlinkLogicalCalc used in Map operation together. |
| PythonMapRenameRule |
Rule which renames the field names of the Flatten
FlinkLogicalCalc which is right after a
FlinkLogicalCalc representing a Python Map operation to the output names of the map
function. |
| RedundantRankNumberColumnRemoveRule |
Planner rule that removes the output column of rank number iff the rank number column is not used
by successor calc.
|
| RemoveUnreachableCoalesceArgumentsRule |
Removes unreachable
BuiltInFunctionDefinitions.COALESCE arguments. |
| ReplaceIntersectWithSemiJoinRule |
Planner rule that replaces distinct
Intersect with a distinct Aggregate on a SEMI
Join. |
| ReplaceMinusWithAntiJoinRule |
Planner rule that replaces distinct
Minus (SQL keyword:
EXCEPT) with a distinct Aggregate on an ANTI Join. |
| RewriteMinusAllRule |
Replaces logical
Minus operator using a combination of union all, aggregate and table
function. |
| SubQueryDecorrelator |
SubQueryDecorrelator finds all correlated expressions in a SubQuery, and gets an equivalent
non-correlated relational expression tree and correlation conditions.
|
| SubQueryDecorrelator.Result |
Result describing the relational expression after decorrelation and where to find the
equivalent non-correlated expressions and correlated conditions.
|
| SubQueryDecorrelator.SubQueryRelDecorrelator |
Pull out all correlation conditions from a given subquery to top level, and rebuild the
subquery rel tree without correlation conditions.
|
| UncollectToTableFunctionScanRule |
Planner rule that converts
Uncollect values to TableFunctionScan. |
| WindowAggregateReduceFunctionsRule |
Rule to convert complex aggregation functions into simpler ones.
|
| WrapJsonAggFunctionArgumentsRule |
Transforms JSON aggregation functions by wrapping operands into
BuiltInFunctionDefinitions.JSON_STRING. |
Copyright © 2014–2025 The Apache Software Foundation. All rights reserved.