@InterfaceAudience.Private public class CellChunkImmutableSegment extends ImmutableSegment
Segment,
and ImmutableSegment. This immutable segment is working with CellSet with
CellChunkMap delegatee.| Modifier and Type | Field and Description |
|---|---|
static long |
DEEP_OVERHEAD_CCM |
static float |
INDEX_CHUNK_UNUSED_SPACE_PRECENTAGE |
DEEP_OVERHEADFIXED_OVERHEAD, memStoreSizing, minSequenceId, tagsPresent, timeRangeTrackerDUD| Modifier | Constructor and Description |
|---|---|
protected |
CellChunkImmutableSegment(CellComparator comparator,
MemStoreSegmentsIterator iterator,
MemStoreLAB memStoreLAB,
int numOfCells,
MemStoreCompactionStrategy.Action action)
------------------------------------------------------------------------
C-tor to be used when new CellChunkImmutableSegment is built as a result of compaction/merge
of a list of older ImmutableSegments.
|
protected |
CellChunkImmutableSegment(CSLMImmutableSegment segment,
MemStoreSizing memstoreSizing,
MemStoreCompactionStrategy.Action action)
------------------------------------------------------------------------
C-tor to be used when new CellChunkImmutableSegment is built as a result of flattening
of CSLMImmutableSegment
The given iterator returns the Cells that "survived" the compaction.
|
| Modifier and Type | Method and Description |
|---|---|
private Chunk[] |
allocIndexChunks(int numOfCells) |
private int |
calcNumOfCellsInChunk(int chunkSize) |
private int |
calculateNumberOfChunks(int numOfCells,
int chunkSize) |
protected boolean |
canBeFlattened() |
private Cell |
copyCellIntoMSLAB(Cell cell,
MemStoreSizing memstoreSizing) |
private int |
createCellReference(ByteBufferKeyValue cell,
ByteBuffer idxBuffer,
int idxOffset) |
protected long |
indexEntryOffHeapSize(boolean offHeap) |
protected long |
indexEntryOnHeapSize(boolean onHeap) |
protected long |
indexEntrySize() |
private void |
initializeCellSet(int numOfCells,
MemStoreSegmentsIterator iterator,
MemStoreCompactionStrategy.Action action) |
private void |
reinitializeCellSet(int numOfCells,
KeyValueScanner segmentScanner,
CellSet oldCellSet,
MemStoreSizing memstoreSizing,
MemStoreCompactionStrategy.Action action) |
private ChunkCreator.ChunkType |
useIndexChunks(int numOfCells) |
getAllSegments, getNumOfSegments, getNumUniqueKeys, getSnapshotScanners, toStringclose, compare, compareAndSetDataSize, compareRows, decScannerCount, dump, getCellLength, getCellsCount, getCellSet, getComparator, getDataSize, getHeapSize, getMemStoreLAB, getMemStoreSize, getMinSequenceId, getOffHeapSize, getScanner, getScanners, getTimeRangeTracker, headSet, heapSizeChange, incMemStoreSize, incScannerCount, internalAdd, isEmpty, isTagsPresent, iterator, last, maybeCloneWithAllocator, offHeapSizeChange, setCellSet, sharedLock, sharedUnlock, shouldSeek, tailSet, updateMetaInfo, updateMetaInfo, waitForUpdatesclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitdecMemStoreSize, decMemStoreSize, incMemStoreSizepublic static final long DEEP_OVERHEAD_CCM
public static final float INDEX_CHUNK_UNUSED_SPACE_PRECENTAGE
protected CellChunkImmutableSegment(CellComparator comparator, MemStoreSegmentsIterator iterator, MemStoreLAB memStoreLAB, int numOfCells, MemStoreCompactionStrategy.Action action)
protected CellChunkImmutableSegment(CSLMImmutableSegment segment, MemStoreSizing memstoreSizing, MemStoreCompactionStrategy.Action action)
protected long indexEntryOnHeapSize(boolean onHeap)
indexEntryOnHeapSize in class Segmentprotected long indexEntryOffHeapSize(boolean offHeap)
indexEntryOffHeapSize in class Segmentprotected long indexEntrySize()
indexEntrySize in class Segmentprotected boolean canBeFlattened()
canBeFlattened in class ImmutableSegmentprivate void initializeCellSet(int numOfCells, MemStoreSegmentsIterator iterator, MemStoreCompactionStrategy.Action action)
private void reinitializeCellSet(int numOfCells, KeyValueScanner segmentScanner, CellSet oldCellSet, MemStoreSizing memstoreSizing, MemStoreCompactionStrategy.Action action)
private int createCellReference(ByteBufferKeyValue cell, ByteBuffer idxBuffer, int idxOffset)
private int calculateNumberOfChunks(int numOfCells, int chunkSize)
private ChunkCreator.ChunkType useIndexChunks(int numOfCells)
private int calcNumOfCellsInChunk(int chunkSize)
private Chunk[] allocIndexChunks(int numOfCells)
private Cell copyCellIntoMSLAB(Cell cell, MemStoreSizing memstoreSizing)
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.