Package com.illumon.iris.db.v2.ssa
Class DoubleReverseChunkSsaStamp
java.lang.Object
com.illumon.iris.db.v2.ssa.DoubleReverseChunkSsaStamp
- All Implemented Interfaces:
ChunkSsaStamp
public class DoubleReverseChunkSsaStamp extends Object implements ChunkSsaStamp
Stamp kernel for when the left hand side is a sorted chunk and the right hand side is a ticking SegmentedSortedArray.
-
Method Summary
Modifier and Type Method Description void
applyShift(Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightStampKeys, long shiftDelta, RedirectionIndex redirectionIndex, boolean disallowExactMatch)
int
findModified(int first, Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, RedirectionIndex redirectionIndex, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightStampIndices, Index.RandomBuilder modifiedBuilder, boolean disallowExactMatch)
void
processEntry(Chunk<Attributes.Values> leftStampValues, Chunk<Attributes.KeyIndices> leftStampKeys, SegmentedSortedArray ssa, WritableLongChunk<Attributes.KeyIndices> rightKeysForLeft, boolean disallowExactMatch)
void
processInsertion(Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightKeys, Chunk<Attributes.Values> nextRightValue, RedirectionIndex redirectionIndex, Index.RandomBuilder modifiedBuilder, boolean endsWithLastValue, boolean disallowExactMatch)
void
processRemovals(Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightKeys, WritableLongChunk<Attributes.KeyIndices> priorRedirections, RedirectionIndex redirectionIndex, Index.RandomBuilder modifiedBuilder, boolean disallowExactMatch)
-
Method Details
-
processEntry
public void processEntry(Chunk<Attributes.Values> leftStampValues, Chunk<Attributes.KeyIndices> leftStampKeys, SegmentedSortedArray ssa, WritableLongChunk<Attributes.KeyIndices> rightKeysForLeft, boolean disallowExactMatch)- Specified by:
processEntry
in interfaceChunkSsaStamp
-
processRemovals
public void processRemovals(Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightKeys, WritableLongChunk<Attributes.KeyIndices> priorRedirections, RedirectionIndex redirectionIndex, Index.RandomBuilder modifiedBuilder, boolean disallowExactMatch)- Specified by:
processRemovals
in interfaceChunkSsaStamp
-
processInsertion
public void processInsertion(Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightKeys, Chunk<Attributes.Values> nextRightValue, RedirectionIndex redirectionIndex, Index.RandomBuilder modifiedBuilder, boolean endsWithLastValue, boolean disallowExactMatch)- Specified by:
processInsertion
in interfaceChunkSsaStamp
-
findModified
public int findModified(int first, Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, RedirectionIndex redirectionIndex, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightStampIndices, Index.RandomBuilder modifiedBuilder, boolean disallowExactMatch)- Specified by:
findModified
in interfaceChunkSsaStamp
-
applyShift
public void applyShift(Chunk<Attributes.Values> leftStampValues, LongChunk<Attributes.KeyIndices> leftStampKeys, Chunk<? extends Attributes.Values> rightStampChunk, LongChunk<Attributes.KeyIndices> rightStampKeys, long shiftDelta, RedirectionIndex redirectionIndex, boolean disallowExactMatch)- Specified by:
applyShift
in interfaceChunkSsaStamp
-