[ https://issues.apache.org/jira/browse/CASSANDRA-4671?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vijay reassigned CASSANDRA-4671: -------------------------------- Assignee: Vijay > Improve removal of gcable tomstones during minor compaction > ----------------------------------------------------------- > > Key: CASSANDRA-4671 > URL: https://issues.apache.org/jira/browse/CASSANDRA-4671 > Project: Cassandra > Issue Type: Improvement > Reporter: Sylvain Lebresne > Assignee: Vijay > Priority: Minor > Fix For: 1.2.1 > > Attachments: 0001-CASSANDRA-4671.patch > > > When we minor compact, we only purge a row if we know it's not present in any > of the sstables that are not in the compaction set. > It is however possible to have scenario where this leads us to keep > irrelevant tombstone for longer than necessary (and I suspect LCS make those > scenario a little bit more likely). > We could however purge tombstone if we know that the non-compacted sstables > doesn't have any info that is older than the tombstones we're about to purge > (since then we know that the tombstones we'll consider can't delete data in > non compacted sstables). > In other words, we should force CompactionController.shouldPurge() to return > true if min_timestamp(non-compacted-overlapping-sstables) > > max_timestamp(compacted-sstables). > This does require us to record the min timestamp of an sstable first though > (we only record the max timestamp so far). -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira