public static class DataStreamRetractionRules.SetUpdatesAsRetractionRule
extends org.apache.calcite.plan.RelOptRule
DataStreamRel
nodes that need to sent out update changes with
retraction messages.Constructor and Description |
---|
SetUpdatesAsRetractionRule() |
Modifier and Type | Method and Description |
---|---|
boolean |
needsUpdatesAsRetraction(org.apache.calcite.rel.RelNode node)
Checks if a
RelNode requires that update changes are sent with retraction
messages. |
void |
onMatch(org.apache.calcite.plan.RelOptRuleCall call)
Annotates the children of a parent node with the information that they need to forward
update and delete modifications as retraction messages.
|
org.apache.calcite.rel.RelNode |
setUpdatesAsRetraction(org.apache.calcite.rel.RelNode relNode)
Annotates a
RelNode to send out update changes with retraction messages. |
public boolean needsUpdatesAsRetraction(org.apache.calcite.rel.RelNode node)
RelNode
requires that update changes are sent with retraction
messages.node
- (undocumented)public org.apache.calcite.rel.RelNode setUpdatesAsRetraction(org.apache.calcite.rel.RelNode relNode)
RelNode
to send out update changes with retraction messages.relNode
- (undocumented)public void onMatch(org.apache.calcite.plan.RelOptRuleCall call)
A child needs to produce retraction messages, if
1. its parent requires retraction messages by itself because it is a certain type
of operator, such as a DataStreamGroupAggregate
or DataStreamOverAggregate
, or
2. its parent requires retraction because its own parent requires retraction
(transitive requirement).
onMatch
in class org.apache.calcite.plan.RelOptRule
call
- (undocumented)Copyright © 2014–2018 The Apache Software Foundation. All rights reserved.