[ 
https://issues.apache.org/jira/browse/CASSANDRA-1610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13033534#comment-13033534
 ] 

Jonathan Ellis commented on CASSANDRA-1610:
-------------------------------------------

The suggested alternative compaction strategies don't sound very generally 
useful. We shouldn't maintain them in-tree.

So what we should do here is provide a CompactionStrategyProvider interface 
that will give us back CompactionStrategy objects implementing doCompaction, 
doCleanupCompaction, probably submitMinorIfNeeded, etc.  We shouldn't have any 
provider-specific logic left in CompactionManager itself, it should all be 
based on the pluggable Strategy.

> Pluggable Compaction
> --------------------
>
>                 Key: CASSANDRA-1610
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1610
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Chris Goffinet
>            Assignee: Alan Liang
>            Priority: Minor
>              Labels: compaction
>             Fix For: 1.0
>
>         Attachments: 0001-move-compaction-code-into-own-package.patch, 
> 0002-Pluggable-Compaction-and-Expiration.patch
>
>
> In CASSANDRA-1608, I proposed some changes on how compaction works. I think 
> it also makes sense to allow the ability to have pluggable compaction per CF. 
> There could be many types of workloads where this makes sense. One example we 
> had at Digg was to completely throw away certain SSTables after N days.
> The goal of this ticket is to make compaction pluggable enough to support 
> compaction based on max timestamp ordering of the sstables while satisfying 
> max sstable size, min and max compaction thresholds. Another goal is to allow 
> expiration of sstables based on a timestamp.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to