[ https://issues.apache.org/jira/browse/CASSANDRA-20749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18013853#comment-18013853 ]
Stefan Miklosovic edited comment on CASSANDRA-20749 at 8/14/25 7:55 AM: ------------------------------------------------------------------------ Thanks for that, but while it fixes the existing test, it does not work in more general case: You can indeed do this: {code:java} memtable.configurations: {\"skiplist\": {\"class_name\": \"SkipListMemtable\", ...{code} But this seems to be impossible: {code:java} memtable.configurations.skiplist: {\"class_name\": \"SkipListMemtable\", ....{code} I am not completely sure if this is fixable and this stuff is just acceptable but my gut feeling tells me that as we go into the future and more configurations will be (most probably) added, stuff like this will not be possible and then there will be issues created like "i can not override this setting by system / env properties, what do I do wrong?" was (Author: smiklosovic): Thanks for that, but while it fixes the existing test, it does not work in more general case: You can indeed do this: {code:java} memtable.configurations", "{\"skiplist\": {\"class_name\": \"SkipListMemtable\", ...{code} But this seems to be impossible: {code:java} memtable.configurations.skiplist: {\"class_name\": \"SkipListMemtable\", ....{code} I am not completely sure if this is fixable and this stuff is just acceptable but my gut feeling tells me that as we go into the future and more configurations will be (most probably) added, stuff like this will not be possible and then there will be issues created like "i can not override this setting by system / env properties, what do I do wrong?" > Allow overriding arbitrary settings via environment variables > ------------------------------------------------------------- > > Key: CASSANDRA-20749 > URL: https://issues.apache.org/jira/browse/CASSANDRA-20749 > Project: Apache Cassandra > Issue Type: Improvement > Components: Local/Config > Reporter: Paulo Motta > Assignee: Paulo Motta > Priority: Normal > Fix For: 5.x > > Time Spent: 4h > Remaining Estimate: 0h > > Allow arbitrary cassandra.yaml settings to be overriden via environment > variables. This allows performing runtime overrides to a cassandra node > configuration without updating cassandra.yaml, what can be useful to test > isolated changes or in docker environments where runtime environment > variables can be supplied via the {{--env}} flag. > This should transparently override arbitrary configuration supported in > cassandra.yaml via environment variables loaded during startup matching the > format {{{}CASS_{CASSANDRA_YAML_CONFIG_NAME{}}}}. So for example, to override > the {{cassandra.yaml}} configuration cdc_enabled, this can be overriden via > the environment variable {{{}CASS_CDC_ENABLED{}}}, the cassandra.yaml setting > {{key_cache_save_period}} can be overriden via {{CASS_KEY_CACHE_SAVE_PERIOD}} > and so on. This should support both simple and complex properties. > This is analogous to the functionality added by CASSANDRA-17166 to override > arbitrary configurations via system properties enabled by the flag > {{{}-Dcassandra.config.allow_system_properties{}}}. -- 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