All Superinterfaces:
GraphValue <PhysicalOperator >
, Iterable <PhysicalOperator >
All Known Subinterfaces:
DbGroupScan
, DbSubScan
, Exchange
, FileGroupScan
, FragmentLeaf
, FragmentRoot
, GroupScan
, HasAffinity
, IndexGroupScan
, Leaf
, Receiver
, Root
, Scan
, Sender
, Store
, SubScan
, Writer
All Known Implementing Classes:
AbstractBase
, AbstractDbGroupScan
, AbstractDbSubScan
, AbstractDeMuxExchange
, AbstractExchange
, AbstractFileGroupScan
, AbstractGroupScan
, AbstractGroupScanWithMetadata
, AbstractJoinPop
, AbstractMultiple
, AbstractMuxExchange
, AbstractParquetGroupScan
, AbstractParquetRowGroupScan
, AbstractReceiver
, AbstractSender
, AbstractSingle
, AbstractStore
, AbstractSubScan
, AbstractWriter
, BroadcastExchange
, BroadcastSender
, ComplexToJson
, DeltaGroupScan
, DeltaRowGroupScan
, DirectGroupScan
, DirectSubScan
, DrillGroupScan
, DrillSubScan
, DruidGroupScan
, DruidSubScan
, EasyGroupScan
, EasySubScan
, EasyWriter
, EnumerableGroupScan
, EnumerableSubScan
, ExternalSort
, Filter
, FlattenPOP
, GoogleSheetsGroupScan
, GoogleSheetsInsertWriter
, GoogleSheetsSubScan
, GoogleSheetsWriter
, HashAggregate
, HashJoinPOP
, HashPartitionSender
, HashToMergeExchange
, HashToRandomExchange
, HBaseGroupScan
, HBaseSubScan
, HiveDrillNativeParquetRowGroupScan
, HiveDrillNativeParquetScan
, HiveScan
, HiveSubScan
, HttpGroupScan
, HttpSubScan
, IcebergGroupScan
, IcebergSubScan
, InfoSchemaGroupScan
, InfoSchemaSubScan
, IteratorValidator
, JdbcGroupScan
, JdbcInsertWriter
, JdbcSubScan
, JdbcWriter
, KafkaGroupScan
, KafkaSubScan
, KuduGroupScan
, KuduSubScan
, KuduWriter
, LateralJoinPOP
, Limit
, MergeJoinPOP
, MergingReceiverPOP
, MetadataControllerPOP
, MetadataDirectGroupScan
, MetadataHandlerPOP
, MetadataHashAggPOP
, MetadataStreamAggPOP
, MockGroupScanPOP
, MockStorePOP
, MockSubScanPOP
, MongoGroupScan
, MongoSubScan
, NestedLoopJoinPOP
, OpenTSDBGroupScan
, OpenTSDBSubScan
, OrderedMuxExchange
, OrderedPartitionExchange
, OrderedPartitionSender
, ParquetGroupScan
, ParquetRowGroupScan
, ParquetWriter
, PartitionLimit
, PhoenixGroupScan
, PhoenixSubScan
, ProducerConsumer
, Project
, RangePartitionExchange
, RangePartitionSender
, RowKeyJoinPOP
, RuntimeFilterPOP
, SchemalessScan
, Screen
, SelectionVectorRemover
, SetOp
, SingleMergeExchange
, SingleSender
, Sort
, SplunkGroupScan
, SplunkInsertWriter
, SplunkSubScan
, SplunkWriter
, StatisticsAggregate
, StatisticsMerge
, StreamingAggregate
, SystemTableScan
, TableModify
, TopN
, Trace
, UnionAll
, UnionExchange
, UnnestPOP
, UnorderedDeMuxExchange
, UnorderedMuxExchange
, UnorderedReceiver
, UnpivotMaps
, Values
, WindowPOP
Method Summary
All Methods Instance Methods Abstract Methods
Provides capability to build a set of output based on traversing a query graph tree.
long
long
Regenerate with this node with a new set of children.
int
Describes the SelectionVector Mode for the output steam from this physical op.
Name of the user whom to impersonate while setting up the implementation (RecordBatch) of this
PhysicalOperator.
boolean
boolean
Describes whether or not a particular physical operator can actually be executed.
void
void
void
Methods inherited from interface org.apache.drill.common.graph.GraphValue
accept
Method Details
isExecutable
boolean isExecutable ()
Describes whether or not a particular physical operator can actually be executed. Most physical operators can be
executed. However, Exchange nodes cannot be executed. In order to be executed, they must be converted into their
Exec sub components.
getSVMode
Describes the SelectionVector Mode for the output steam from this physical op.
This property is used during physical plan creating using
PhysicalPlanCreator
.
accept
Provides capability to build a set of output based on traversing a query graph tree.
Parameters:
physicalVisitor
-
Throws:
E extends Throwable
getNewWithChildren
Regenerate with this node with a new set of children. This is used in the case of materialization or optimization.
Parameters:
children
-
Throws:
ExecutionSetupException
getInitialAllocation
long getInitialAllocation ()
Returns:
The memory to preallocate for this operator
getMaxAllocation
long getMaxAllocation ()
Returns:
The maximum memory this operator can allocate
setMaxAllocation
void setMaxAllocation (long maxAllocation)
Parameters:
maxAllocation
- The max memory allocation to be set
isBufferedOperator
Parameters:
queryContext
-
Returns:
True iff this operator manages its memory (including disk spilling)
getOperatorId
int getOperatorId ()
setOperatorId
void setOperatorId (int id)
getUserName
Name of the user whom to impersonate while setting up the implementation (RecordBatch) of this
PhysicalOperator. Default value is "null" in which case we impersonate as user who launched the query.