Class SortedRangesInt
java.lang.Object
com.illumon.iris.db.v2.utils.RefCountedCow<SortedRanges>
com.illumon.iris.db.v2.utils.sortedranges.SortedRanges
com.illumon.iris.db.v2.utils.sortedranges.SortedRangesTyped<ArrayType>
com.illumon.iris.db.v2.utils.sortedranges.SortedRangesPacked<int[]>
com.illumon.iris.db.v2.utils.sortedranges.SortedRangesInt
- All Implemented Interfaces:
TreeIndexImpl
public final class SortedRangesInt extends SortedRangesPacked<int[]>
-
Nested Class Summary
Nested classes/interfaces inherited from class com.illumon.iris.db.v2.utils.sortedranges.SortedRanges
SortedRanges.RangeIterator
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.utils.TreeIndexImpl
TreeIndexImpl.RandomBuilder, TreeIndexImpl.SequentialBuilder
-
Field Summary
Fields inherited from class com.illumon.iris.db.v2.utils.sortedranges.SortedRanges
cardinality, count, DEBUG, ELEMENTS_PER_BLOCK_DENSE_THRESHOLD, INITIAL_SIZE, INT_DENSE_MAX_CAPACITY, INT_EXTENT, INT_SPARSE_MAX_CAPACITY, LONG_DENSE_MAX_CAPACITY, LONG_EXTENT, LONG_SPARSE_MAX_CAPACITY, MAX_CAPACITY, POOL_ARRAYS, SHORT_EXTENT, SHORT_MAX_CAPACITY, USE_RANGES_ARRAY
-
Constructor Summary
Constructors Constructor Description SortedRangesInt(int[] data, long offset, int count, long cardinality)
SortedRangesInt(int initialCapacity, long offset)
SortedRangesInt(long offset, SortedRangesLong sa, int initialCapacity)
-
Method Summary
Modifier and Type Method Description protected long
absUnpackedGet(int i)
int
bytesAllocated()
int
bytesUsed()
protected int
capacityForLastIndex(int lastIndex, boolean isDense)
protected int
dataLength()
SortedRangesInt
deepCopy()
Get a deep copy of the current object, not shared with anybody.void
freeArray(int[] arr)
protected SortedRangesInt
growOnNew(int capacity)
boolean
isDense()
protected int[]
makeArray(int capacity)
protected SortedRangesInt
makeMyType(int[] data, long offset, int count, long cardinality)
protected SortedRangesInt
makeMyTypeAndOffset(int initialCapacity)
protected long
maxValueForType()
protected long
packedGet(int i)
protected void
packedSet(int i, long v)
protected int
packedValuesPerCacheLine()
protected void
rebaseAndShift(int[] dataOut, long newOffset, long shiftOffset, SortedRangesTyped<int[]> sar, long first)
SortedRanges
tryMakePackedType(int maxPos, long first, boolean isDense)
protected SortedRangesShort
tryPack()
protected SortedRanges
tryPackFor(long first, long last, int maxPos, boolean isDense)
protected long
unpackedGet(int i)
protected void
unpackedSet(int i, long v)
Methods inherited from class com.illumon.iris.db.v2.utils.sortedranges.SortedRangesPacked
addInternal, addRangeInternal, appendInternal, appendRangeInternal, applyShift, applyShiftOnNew, fits, fits, fitsForAppend, offset, offsetToDebugString, pack, removeInternal, removeRangeInternal, unpack
Methods inherited from class com.illumon.iris.db.v2.utils.sortedranges.SortedRangesTyped
checkSizeAndMoveData, copyData, copyData, copyData, copyDataForMoveToNew, copyTo, ensureCanAppend, moveData, tryCompactUnsafe
Methods inherited from class com.illumon.iris.db.v2.utils.sortedranges.SortedRanges
absPackedGet, add, addPacked, addPackedWithStart, addRange, addRangePacked, addRangePackedWithStart, addRangeUnsafe, addUnsafe, append, appendPacked, appendRange, appendRangePacked, appendRangeUnpacked, appendRangeUnsafe, appendUnsafe, arraySizeRoundingInt, arraySizeRoundingShort, clear, close, close2, contains, containsRange, count, dataToDebugString, find, first, forEachLong, forEachLongRange, get, getAverageRunLengthEstimate, getCardinality, getIterator, getKeysForPositions, getOrderedKeysByKeyRange, getOrderedKeysByPosition, getOrderedKeysByPositionWithStart, getOrderedKeysIterator, getRangeIterator, getReverseIterator, getSearchIterator, hasMoreThanOneRange, insertImpl, insertImpl, intArrayCapacityForLastIndex, intersectOnNew, intersectOnNewImpl, invertOnNew, invertRangeOnNew, isDenseInt, isDenseLong, isDenseLongSample, isDenseShort, isEmpty, isIntAllocationSize, isLongAllocationSize, isShortAllocationSize, isSparse, ixAppendRange, ixCardinality, ixCompact, ixContainsRange, ixCowRef, ixFind, ixFirstKey, ixForEachLong, ixForEachLongRange, ixGet, ixGetAverageRunLengthEstimate, ixGetKeysForPositions, ixGetOrderedKeysByKeyRange, ixGetOrderedKeysByPosition, ixGetOrderedKeysIterator, ixInsert, ixInsert, ixInsertRange, ixInsertSecondHalf, ixInsertWithShift, ixIntersectOnNew, ixInvertOnNew, ixIsEmpty, ixIterator, ixLastKey, ixMinusOnNew, ixOverlaps, ixOverlapsRange, ixRangeIterator, ixRangesCountUpperBound, ixRefCount, ixRelease, ixRemove, ixRemove, ixRemoveRange, ixRemoveSecondHalf, ixRetain, ixRetainRange, ixReverseIterator, ixSearchIterator, ixShiftInPlace, ixShiftOnNew, ixSubindexByKeyOnNew, ixSubindexByPosOnNew, ixSubsetOf, ixToRspOnNew, ixUnionOnNew, ixUpdate, ixValidate, last, longArrayCapacityForLastIndex, makeEmpty, makeForKnownRange, makeSingleElement, makeSingleRange, mergeAppend, overlaps, overlapsRange, remove, remove, removePacked, removeRange, removeRangePacked, removeRangePackedWithStart, retainRange, self, shortArrayCapacityForLastIndex, subRangesByKey, subRangesByPos, subsetOf, toDebugString, toRsp, toString, tryCompact, tryMakeForKnownRangeFinalCapacityLowerBound, tryMakeForKnownRangeKnownCount, tryMakeForKnownRangeUnknownMaxCapacity, tryPackWithNewLast, unionOnNew, unionOnNewLegacy, validate, validate, validate
Methods inherited from class com.illumon.iris.db.v2.utils.RefCountedCow
acquire, canWrite, cowRef, getWriteRef, notifyAfterRelease, notifyBeforeAcquire, refCount, release
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.illumon.iris.db.v2.utils.TreeIndexImpl
ixInsert, ixRemove, ixValidate
-
Constructor Details
-
SortedRangesInt
public SortedRangesInt(int initialCapacity, long offset) -
SortedRangesInt
public SortedRangesInt(int[] data, long offset, int count, long cardinality) -
SortedRangesInt
-
-
Method Details
-
deepCopy
Description copied from class:RefCountedCow
Get a deep copy of the current object, not shared with anybody. Note this is not thread safe.- Specified by:
deepCopy
in classSortedRanges
- Returns:
- A full, deep copy of this object with a reference count of 1 (not shared).
-
packedValuesPerCacheLine
protected int packedValuesPerCacheLine()- Specified by:
packedValuesPerCacheLine
in classSortedRanges
-
makeMyTypeAndOffset
- Specified by:
makeMyTypeAndOffset
in classSortedRangesTyped<int[]>
-
makeArray
protected int[] makeArray(int capacity)- Specified by:
makeArray
in classSortedRangesTyped<int[]>
-
freeArray
public void freeArray(int[] arr)- Specified by:
freeArray
in classSortedRangesTyped<int[]>
-
dataLength
protected int dataLength()- Specified by:
dataLength
in classSortedRanges
-
maxValueForType
protected long maxValueForType()- Specified by:
maxValueForType
in classSortedRangesPacked<int[]>
-
capacityForLastIndex
protected int capacityForLastIndex(int lastIndex, boolean isDense)- Specified by:
capacityForLastIndex
in classSortedRangesTyped<int[]>
-
unpackedGet
protected long unpackedGet(int i)- Specified by:
unpackedGet
in classSortedRanges
-
absUnpackedGet
protected long absUnpackedGet(int i)- Specified by:
absUnpackedGet
in classSortedRanges
-
unpackedSet
protected void unpackedSet(int i, long v)- Specified by:
unpackedSet
in classSortedRanges
-
packedGet
protected long packedGet(int i)- Specified by:
packedGet
in classSortedRanges
-
packedSet
protected void packedSet(int i, long v)- Specified by:
packedSet
in classSortedRanges
-
tryPackFor
- Specified by:
tryPackFor
in classSortedRanges
-
tryMakePackedType
- Specified by:
tryMakePackedType
in classSortedRangesTyped<int[]>
-
growOnNew
- Specified by:
growOnNew
in classSortedRanges
-
makeMyType
- Specified by:
makeMyType
in classSortedRangesPacked<int[]>
-
rebaseAndShift
protected void rebaseAndShift(int[] dataOut, long newOffset, long shiftOffset, SortedRangesTyped<int[]> sar, long first)- Specified by:
rebaseAndShift
in classSortedRangesPacked<int[]>
-
bytesAllocated
public int bytesAllocated()- Specified by:
bytesAllocated
in classSortedRanges
-
bytesUsed
public int bytesUsed()- Specified by:
bytesUsed
in classSortedRanges
-
tryPack
- Specified by:
tryPack
in classSortedRanges
-
isDense
public boolean isDense()- Specified by:
isDense
in classSortedRanges
-