Class InputPriorityConflictResolver
java.lang.Object
org.apache.flink.table.planner.plan.nodes.exec.processor.utils.InputPriorityGraphGenerator
org.apache.flink.table.planner.plan.nodes.exec.processor.utils.InputPriorityConflictResolver
Subclass of the
InputPriorityGraphGenerator.
This class resolve conflicts by inserting a BatchExecExchange into the conflicting
input.
-
Field Summary
Fields inherited from class org.apache.flink.table.planner.plan.nodes.exec.processor.utils.InputPriorityGraphGenerator
graph -
Constructor Summary
ConstructorsConstructorDescriptionInputPriorityConflictResolver(List<ExecNode<?>> roots, InputProperty.DamBehavior safeDamBehavior, org.apache.flink.streaming.api.transformations.StreamExchangeMode exchangeMode, org.apache.flink.configuration.ReadableConfig tableConfig) Create aInputPriorityConflictResolverfor the givenExecNodegraph. -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected voidresolveInputPriorityConflict(ExecNode<?> node, int higherInput, int lowerInput) Methods inherited from class org.apache.flink.table.planner.plan.nodes.exec.processor.utils.InputPriorityGraphGenerator
createTopologyGraph
-
Constructor Details
-
InputPriorityConflictResolver
public InputPriorityConflictResolver(List<ExecNode<?>> roots, InputProperty.DamBehavior safeDamBehavior, org.apache.flink.streaming.api.transformations.StreamExchangeMode exchangeMode, org.apache.flink.configuration.ReadableConfig tableConfig) Create aInputPriorityConflictResolverfor the givenExecNodegraph.- Parameters:
roots- the first layer of nodes on the output side of the graphsafeDamBehavior- when checking for conflicts we'll ignore the edges withInputProperty.DamBehaviorstricter or equal than thisexchangeMode- when a conflict occurs we'll insert anBatchExecExchangenode with this exchange mode to resolve conflict
-
-
Method Details
-
detectAndResolve
public void detectAndResolve() -
resolveInputPriorityConflict
- Specified by:
resolveInputPriorityConflictin classInputPriorityGraphGenerator
-