Description
Today if there is only one file in the partition, and there is no _del files, the file is skipped. With del file, the current logic is to compact the already-compacted file with _del file. Let's say there is one mob file regionA20161101**, which was compacted. On 12/1/2016, there is _del file regionB20161201_del, mob compaction kicks in, regionA20161101** is less than the threshold, and it is picked for compaction. Since there is a _del file, regionA20161101**** and regionB20161201**_del are compacted into regionA20161101_1 . After that, regionB20161201_del cannot be deleted since it is not a allFile compaction. The next mob compaction, regionA20161101_1 and regionB20161201_del will be picked up again and be compacted into regionA20161101**_2. So in this case, it will cause more unnecessary IOs.