Class AbstractBase
java.lang.Object
org.apache.drill.exec.physical.base.AbstractBase
- All Implemented Interfaces:
Iterable<PhysicalOperator>
,GraphValue<PhysicalOperator>
,PhysicalOperator
- Direct Known Subclasses:
AbstractGroupScan
,AbstractJoinPop
,AbstractMultiple
,AbstractParquetRowGroupScan
,AbstractReceiver
,AbstractSingle
,AbstractSubScan
,DrillSubScan
,DruidSubScan
,HBaseSubScan
,HiveSubScan
,HttpSubScan
,IcebergSubScan
,KafkaSubScan
,KuduSubScan
,MetadataControllerPOP
,MockSubScanPOP
,MongoSubScan
,OpenTSDBSubScan
,PhoenixSubScan
,RowKeyJoinPOP
,SplunkSubScan
,UnnestPOP
,Values
-
Field Summary
Modifier and TypeFieldDescriptionstatic long
protected long
static long
protected long
protected final String
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
accept
(GraphVisitor<PhysicalOperator> visitor) getCost()
long
long
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
isBufferedOperator
(QueryContext queryContext) Any operator that supports spilling should override this method (and return true)boolean
Describes whether or not a particular physical operator can actually be executed.void
setCost
(PrelCostEstimates cost) void
setMaxAllocation
(long maxAllocation) Any operator that supports spilling should override this methodfinal void
setOperatorId
(int id) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
Methods inherited from interface org.apache.drill.exec.physical.base.PhysicalOperator
accept, getNewWithChildren, getOperatorType
-
Field Details
-
INIT_ALLOCATION
public static long INIT_ALLOCATION -
MAX_ALLOCATION
public static long MAX_ALLOCATION -
initialAllocation
protected long initialAllocation -
maxAllocation
protected long maxAllocation -
userName
-
-
Constructor Details
-
AbstractBase
public AbstractBase() -
AbstractBase
-
AbstractBase
-
-
Method Details
-
accept
- Specified by:
accept
in interfaceGraphValue<PhysicalOperator>
-
isExecutable
public boolean isExecutable()Description copied from interface:PhysicalOperator
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.- Specified by:
isExecutable
in interfacePhysicalOperator
-
setOperatorId
public final void setOperatorId(int id) - Specified by:
setOperatorId
in interfacePhysicalOperator
-
getOperatorId
public int getOperatorId()- Specified by:
getOperatorId
in interfacePhysicalOperator
-
getSVMode
Description copied from interface:PhysicalOperator
Describes the SelectionVector Mode for the output steam from this physical op. This property is used during physical plan creating usingPhysicalPlanCreator
.- Specified by:
getSVMode
in interfacePhysicalOperator
-
getInitialAllocation
public long getInitialAllocation()- Specified by:
getInitialAllocation
in interfacePhysicalOperator
- Returns:
- The memory to preallocate for this operator
-
getCost
- Specified by:
getCost
in interfacePhysicalOperator
-
setCost
- Specified by:
setCost
in interfacePhysicalOperator
-
getMaxAllocation
public long getMaxAllocation()- Specified by:
getMaxAllocation
in interfacePhysicalOperator
- Returns:
- The maximum memory this operator can allocate
-
setMaxAllocation
public void setMaxAllocation(long maxAllocation) Any operator that supports spilling should override this method- Specified by:
setMaxAllocation
in interfacePhysicalOperator
- Parameters:
maxAllocation
- The max memory allocation to be set
-
isBufferedOperator
Any operator that supports spilling should override this method (and return true)- Specified by:
isBufferedOperator
in interfacePhysicalOperator
- Parameters:
queryContext
-- Returns:
- false
-
getUserName
Description copied from interface:PhysicalOperator
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.- Specified by:
getUserName
in interfacePhysicalOperator
-