@InterfaceAudience.Private public class ImmutableMemStoreLAB extends Object implements MemStoreLAB
copyCellInto(Cell)
throws ExceptionModifier 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, wait
isEnabled, newInstance
private final AtomicInteger openScannerCount
private volatile boolean closed
private final List<MemStoreLAB> mslabs
public ImmutableMemStoreLAB(List<MemStoreLAB> mslabs)
public Cell copyCellInto(Cell cell)
MemStoreLAB
copyCellInto
in interface MemStoreLAB
public Cell forceCopyOfBigCellInto(Cell cell)
forceCopyOfBigCellInto
in interface MemStoreLAB
public Chunk getNewExternalChunk(ChunkCreator.ChunkType chunkType)
getNewExternalChunk
in interface MemStoreLAB
public Chunk getNewExternalChunk(int size)
getNewExternalChunk
in interface MemStoreLAB
public void close()
MemStoreLAB
close
in interface MemStoreLAB
private void checkAndCloseMSLABs(int openScanners)
public void incScannerCount()
MemStoreLAB
incScannerCount
in interface MemStoreLAB
public void decScannerCount()
MemStoreLAB
decScannerCount
in interface MemStoreLAB
public boolean isOnHeap()
isOnHeap
in interface MemStoreLAB
public boolean isOffHeap()
isOffHeap
in interface MemStoreLAB
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.