You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Björn Hegerfors (JIRA)" <ji...@apache.org> on 2014/11/19 22:20:34 UTC
[jira] [Commented] (CASSANDRA-8340) Use sstable min timestamp when
deciding if an sstable should be included in DTCS compactions
[ https://issues.apache.org/jira/browse/CASSANDRA-8340?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14218515#comment-14218515 ]
Björn Hegerfors commented on CASSANDRA-8340:
--------------------------------------------
Actually, it's already implemented like that. The SSTables are paired with their age in the createSSTableAndMinTimestampPairs method. Max timestamps are only used in getNow and filterOldSSTables.
I used min timestamps based on the same reasoning as yours. I agree that major compaction is the way to go when switching.
> Use sstable min timestamp when deciding if an sstable should be included in DTCS compactions
> --------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-8340
> URL: https://issues.apache.org/jira/browse/CASSANDRA-8340
> Project: Cassandra
> Issue Type: Improvement
> Reporter: Marcus Eriksson
> Priority: Minor
>
> Currently we check how old the newest data (max timestamp) in an sstable is when we check if it should be compacted.
> If we instead switch to using min timestamp for this we have a pretty clean migration path from STCS/LCS to DTCS.
> My thinking is that before migrating, the user does a major compaction, which creates a huge sstable containing all data, with min timestamp very far back in time, then switching to DTCS, we will have a big sstable that we never compact (ie, min timestamp of this big sstable is before max_sstable_age_days), and all newer data will be after that, and that new data will be properly compacted
> WDYT [~Bj0rn] ?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)