[ https://issues.apache.org/jira/browse/CASSANDRA-12937?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17713592#comment-17713592 ]
Claude Warren commented on CASSANDRA-12937: ------------------------------------------- OK. Here is my proposal ||Parameter||CompressionParam Map (input)||CompressionParam Map (output)||CompressionParam as Serializer||CQL||Notes|| |chunk_length_in_kb |X|X|X|X| | |chunk_length_kb|X| | | | | |chunk_length|X| | | |chunk length with DataStorageSpec suffix| |crc_check_chance|X| | |X|Accepted but ignored and removed from map. This is the current operation| |min_compress_ratio|X|X| | | | |max_compressed_length|X| |X| |DataStorageSpec suffix| |lz4_compressor_type|X|X|X|X|left in options for ICompressor construction| |{{lz4_high_compressor_level}}|X|X|X|X|left in options for ICompressor construction| |{{compression_level}}|X|X|X|X|left in options for ICompressor construction| |(arbitrary parameter)|X|X|X| |left in options for ICompressor construction| All of the parameters will be accepted. Conflicts of input will be handled as follows: * multiple chunk_length type parameters (chunk_length, chunk_length_kb, chunk_length_in_kb) will result in a ConfigurationException * Specifying both min_compress_ratio and max_compressed_length will result in a ConfigurationException. * crc_check_chance processing will not change. I think this meets the requirements for CQL configuration copy paste as well as YAML properties expressed with DataStoreageSpec suffix. > 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: Claude Warren > Priority: Low > Labels: AdventCalendar2021, lhf > Fix For: 5.x > > Time Spent: 3h > 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: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org