@Internal public class InputOrderCalculator extends InputPriorityGraphGenerator
InputPriorityGraphGenerator
.
This class only calculates the input order for the given boundary nodes and will throw exception when a conflict is detected.
graph
Constructor and Description |
---|
InputOrderCalculator(org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?> root,
Set<org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?>> boundaries,
ExecEdge.DamBehavior safeDamBehavior)
Create a
InputOrderCalculator for the given ExecNode sub-graph. |
Modifier and Type | Method and Description |
---|---|
Map<org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?>,Integer> |
calculate() |
protected void |
resolveInputPriorityConflict(org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?> node,
int higherInput,
int lowerInput) |
createTopologyGraph
public InputOrderCalculator(org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?> root, Set<org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?>> boundaries, ExecEdge.DamBehavior safeDamBehavior)
InputOrderCalculator
for the given ExecNode
sub-graph.root
- the output node of the sub-graphboundaries
- the first layer of nodes on the input side of the sub-graphsafeDamBehavior
- when checking for conflicts we'll ignore the edges with ExecEdge.DamBehavior
stricter or equal than thispublic Map<org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?>,Integer> calculate()
protected void resolveInputPriorityConflict(org.apache.flink.table.planner.plan.nodes.exec.ExecNode<?,?> node, int higherInput, int lowerInput)
resolveInputPriorityConflict
in class InputPriorityGraphGenerator
Copyright © 2014–2021 The Apache Software Foundation. All rights reserved.