Class RowKeyJoinBatch
java.lang.Object
org.apache.drill.exec.record.AbstractRecordBatch<RowKeyJoinPOP>
org.apache.drill.exec.physical.impl.join.RowKeyJoinBatch
- All Implemented Interfaces:
AutoCloseable,Iterable<VectorWrapper<?>>,RowKeyJoin,CloseableRecordBatch,RecordBatch,VectorAccessible
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.drill.exec.record.AbstractRecordBatch
AbstractRecordBatch.BatchStateNested classes/interfaces inherited from interface org.apache.drill.exec.record.RecordBatch
RecordBatch.IterOutcomeNested classes/interfaces inherited from interface org.apache.drill.exec.physical.impl.join.RowKeyJoin
RowKeyJoin.RowKeyJoinState -
Field Summary
Fields inherited from class org.apache.drill.exec.record.AbstractRecordBatch
batchStatsContext, container, context, oContext, popConfig, state, stats, unionTypeEnabledFields inherited from interface org.apache.drill.exec.record.RecordBatch
MAX_BATCH_ROW_COUNT -
Constructor Summary
ConstructorsConstructorDescriptionRowKeyJoinBatch(RowKeyJoinPOP config, FragmentContext context, RecordBatch left, RecordBatch right) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected voidvoidclose()voiddump()Perform dump of this batch's state to logs.Get the current BatchState (this is useful when performing row key join)intGet the number of records.Get the current RowKeyJoinState.booleanIs the next batch of row keys ready to be returnedorg.apache.commons.lang3.tuple.Pair<ValueVector, Integer> Get the next batch of row keysvoidsetBatchState(AbstractRecordBatch.BatchState newState) Set the BatchState (this is useful when performing row key join)voidsetRowKeyJoinState(RowKeyJoin.RowKeyJoinState newState) Set the RowKeyJoinState (this is useful for maintaining state for row key join algorithm)Methods inherited from class org.apache.drill.exec.record.AbstractRecordBatch
cancel, checkContinue, getContainer, getContext, getOutgoingContainer, getPopConfig, getRecordBatchStatsContext, getSchema, getValueAccessorById, getValueVectorId, getWritableBatch, isRecordBatchStatsLoggingEnabled, iterator, next, next, next, schemaChangeException, schemaChangeExceptionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
RowKeyJoinBatch
public RowKeyJoinBatch(RowKeyJoinPOP config, FragmentContext context, RecordBatch left, RecordBatch right) throws OutOfMemoryException - Throws:
OutOfMemoryException
-
-
Method Details
-
getRecordCount
public int getRecordCount()Description copied from interface:VectorAccessibleGet the number of records.- Specified by:
getRecordCountin interfaceVectorAccessible- Returns:
- number of records
-
getSelectionVector2
- Specified by:
getSelectionVector2in interfaceVectorAccessible- Overrides:
getSelectionVector2in classAbstractRecordBatch<RowKeyJoinPOP>
-
getSelectionVector4
- Specified by:
getSelectionVector4in interfaceVectorAccessible- Overrides:
getSelectionVector4in classAbstractRecordBatch<RowKeyJoinPOP>
-
buildSchema
protected void buildSchema()- Overrides:
buildSchemain classAbstractRecordBatch<RowKeyJoinPOP>
-
innerNext
- Specified by:
innerNextin classAbstractRecordBatch<RowKeyJoinPOP>
-
hasRowKeyBatch
public boolean hasRowKeyBatch()Description copied from interface:RowKeyJoinIs the next batch of row keys ready to be returned- Specified by:
hasRowKeyBatchin interfaceRowKeyJoin- Returns:
- True if ready, false if not
-
nextRowKeyBatch
Description copied from interface:RowKeyJoinGet the next batch of row keys- Specified by:
nextRowKeyBatchin interfaceRowKeyJoin- Returns:
- a Pair whose left element is the ValueVector containing the row keys, right element is the number of row keys in this batch
-
getBatchState
Description copied from interface:RowKeyJoinGet the current BatchState (this is useful when performing row key join)- Specified by:
getBatchStatein interfaceRowKeyJoin
-
setBatchState
Description copied from interface:RowKeyJoinSet the BatchState (this is useful when performing row key join)- Specified by:
setBatchStatein interfaceRowKeyJoin- Parameters:
newState-
-
setRowKeyJoinState
Description copied from interface:RowKeyJoinSet the RowKeyJoinState (this is useful for maintaining state for row key join algorithm)- Specified by:
setRowKeyJoinStatein interfaceRowKeyJoin- Parameters:
newState-
-
getRowKeyJoinState
Description copied from interface:RowKeyJoinGet the current RowKeyJoinState.- Specified by:
getRowKeyJoinStatein interfaceRowKeyJoin
-
cancelIncoming
protected void cancelIncoming()- Specified by:
cancelIncomingin classAbstractRecordBatch<RowKeyJoinPOP>
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Overrides:
closein classAbstractRecordBatch<RowKeyJoinPOP>
-
dump
public void dump()Description copied from interface:RecordBatchPerform dump of this batch's state to logs.- Specified by:
dumpin interfaceRecordBatch
-