Interface PhysicalVisitor<RETURN,EXTRA,EXCEP extends Throwable>
- Type Parameters:
RETURN
- The class associated with the return of each visit method.EXTRA
- The class object associated with additional data required for a particular operator modification.EXCEP
- An optional exception class that can be thrown when a portion of a modification or traversal fails. Must extend Throwable. In the case where the visitor does not throw any caught exception, this can be set as RuntimeException.
- All Known Implementing Classes:
AbstractOpWrapperVisitor
,AbstractPhysicalVisitor
,ExchangeRemoverMaterializer
,Fragment.BufferedOpFinder
,IteratorValidatorInjector
,MakeFragmentsVisitor
,Materializer
,MemoryCalculator
,OperatorIdVisitor
,RuntimeFilterRouter.RuntimeFilterParallelismCollector
,SimpleParallelizer.CountRequiredFragments
,StatsCollector
,ThrottledResourceManager.QueuedResourceAllocator.BufferedOpFinder
,TraceInjector
public interface PhysicalVisitor<RETURN,EXTRA,EXCEP extends Throwable>
Visitor class designed to traversal of a operator tree. Basis for a number of operator manipulations including fragmentation and materialization.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionvisitBroadcastSender
(BroadcastSender op, EXTRA value) visitExchange
(Exchange exchange, EXTRA value) visitFilter
(Filter filter, EXTRA value) visitFlatten
(FlattenPOP flatten, EXTRA value) visitGroupScan
(GroupScan groupScan, EXTRA value) visitHashAggregate
(HashAggregate agg, EXTRA value) visitHashPartitionSender
(HashPartitionSender op, EXTRA value) visitHashPartitionSender
(HashToRandomExchange op, EXTRA value) visitIteratorValidator
(IteratorValidator op, EXTRA value) visitLateralJoin
(LateralJoinPOP lateralJoinPOP, EXTRA value) visitLimit
(Limit limit, EXTRA value) visitMergingReceiver
(MergingReceiverPOP op, EXTRA value) visitOp
(PhysicalOperator op, EXTRA value) visitProducerConsumer
(ProducerConsumer op, EXTRA value) visitProject
(Project project, EXTRA value) visitRangePartitionSender
(RangePartitionSender op, EXTRA value) visitReceiver
(Receiver receiver, EXTRA value) visitRowKeyJoin
(RowKeyJoinPOP join, EXTRA value) visitScreen
(Screen op, EXTRA value) visitSender
(Sender sender, EXTRA value) visitSetOp
(SetOp setOp, EXTRA value) visitSingleSender
(SingleSender op, EXTRA value) visitStatisticsAggregate
(StatisticsAggregate agg, EXTRA value) visitStatisticsMerge
(StatisticsMerge agg, EXTRA value) visitStore
(Store store, EXTRA value) visitStreamingAggregate
(StreamingAggregate agg, EXTRA value) visitSubScan
(SubScan subScan, EXTRA value) visitTableModify
(TableModify op, EXTRA value) visitTrace
(Trace trace, EXTRA value) visitUnion
(UnionAll union, EXTRA value) visitUnnest
(UnnestPOP unnest, EXTRA value) visitUnorderedReceiver
(UnorderedReceiver op, EXTRA value) visitUnpivot
(UnpivotMaps op, EXTRA value) visitValues
(Values op, EXTRA value) visitWindowFrame
(WindowPOP op, EXTRA value) visitWriter
(Writer op, EXTRA value)
-
Field Details
-
logger
static final org.slf4j.Logger logger
-
-
Method Details
-
visitExchange
-
visitGroupScan
-
visitSubScan
-
visitStore
-
visitFilter
-
visitUnion
-
visitSetOp
-
visitProject
-
visitTrace
-
visitSort
-
visitLimit
-
visitFlatten
-
visitSender
-
visitRowKeyJoin
-
visitReceiver
-
visitStreamingAggregate
-
visitStatisticsAggregate
-
visitStatisticsMerge
-
visitHashAggregate
-
visitWriter
-
visitUnpivot
-
visitValues
-
visitOp
-
visitHashPartitionSender
-
visitOrderedPartitionSender
-
visitUnorderedReceiver
-
visitMergingReceiver
-
visitHashPartitionSender
-
visitRangePartitionSender
-
visitBroadcastSender
-
visitScreen
-
visitSingleSender
-
visitWindowFrame
-
visitProducerConsumer
-
visitUnnest
-
visitLateralJoin
-
visitIteratorValidator
-
visitTableModify
-