protected boolean
CompactingMemStore.checkAndAddToActiveSize(org.apache.hadoop.hbase.regionserver.MutableSegment currActive,
org.apache.hadoop.hbase.Cell cellToAdd,
org.apache.hadoop.hbase.regionserver.MemStoreSizing memstoreSizing)
Check whether anything need to be done based on the current active set size.
org.apache.hadoop.hbase.regionserver.ImmutableSegment
SegmentFactory.createImmutableSegment(org.apache.hadoop.hbase.regionserver.MutableSegment segment,
org.apache.hadoop.hbase.regionserver.MemStoreSizing memstoreSizing)
protected void
AbstractMemStore.doAdd(org.apache.hadoop.hbase.regionserver.MutableSegment currentActive,
org.apache.hadoop.hbase.ExtendedCell cell,
org.apache.hadoop.hbase.regionserver.MemStoreSizing memstoreSizing)
protected void
CompactingMemStore.flushInMemory(org.apache.hadoop.hbase.regionserver.MutableSegment currActive)
protected abstract void
AbstractMemStore.postUpdate(org.apache.hadoop.hbase.regionserver.MutableSegment currentActive)
Issue any post update synchronization and tests
protected void
CompactingMemStore.postUpdate(org.apache.hadoop.hbase.regionserver.MutableSegment currentActive)
protected void
DefaultMemStore.postUpdate(org.apache.hadoop.hbase.regionserver.MutableSegment currentActive)
protected abstract boolean
AbstractMemStore.preUpdate(org.apache.hadoop.hbase.regionserver.MutableSegment currentActive,
org.apache.hadoop.hbase.ExtendedCell cell,
org.apache.hadoop.hbase.regionserver.MemStoreSizing memstoreSizing)
Issue any synchronization and test needed before applying the update
protected boolean
CompactingMemStore.preUpdate(org.apache.hadoop.hbase.regionserver.MutableSegment currentActive,
org.apache.hadoop.hbase.ExtendedCell cell,
org.apache.hadoop.hbase.regionserver.MemStoreSizing memstoreSizing)
Issue any synchronization and test needed before applying the update For compacting memstore
this means checking the update can increase the size without overflow
protected boolean
DefaultMemStore.preUpdate(org.apache.hadoop.hbase.regionserver.MutableSegment currentActive,
org.apache.hadoop.hbase.ExtendedCell cell,
org.apache.hadoop.hbase.regionserver.MemStoreSizing memstoreSizing)
protected void
CompactingMemStore.pushActiveToPipeline(org.apache.hadoop.hbase.regionserver.MutableSegment currActive,
boolean checkEmpty)
NOTE: When CompactingMemStore.flushInMemory(MutableSegment)
calls this method, due to
concurrent writes and because we first add cell size to currActive.getDataSize and then
actually add cell to currActive.cellSet, it is possible that currActive.getDataSize could not
accommodate cellToAdd but currActive.cellSet is still empty if pending writes which not yet add
cells to currActive.cellSet,so for
CompactingMemStore.flushInMemory(MutableSegment)
,checkEmpty parameter is false.
boolean
CompactionPipeline.pushHead(org.apache.hadoop.hbase.regionserver.MutableSegment segment)