Class RightIncrementalNaturalJoinStateManagerTypedBase
java.lang.Object
io.deephaven.engine.table.impl.StaticNaturalJoinStateManager
io.deephaven.engine.table.impl.RightIncrementalNaturalJoinStateManager
io.deephaven.engine.table.impl.naturaljoin.RightIncrementalNaturalJoinStateManagerTypedBase
- All Implemented Interfaces:
IncrementalNaturalJoinStateManager
public abstract class RightIncrementalNaturalJoinStateManagerTypedBase
extends RightIncrementalNaturalJoinStateManager
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classNested classes/interfaces inherited from class io.deephaven.engine.table.impl.RightIncrementalNaturalJoinStateManager
RightIncrementalNaturalJoinStateManager.InitialBuildContext -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ChunkType[]static final longprotected gnu.trove.list.array.TLongArrayListprotected ImmutableObjectArraySource<WritableRowSet> protected final WritableColumnSource<?>[]protected ImmutableLongArraySourceprotected longprotected longprotected ImmutableLongArraySourceprotected ObjectArraySource<WritableRowSet> protected intFields inherited from class io.deephaven.engine.table.impl.StaticNaturalJoinStateManager
addOnly, DUPLICATE_RIGHT_VALUE, joinType, keySourcesForErrorMessages, NO_RIGHT_ENTRY_VALUE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedRightIncrementalNaturalJoinStateManagerTypedBase(ColumnSource<?>[] tableKeySources, ColumnSource<?>[] keySourcesForErrorMessages, int tableSize, double maximumLoadFactor, NaturalJoinType joinType, boolean addOnly) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract voidaddRightSide(RowSequence rowSequence, Chunk[] sourceKeyChunks) protected abstract voidaddRightSide(RowSequence rowSequence, Chunk[] sourceKeyChunks, NaturalJoinModifiedSlotTracker modifiedSlotTracker) voidaddRightSide(RowSequence rightRowSet, ColumnSource<?>[] rightSources) voidaddRightSide(Context pc, RowSequence rightRowSet, ColumnSource<?>[] rightSources, @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) protected longprotected abstract voidapplyRightShift(RowSequence rowSequence, Chunk[] sourceKeyChunks, long shiftDelta, NaturalJoinModifiedSlotTracker modifiedSlotTracker, RightIncrementalNaturalJoinStateManagerTypedBase.ProbeContext pc) voidapplyRightShift(Context pc, ColumnSource<?>[] rightSources, RowSet shiftedRowSet, long shiftDelta, @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) protected abstract voidbuildFromLeftSide(RowSequence rowSequence, Chunk[] sourceKeyChunks) voidbuildFromLeftSide(Table leftTable, ColumnSource<?>[] leftSources, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc) buildRowRedirectionFromHashSlot(QueryTable leftTable, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc, JoinControl.RedirectionType redirectionType) buildRowRedirectionFromHashSlotIndexed(QueryTable leftTable, ColumnSource<RowSet> rowSetSource, int groupingSize, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc, JoinControl.RedirectionType redirectionType) protected voidbuildTable(TypedHasherUtil.BuildOrProbeContext.BuildContext bc, RowSequence buildRows, ColumnSource<?>[] buildSources, TypedHasherUtil.BuildHandler buildHandler) voidconvertLeftDataIndex(int groupingSize, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc, ColumnSource<RowSet> rowSetSource) protected voiddecorateLeftSide(RowSet leftRowSet, ColumnSource<?>[] leftSources, LongArraySource leftRedirections) voiddoRehash(int nextChunkSize) protected longduplicateLocationFromRowKey(long rowKey) protected voidfreeDuplicateLocation(long duplicateLocation) getLeftRowSet(int slot) longgetRightRowKey(int slot) getRightRowSet(int slot) protected inthashToTableLocation(int hash) keyString(int slot) makeInitialBuildContext(Table leftTable) makeProbeContext(ColumnSource<?>[] buildSources, long maxSize) protected abstract voidmodifyByRight(RowSequence rowSequence, Chunk[] sourceKeyChunks, NaturalJoinModifiedSlotTracker modifiedSlotTracker) voidmodifyByRight(Context pc, RowSet modified, ColumnSource<?>[] rightSources, @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) protected voidprobeTable(RightIncrementalNaturalJoinStateManagerTypedBase.ProbeContext pc, RowSequence probeRows, boolean usePrev, ColumnSource<?>[] probeSources, TypedHasherUtil.ProbeHandler handler) protected abstract voidrehashInternalFull(int oldSize) booleanrehashRequired(int nextChunkSize) protected abstract voidremoveRight(RowSequence rowSequence, Chunk[] sourceKeyChunks, NaturalJoinModifiedSlotTracker modifiedSlotTracker) voidremoveRight(Context pc, RowSequence rightRowSet, ColumnSource<?>[] rightSources, @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) protected longrowKeyFromDuplicateLocation(long duplicateLocation) Methods inherited from class io.deephaven.engine.table.impl.StaticNaturalJoinStateManager
buildRowRedirection, checkExactMatch, extractKeyStringFromSourceTableMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.deephaven.engine.table.impl.IncrementalNaturalJoinStateManager
addRightRowKeyToDuplicates, checkExactMatch, getRightRowKeyFromDuplicates, removeRightRowKeyFromDuplicates, shiftOneKey
-
Field Details
-
FIRST_DUPLICATE
public static final long FIRST_DUPLICATE- See Also:
-
tableSize
protected int tableSize -
numEntries
protected long numEntries -
chunkTypes
-
mainKeySources
-
leftRowSet
-
rightRowKey
-
rightSideDuplicateRowSets
-
nextDuplicateRightSide
protected long nextDuplicateRightSide -
freeDuplicateValues
protected gnu.trove.list.array.TLongArrayList freeDuplicateValues -
modifiedTrackerCookieSource
-
-
Constructor Details
-
RightIncrementalNaturalJoinStateManagerTypedBase
protected RightIncrementalNaturalJoinStateManagerTypedBase(ColumnSource<?>[] tableKeySources, ColumnSource<?>[] keySourcesForErrorMessages, int tableSize, double maximumLoadFactor, NaturalJoinType joinType, boolean addOnly)
-
-
Method Details
-
makeProbeContext
public RightIncrementalNaturalJoinStateManagerTypedBase.ProbeContext makeProbeContext(ColumnSource<?>[] buildSources, long maxSize) - Specified by:
makeProbeContextin classRightIncrementalNaturalJoinStateManager
-
buildTable
protected void buildTable(TypedHasherUtil.BuildOrProbeContext.BuildContext bc, RowSequence buildRows, ColumnSource<?>[] buildSources, TypedHasherUtil.BuildHandler buildHandler) -
probeTable
protected void probeTable(RightIncrementalNaturalJoinStateManagerTypedBase.ProbeContext pc, RowSequence probeRows, boolean usePrev, ColumnSource<?>[] probeSources, TypedHasherUtil.ProbeHandler handler) -
doRehash
public void doRehash(int nextChunkSize) -
rehashRequired
public boolean rehashRequired(int nextChunkSize) -
rehashInternalFull
protected abstract void rehashInternalFull(int oldSize) -
hashToTableLocation
protected int hashToTableLocation(int hash) -
duplicateLocationFromRowKey
protected long duplicateLocationFromRowKey(long rowKey) -
rowKeyFromDuplicateLocation
protected long rowKeyFromDuplicateLocation(long duplicateLocation) -
allocateDuplicateLocation
protected long allocateDuplicateLocation() -
freeDuplicateLocation
protected void freeDuplicateLocation(long duplicateLocation) -
getRightRowKey
public long getRightRowKey(int slot) -
getLeftRowSet
-
getRightRowSet
-
keyString
-
buildFromLeftSide
public void buildFromLeftSide(Table leftTable, ColumnSource<?>[] leftSources, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc) - Specified by:
buildFromLeftSidein classRightIncrementalNaturalJoinStateManager
-
buildFromLeftSide
-
convertLeftDataIndex
public void convertLeftDataIndex(int groupingSize, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc, ColumnSource<RowSet> rowSetSource) - Specified by:
convertLeftDataIndexin classRightIncrementalNaturalJoinStateManager
-
addRightSide
- Specified by:
addRightSidein classRightIncrementalNaturalJoinStateManager
-
addRightSide
-
buildRowRedirectionFromHashSlot
public WritableRowRedirection buildRowRedirectionFromHashSlot(QueryTable leftTable, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc, JoinControl.RedirectionType redirectionType) - Specified by:
buildRowRedirectionFromHashSlotin classRightIncrementalNaturalJoinStateManager
-
buildRowRedirectionFromHashSlotIndexed
public WritableRowRedirection buildRowRedirectionFromHashSlotIndexed(QueryTable leftTable, ColumnSource<RowSet> rowSetSource, int groupingSize, RightIncrementalNaturalJoinStateManager.InitialBuildContext ibc, JoinControl.RedirectionType redirectionType) - Specified by:
buildRowRedirectionFromHashSlotIndexedin classRightIncrementalNaturalJoinStateManager
-
applyRightShift
public void applyRightShift(Context pc, ColumnSource<?>[] rightSources, RowSet shiftedRowSet, long shiftDelta, @NotNull @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) - Specified by:
applyRightShiftin classRightIncrementalNaturalJoinStateManager
-
applyRightShift
protected abstract void applyRightShift(RowSequence rowSequence, Chunk[] sourceKeyChunks, long shiftDelta, NaturalJoinModifiedSlotTracker modifiedSlotTracker, RightIncrementalNaturalJoinStateManagerTypedBase.ProbeContext pc) -
modifyByRight
public void modifyByRight(Context pc, RowSet modified, ColumnSource<?>[] rightSources, @NotNull @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) - Specified by:
modifyByRightin classRightIncrementalNaturalJoinStateManager
-
modifyByRight
protected abstract void modifyByRight(RowSequence rowSequence, Chunk[] sourceKeyChunks, NaturalJoinModifiedSlotTracker modifiedSlotTracker) -
removeRight
public void removeRight(Context pc, RowSequence rightRowSet, ColumnSource<?>[] rightSources, @NotNull @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) - Specified by:
removeRightin classRightIncrementalNaturalJoinStateManager
-
removeRight
protected abstract void removeRight(RowSequence rowSequence, Chunk[] sourceKeyChunks, NaturalJoinModifiedSlotTracker modifiedSlotTracker) -
addRightSide
public void addRightSide(Context pc, RowSequence rightRowSet, ColumnSource<?>[] rightSources, @NotNull @NotNull NaturalJoinModifiedSlotTracker modifiedSlotTracker) - Specified by:
addRightSidein classRightIncrementalNaturalJoinStateManager
-
addRightSide
protected abstract void addRightSide(RowSequence rowSequence, Chunk[] sourceKeyChunks, NaturalJoinModifiedSlotTracker modifiedSlotTracker) -
decorateLeftSide
protected void decorateLeftSide(RowSet leftRowSet, ColumnSource<?>[] leftSources, LongArraySource leftRedirections) - Specified by:
decorateLeftSidein classStaticNaturalJoinStateManager
-
makeInitialBuildContext
public RightIncrementalNaturalJoinStateManager.InitialBuildContext makeInitialBuildContext(Table leftTable) - Specified by:
makeInitialBuildContextin classRightIncrementalNaturalJoinStateManager
-