[ https://issues.apache.org/jira/browse/CASSANDRA-3716?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sylvain Lebresne updated CASSANDRA-3716: ---------------------------------------- Attachment: 3716.patch Attached patch that basically does 3 things: * make sure getLocalDeletionTime is always defined, i.e, even for non-deleted columns (it's Integer.MAX_VALUE). * make isMarkedForDelete() be a shorthand for now >= gLDT. * remove the uses of iMFD in all methods that should not be sensible to the current time but rather to gcBefore. Not sure there is really a need to do more than that. > Clean up isMarkedForDelete / getLocalDeletionTime > ------------------------------------------------- > > Key: CASSANDRA-3716 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3716 > Project: Cassandra > Issue Type: Improvement > Components: Core > Reporter: Jonathan Ellis > Assignee: Sylvain Lebresne > Labels: compaction > Fix For: 1.1 > > Attachments: 3716.patch > > > As explained in CASSANDRA-3579, isMarkedForDelete() depends on the current > system clock so it can change during a two-pass compaction. Suggested fix is > to replace iMFD + gLDT with a getExpirationTime method, so comparison with > the compaction's gcBefore will remain constant. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira