Class HashJoinHelper
java.lang.Object
org.apache.drill.exec.physical.impl.join.HashJoinHelper
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddNewBatch(int recordCount) voidvoidclear()getNewSV4(int recordCount) intgetNextIndex(int currentIdx) Takes a composite index for a key produced bygetStartIndex(int), and returns the composite index for the next record in the list of records that match a key.com.carrotsearch.hppc.IntArrayListintgetStartIndex(int keyIndex) Takes a composite index for a key produced byHashTable.probeForKey(int, int), and uses it to look up the index of the first original key in the original data.voidsetCurrentIndex(int keyIndex, int batchIndex, int recordIndex) booleansetRecordMatched(int index)
-
Field Details
-
LEFT_INPUT
public static final int LEFT_INPUT- See Also:
-
RIGHT_INPUT
public static final int RIGHT_INPUT- See Also:
-
-
Constructor Details
-
HashJoinHelper
-
-
Method Details
-
addStartIndexBatch
- Throws:
SchemaChangeException
-
getNewSV4
- Throws:
SchemaChangeException
-
addNewBatch
- Throws:
SchemaChangeException
-
getStartIndex
public int getStartIndex(int keyIndex) Takes a composite index for a key produced byHashTable.probeForKey(int, int), and uses it to look up the index of the first original key in the original data.- Parameters:
keyIndex- A composite index for a key produced byHashTable.probeForKey(int, int)- Returns:
- The composite index for the first added key record in the original data.
-
getNextIndex
public int getNextIndex(int currentIdx) Takes a composite index for a key produced bygetStartIndex(int), and returns the composite index for the next record in the list of records that match a key. The result is a composite index for a record within the original data set.- Parameters:
currentIdx- A composite index for a key produced bygetStartIndex(int).- Returns:
- The composite index for the next record in the list of records that match a key. The result is a composite index for a record within the original data set.
-
getNextUnmatchedIndex
public com.carrotsearch.hppc.IntArrayList getNextUnmatchedIndex() -
setRecordMatched
public boolean setRecordMatched(int index) -
setCurrentIndex
public void setCurrentIndex(int keyIndex, int batchIndex, int recordIndex) throws SchemaChangeException - Throws:
SchemaChangeException
-
clear
public void clear()
-