[ https://issues.apache.org/jira/browse/CASSANDRA-9965?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14661714#comment-14661714 ]
Aleksey Yeschenko commented on CASSANDRA-9965: ---------------------------------------------- Looks good to me, including cassci runs. Could you consider doing the following things on commit (without rerunning tests or another round of review)? 1. Add a short deprecation/new methods note to NEWS.txt in 2.1/2.2 2. Add a short removal/new methods note in NEWS.txt in 3.0 3. In {{maybeReloadCompactionStrategy()}} in all versions swap {{.equals()}} call order (so that we have {{metadata.params.compaction.equals(params)}}) - this would guarantee no NPEs, and I'll sleep better knowing that my previous suggestion will never break anything 4. In consistency with CFS compressions setters/getters, do the following renames: - {{setLocalCompactionStrategy()}} -> {{setCompactionParameters()}} - {{getLocalCompactionStrategy()}} -> {{getCompactionParameters()}} - {{setLocalCompactionStrategyString()}} -> {{setCompactionParametersFromJson()}} ('string' is ambiguous, 'Json' or 'JSON' encapsulates intent in the name) - {{getLocalCompactionStrategyString()}} -> {{getCompactionParametersAsJson()}} - same reasoning and symmetry 5. Remove the variants that return what's configured in schema ({{getCompactionStrategy()}}). I see the rationale, but the user can compare JMX output with cqlsh, we don't need an extra way to fetch schema 6. Mark {{getCompactionStrategyClass()}} deprecated in 2.2, as well. Feel free to treat 3, 4, 5, and 6 as easily ignorable suggestions. It really is gtg. > ColumnFamilyStore.setCompactionStrategyClass() is (somewhat) broken > ------------------------------------------------------------------- > > Key: CASSANDRA-9965 > URL: https://issues.apache.org/jira/browse/CASSANDRA-9965 > Project: Cassandra > Issue Type: Bug > Reporter: Aleksey Yeschenko > Assignee: Marcus Eriksson > Priority: Minor > Fix For: 2.1.x, 2.2.x, 3.0.0 rc1 > > > {{ColumnFamilyStore.setCompactionStrategyClass()}} should get the same > treatment wrt JMX/schema switches that {{enabled}} got in CASSANDRA-9899. > It should also not alter the {{CFMetaData}} object directly, ever. Only DDL > statements should be allowed to do that. > CASSANDRA-9712 will temporarily throw UOE for that call. -- This message was sent by Atlassian JIRA (v6.3.4#6332)