[
https://issues.apache.org/jira/browse/CASSANDRA-12937?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17837220#comment-17837220
]
Stefan Miklosovic commented on CASSANDRA-12937:
-----------------------------------------------
1/2. I am not sure, you could easily test this, just set default compactions /
compressions on each node and see if schemas are in an agreement.
3/4. I think that, ideally, out of the box, it should be same everywhere and a
user would need to make a conscious choice if he wanted to override that.
Currently, nothing prevents the configuration to be diverged. It is not about
whether we should enable it or not, it should be rather about being sure that
we do not diverge when we do not know about that.
5. I am not sure, it would be interesting to go over yaml and indentify these
which _have to_ to be same everywhere, these would be candidates to put into
TCM I guess.
6. currently we do not, I think that TCM would achieve that.
7. I think this all leads to some kind of an extension of nodetool which would
talk to TCM and it would set defaults there which are not settable otherwise.
E.g. default compression, so you would use a nodetool's subcommand to talk to
TCM where you would say "commit this default compression for me", and then all
nodes would apply these defaults from the log, eventually. Any other config
change similar to this would be like that.
> Default setting (yaml) for SSTable compression
> ----------------------------------------------
>
> Key: CASSANDRA-12937
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12937
> Project: Cassandra
> Issue Type: Improvement
> Components: Local/Config
> Reporter: Michael Semb Wever
> Assignee: Stefan Miklosovic
> Priority: Low
> Labels: AdventCalendar2021
> Fix For: 5.x
>
> Time Spent: 8h
> Remaining Estimate: 0h
>
> In many situations the choice of compression for sstables is more relevant to
> the disks attached than to the schema and data.
> This issue is to add to cassandra.yaml a default value for sstable
> compression that new tables will inherit (instead of the defaults found in
> {{CompressionParams.DEFAULT}}.
> Examples where this can be relevant are filesystems that do on-the-fly
> compression (btrfs, zfs) or specific disk configurations or even specific C*
> versions (see CASSANDRA-10995 ).
> +Additional information for newcomers+
> Some new fields need to be added to {{cassandra.yaml}} to allow specifying
> the field required for defining the default compression parameters. In
> {{DatabaseDescriptor}} a new {{CompressionParams}} field should be added for
> the default compression. This field should be initialized in
> {{DatabaseDescriptor.applySimpleConfig()}}. At the different places where
> {{CompressionParams.DEFAULT}} was used the code should call
> {{DatabaseDescriptor#getDefaultCompressionParams}} that should return some
> copy of configured {{CompressionParams}}.
> Some unit test using {{OverrideConfigurationLoader}} should be used to test
> that the table schema use the new default when a new table is created (see
> CreateTest for some example).
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]