Benedict created CASSANDRA-7819: ----------------------------------- Summary: In progress compactions should not prevent deletion of stale sstables Key: CASSANDRA-7819 URL: https://issues.apache.org/jira/browse/CASSANDRA-7819 Project: Cassandra Issue Type: Improvement Components: Core Reporter: Benedict Priority: Minor
Compactions retain references to potentially many sstables that existed when they were started but that are now obsolete; many concurrent compactions can compound this dramatically, and with very large files in size tiered compaction it is possible to inflate disk utilisation dramatically beyond what is necessary. I propose, during compaction, periodically checking which sstables are obsolete and simply replacing them with the sstable that replaced it. These sstables are by definition only used for lookup, since we are in the process of obsoleting the sstables we're compacting, they're only used to reference overlapping ranges which may be covered by tombstones. A simplest solution might even be to simply detect obsoletion and recalculate our overlapping tree afresh. This is a pretty quick operation in the grand scheme of things, certainly wrt compaction, so nothing lost to do this at the rate we obsolete sstables. See CASSANDRA-7139 for original discussion of the problem. -- This message was sent by Atlassian JIRA (v6.2#6252)