@Value.Enclosing public class EventTimeTemporalJoinRewriteRule extends org.apache.calcite.plan.RelRule<EventTimeTemporalJoinRewriteRule.Config>
RelNode
tree and update the right child to
set FlinkLogicalTableSourceScan
's eventTimeSnapshot property to true which will prevent
it generating a new StreamPhysicalChangelogNormalize later.
the match patterns are as following(8 variants, the three `Calc` nodes are all optional):
Join (event time temporal)
/ \
RelNode [Calc]
\
Snapshot
\
[Calc]
\
WatermarkAssigner
\
[Calc]
\
TableScan
Note: This rule can only be used in a separate HepProgram
after `LOGICAL_REWRITE` rule sets are applied for now.
Modifier and Type | Class and Description |
---|---|
static interface |
EventTimeTemporalJoinRewriteRule.Config
Configuration for
EventTimeTemporalJoinRewriteRule . |
org.apache.calcite.plan.RelRule.Done, org.apache.calcite.plan.RelRule.MatchHandler<R extends org.apache.calcite.plan.RelOptRule>, org.apache.calcite.plan.RelRule.OperandBuilder, org.apache.calcite.plan.RelRule.OperandDetailBuilder<R extends org.apache.calcite.rel.RelNode>, org.apache.calcite.plan.RelRule.OperandTransform
Modifier and Type | Field and Description |
---|---|
static org.apache.calcite.tools.RuleSet |
EVENT_TIME_TEMPORAL_JOIN_REWRITE_RULES |
Constructor and Description |
---|
EventTimeTemporalJoinRewriteRule(EventTimeTemporalJoinRewriteRule.Config config) |
Modifier and Type | Method and Description |
---|---|
boolean |
matches(org.apache.calcite.plan.RelOptRuleCall call) |
void |
onMatch(org.apache.calcite.plan.RelOptRuleCall call) |
any, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, none, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unordered
public static final org.apache.calcite.tools.RuleSet EVENT_TIME_TEMPORAL_JOIN_REWRITE_RULES
public EventTimeTemporalJoinRewriteRule(EventTimeTemporalJoinRewriteRule.Config config)
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.