public CompactingMemStore(Configuration conf, CellComparator c,
HStore store, RegionServicesForStores regionServices,
MemoryCompactionPolicy compactionPolicy) throws IOException {
super(conf, c, regionServices);
this.store = store;
this.regionServices = regionServices;
this.pipeline = new CompactionPipeline(getRegionServices());
this.compactor = createMemStoreCompactor(compactionPolicy);
if (conf.getBoolean(MemStoreLAB.USEMSLAB_KEY, MemStoreLAB.USEMSLAB_DEFAULT)) {
indexType = IndexType.CHUNK_MAP;
} else {
indexType = IndexType.ARRAY_MAP;
}
initInmemoryFlushSize(conf);
LOG.info("Store={}, in-memory flush size threshold={}, immutable segments index type={}, " +
"compactor={}", this.store.getColumnFamilyName(),
StringUtils.byteDesc(this.inmemoryFlushSize), this.indexType,
(this.compactor == null? "NULL": this.compactor.toString()));
}