[ 
https://issues.apache.org/jira/browse/CASSANDRA-14621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16582254#comment-16582254
 ] 

Marcus Eriksson commented on CASSANDRA-14621:
---------------------------------------------

this lgtm in general, just a few comments
* some of the new code is non-trivial and should probably have a few tests, for 
example {{AbstractStrategyHolder.GroupedSSTableContainer}} and 
{{CompactionStrategyManager#groupSSTables}} (but there are probably more things 
that should have tests)
* Comments on the non-obvious methods in the new classes
* Update CSM class comment

pushed a branch: 
https://github.com/krummas/cassandra/commits/blake/csm-refactor containing
* nits
* noticed that we used to call startup for each strategy twice in 
{{CSM#startup}}, which seems wrong, removed the call outside the {{readLock}}
* renamed {{compactionStrategyIndexFor(Descriptor descriptor)}} to 
{{compactionStrategyIndexForDirectory(Descriptor descriptor)}} to make it a bit 
clearer what it does

there also seems to be a few test errors which might not be unrelated

> Refactor CompactionStrategyManager
> ----------------------------------
>
>                 Key: CASSANDRA-14621
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14621
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Compaction
>            Reporter: Blake Eggleston
>            Assignee: Blake Eggleston
>            Priority: Minor
>             Fix For: 4.x
>
>
> CompactionStrategyManager grew a decent amount of duplicated code as part of 
> CASSANDRA-9143, which added pendingRepairs alongside the repaired and 
> unrepaired buckets. At this point, the logic that routes sstables between the 
> different buckets, and the different partition range divisions has gotten a 
> little complex, and editing it is tedious and error prone. With transient 
> replication requiring yet another bucket for, this seems like a good time to 
> split some of the functionality of CSM into other classes, and make sstable 
> routing a bit more generalized.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to