[
https://issues.apache.org/jira/browse/CASSANDRA-5074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13625263#comment-13625263
]
Sylvain Lebresne commented on CASSANDRA-5074:
---------------------------------------------
The general idea lgtm. A few remarks though:
* There is no handling of CQL3 (which is in the package
org.apache.cassandra.cql3). I'll not that for CQL3, this setting should
probably be a 'compaction' option, not at top-level one. Thruth being told,
maybe it would be cleaner to have that be a compaction option in the code too
(handled by AbstractCompactionStrategy)?
* Currently, whether compaction is disabled or not is checked by the compaction
strategy themselves. In particular, SizeTiered directly check the min and max
thresholds (rather than calling isCompactionDisabled) in
getNextBackgroundSSTables, so that needs to be fixed. Furthermore, those checks
are redundant with the newly added checks in CompactionManager. And since
there's the new 'isActive' flag that also mean "don't create a compaction
task", maybe it would be simpler to create an
AbstractCompactionStrategy.isEnabled() method that would return 'isActive &&
!isAutoCompactionDisabled()' and use that exclusively.
* We should probably now refuse setting the min/max thresholds to 0 everywhere
(and add a mention in the NEWS file).
* In nodeCmd, the convention for methods that take a keyspace and column family
argument is that if they are not given, the method applies to all keyspace/CF.
Could be handy here too.
* Nit: For the enableAutoCompaction with an argument, we can add a
@VisibleForTesting annotation.
> Add an official way to disable compaction
> -----------------------------------------
>
> Key: CASSANDRA-5074
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5074
> Project: Cassandra
> Issue Type: Bug
> Reporter: Jonathan Ellis
> Assignee: Marcus Eriksson
> Priority: Minor
> Fix For: 2.0
>
> Attachments:
> 0001-CASSANDRA-5074-make-it-possible-to-disable-autocompa.patch
>
>
> We've traditionally used "min or max compaction threshold = 0" to disable
> compaction, but this isn't exactly intuitive and it's inconsistently
> implemented -- allowed from jmx, not allowed from cli.
--
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