Hello Claude,
I have seen two options and the option you mentioned is probably the
third from ways of disabling a feature :-)
So, we have
1.
public class TransparentDataEncryptionOptions
{
public boolean enabled = false;
public ParameterizedClass key_provider;
}
2.
public boolean cdc_enabled = false;
public boolean materialized_views_enabled = false;
So, in my humble opinion, I guess both approaches are used for now and
as the discussion [1] is not finished we can probably use one of them
for the case you mentioned, so either create a nested wrapper class or
keep it plain with the right prefix e.g. hints_compression_enabled.
Move cassandra.yaml toward a nested structure around major database concepts
[1] https://issues.apache.org/jira/browse/CASSANDRA-17292
On Wed, 19 Apr 2023 at 14:07, Claude Warren, Jr via dev
<[email protected]> wrote:
>
> Currently the compression parameters has an option called enable. When
> enable=false all the other options have to be removed. But it seems to me
> that we should support enabled=false without removing all the other
> parameters so that users can disable the compression for testing or problem
> resolution without losing an of the other parameter settings. So to be clear:
>
> The following is valid:
> hints_compression:
> - class_name: foo
> parameters:
> - chunk_length_in_kb : 16 ;
>
> But this is not:
> hints_compression:
> - class_name: foo
> parameters:
> - chunk_length_in_kb : 16 ;
> enabled : false ;
>
> Currently when enabled is set false is constructs a default CompressionParam
> object with the class name set to null.
>
> Is there a reason to keep this or should we accept the parameters and
> construct a CompressionParam with the parameters while continuing to set the
> class name to null?
>
> Claude