| 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.
|
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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. |
| 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.
|
| 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. |
| 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. |
| 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.
|
| WrapJsonAggFunctionArgumentsRule |
Transforms JSON aggregation functions by wrapping operands into
BuiltInFunctionDefinitions.JSON_STRING. |
Copyright © 2014–2025 The Apache Software Foundation. All rights reserved.