Package io.prestosql.sql.planner.plan
Class ExchangeNode
- java.lang.Object
-
- io.prestosql.sql.planner.plan.PlanNode
-
- io.prestosql.sql.planner.plan.ExchangeNode
-
@Immutable public class ExchangeNode extends PlanNode
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ExchangeNode.Scope
static class
ExchangeNode.Type
-
Constructor Summary
Constructors Constructor Description ExchangeNode(PlanNodeId id, ExchangeNode.Type type, ExchangeNode.Scope scope, PartitioningScheme partitioningScheme, List<PlanNode> sources, List<List<Symbol>> inputs, Optional<OrderingScheme> orderingScheme)
-
Method Summary
-
-
-
Constructor Detail
-
ExchangeNode
public ExchangeNode(PlanNodeId id, ExchangeNode.Type type, ExchangeNode.Scope scope, PartitioningScheme partitioningScheme, List<PlanNode> sources, List<List<Symbol>> inputs, Optional<OrderingScheme> orderingScheme)
-
-
Method Detail
-
partitionedExchange
public static ExchangeNode partitionedExchange(PlanNodeId id, ExchangeNode.Scope scope, PlanNode child, List<Symbol> partitioningColumns, Optional<Symbol> hashColumns)
-
partitionedExchange
public static ExchangeNode partitionedExchange(PlanNodeId id, ExchangeNode.Scope scope, PlanNode child, List<Symbol> partitioningColumns, Optional<Symbol> hashColumns, boolean replicateNullsAndAny)
-
partitionedExchange
public static ExchangeNode partitionedExchange(PlanNodeId id, ExchangeNode.Scope scope, PlanNode child, PartitioningScheme partitioningScheme)
-
replicatedExchange
public static ExchangeNode replicatedExchange(PlanNodeId id, ExchangeNode.Scope scope, PlanNode child)
-
gatheringExchange
public static ExchangeNode gatheringExchange(PlanNodeId id, ExchangeNode.Scope scope, PlanNode child)
-
roundRobinExchange
public static ExchangeNode roundRobinExchange(PlanNodeId id, ExchangeNode.Scope scope, PlanNode child)
-
mergingExchange
public static ExchangeNode mergingExchange(PlanNodeId id, ExchangeNode.Scope scope, PlanNode child, OrderingScheme orderingScheme)
-
getType
public ExchangeNode.Type getType()
-
getScope
public ExchangeNode.Scope getScope()
-
getSources
public List<PlanNode> getSources()
- Specified by:
getSources
in classPlanNode
-
getOutputSymbols
public List<Symbol> getOutputSymbols()
- Specified by:
getOutputSymbols
in classPlanNode
-
getPartitioningScheme
public PartitioningScheme getPartitioningScheme()
-
getOrderingScheme
public Optional<OrderingScheme> getOrderingScheme()
-
accept
public <R,C> R accept(PlanVisitor<R,C> visitor, C context)
-
replaceChildren
public PlanNode replaceChildren(List<PlanNode> newChildren)
- Specified by:
replaceChildren
in classPlanNode
-
-