Hello everyone, During the implementation, many valid design comments were made about making the virtual table SettingTable [1] updatable. So, I've rethought the whole concept once again, and I want to take another step forward to make this problem feasible with less effort on our part.
I want to replace the way we use and store node configuration values internally, which means I want to replace the Config class instance, where we store values with a tree-based framework. >> I propose to use the Lightbend API to do this. << The changes themselves are quite limited, they don't require rewriting the whole codebase. All the DatabaseDescriptor methods will be retained, and the only thing that would change is the way we store the values (in the in-memory tree, not in the Config class instance itself). So I don't expect that it will be a huge change. All the design details are in the document below, including the framework comparison, the API, and the way how we will manage the configuration schema. Please take a look, I want to move things forward as every important change pulls on a bigger problem that has been neglected for years :-) Let's agree on the framework/API we want to use so that I can invest more time in the implementation. https://docs.google.com/document/d/11W1Qj-6d9ZqHv86iEKgFutcxY2DTMIofEbr-zQiw930/edit#heading=h.2051pbez4rce Looking forward to your comments. [1] https://issues.apache.org/jira/browse/CASSANDRA-15254