Currently, all tombstones only get cleaned up with major compactions. I guess the original design probably considered that we need to ensure whether there are other versions of the deleted key in other storefiles which are not included in minor compaction? If that's true, i have a thought, maybe we could delete a bunch of tombstones per bloom filter, in other words, we can try to query the deleted key in other storefiles's bloom filter info to determine whether we can remove it safely or not. I am not familiar with compaction&bloomfilter internal, it's just a raw thought right now:)
Regards, Liang