@InterfaceAudience.Private public class ImmutableMemStoreLAB extends Object implements MemStoreLAB
copyCellInto(Cell) throws Exception| Modifier and Type | Field and Description |
|---|---|
private boolean |
closed |
private List<MemStoreLAB> |
mslabs |
private AtomicInteger |
openScannerCount |
CHUNK_POOL_INITIALSIZE_KEY, CHUNK_POOL_MAXSIZE_KEY, CHUNK_SIZE_DEFAULT, CHUNK_SIZE_KEY, INDEX_CHUNK_PERCENTAGE_DEFAULT, INDEX_CHUNK_PERCENTAGE_KEY, MAX_ALLOC_DEFAULT, MAX_ALLOC_KEY, MSLAB_CLASS_NAME, POOL_INITIAL_SIZE_DEFAULT, POOL_MAX_SIZE_DEFAULT, USEMSLAB_DEFAULT, USEMSLAB_KEY| Constructor and Description |
|---|
ImmutableMemStoreLAB(List<MemStoreLAB> mslabs) |
| Modifier and Type | Method and Description |
|---|---|
private void |
checkAndCloseMSLABs(int openScanners) |
void |
close()
Close instance since it won't be used any more, try to put the chunks back to pool
|
Cell |
copyCellInto(Cell cell)
Allocates slice in this LAB and copy the passed Cell into this area.
|
void |
decScannerCount()
Called when closing a scanner on the data of this MemStoreLAB
|
Cell |
forceCopyOfBigCellInto(Cell cell)
The process of merging assumes all cells are allocated on mslab.
|
Chunk |
getNewExternalChunk(ChunkCreator.ChunkType chunkType) |
Chunk |
getNewExternalChunk(int size) |
void |
incScannerCount()
Called when opening a scanner on the data of this MemStoreLAB
|
boolean |
isOffHeap() |
boolean |
isOnHeap() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitisEnabled, newInstanceprivate final AtomicInteger openScannerCount
private volatile boolean closed
private final List<MemStoreLAB> mslabs
public ImmutableMemStoreLAB(List<MemStoreLAB> mslabs)
public Cell copyCellInto(Cell cell)
MemStoreLABcopyCellInto in interface MemStoreLABpublic Cell forceCopyOfBigCellInto(Cell cell)
forceCopyOfBigCellInto in interface MemStoreLABpublic Chunk getNewExternalChunk(ChunkCreator.ChunkType chunkType)
getNewExternalChunk in interface MemStoreLABpublic Chunk getNewExternalChunk(int size)
getNewExternalChunk in interface MemStoreLABpublic void close()
MemStoreLABclose in interface MemStoreLABprivate void checkAndCloseMSLABs(int openScanners)
public void incScannerCount()
MemStoreLABincScannerCount in interface MemStoreLABpublic void decScannerCount()
MemStoreLABdecScannerCount in interface MemStoreLABpublic boolean isOnHeap()
isOnHeap in interface MemStoreLABpublic boolean isOffHeap()
isOffHeap in interface MemStoreLABCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.