Class IteratorValidatorInjector
java.lang.Object
org.apache.drill.exec.physical.base.AbstractPhysicalVisitor<PhysicalOperator,FragmentContext,ExecutionSetupException>
org.apache.drill.exec.physical.impl.validate.IteratorValidatorInjector
- All Implemented Interfaces:
PhysicalVisitor<PhysicalOperator,
FragmentContext, ExecutionSetupException>
public class IteratorValidatorInjector
extends AbstractPhysicalVisitor<PhysicalOperator,FragmentContext,ExecutionSetupException>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic FragmentRoot
rewritePlanWithIteratorValidator
(FragmentContext context, FragmentRoot root) visitOp
(PhysicalOperator op, FragmentContext context) Traverse the physical plan and inject the IteratorValidator operator after every operator.Methods inherited from class org.apache.drill.exec.physical.base.AbstractPhysicalVisitor
visitBroadcastSender, visitChildren, visitExchange, visitFilter, visitFlatten, visitGroupScan, visitHashAggregate, visitHashPartitionSender, visitHashPartitionSender, visitIteratorValidator, visitLateralJoin, visitLimit, visitMergingReceiver, visitOrderedPartitionSender, visitProducerConsumer, visitProject, visitRangePartitionSender, visitReceiver, visitRowKeyJoin, visitScreen, visitSender, visitSetOp, visitSingleSender, visitSort, visitStatisticsAggregate, visitStatisticsMerge, visitStore, visitStreamingAggregate, visitSubScan, visitTableModify, visitTrace, visitUnion, visitUnnest, visitUnorderedReceiver, visitUnpivot, visitValues, visitWindowFrame, visitWriter
-
Constructor Details
-
IteratorValidatorInjector
public IteratorValidatorInjector() -
IteratorValidatorInjector
public IteratorValidatorInjector(boolean repeatablePipeline)
-
-
Method Details
-
rewritePlanWithIteratorValidator
public static FragmentRoot rewritePlanWithIteratorValidator(FragmentContext context, FragmentRoot root) throws ExecutionSetupException - Throws:
ExecutionSetupException
-
visitOp
public PhysicalOperator visitOp(PhysicalOperator op, FragmentContext context) throws ExecutionSetupException Traverse the physical plan and inject the IteratorValidator operator after every operator.- Specified by:
visitOp
in interfacePhysicalVisitor<PhysicalOperator,
FragmentContext, ExecutionSetupException> - Overrides:
visitOp
in classAbstractPhysicalVisitor<PhysicalOperator,
FragmentContext, ExecutionSetupException> - Parameters:
op
- Physical operator under which the IteratorValidator operator will be injectedcontext
- Fragment context- Returns:
- same physical operator as passed in, but its child will be a IteratorValidator operator whose child will be the original child of this operator
- Throws:
ExecutionSetupException
-