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

Benedict commented on CASSANDRA-10202:
--------------------------------------

Have you looked at the code that came prior to #3578 wrt this logic? It's a 
long time ago, but I remember it being pretty damned bad back then too.

bq. battle-tested concurrent collection

Like I say, this attitude caused us to introduce bugs because we didn't 
understand either these collections' behaviour, or because the increased 
complexity of hammering the given screw was too unclear.  It *looked* easier to 
understand, but in fact it was not, and in being so duplicitous we were fooled. 
 By taking ownership of the complexity, the alternatives avoided these pitfalls.

And, further, we have these custom algorithms everywhere in the codebase.  The 
problem we have is that whenever good programming practices of abstraction, 
separation and isolation of concerns (and better testability) is employed to 
get a handle on the complexity, it inherently gets _labelled_ a custom 
algorithm and is anathema.  Thus, again, we simply _disguise_ the complexity, 
and make ourselves feel better without achieving any positive end result.

Anyway, I'm going to go back to feeling sorry for myself.  I've said plenty on 
this topic, here and in the distant past.

P.S. #7282 is a completely different topic, one of algorithmic complexity and 
long-term puzzle-piecing rather than correctness/safety.  But we've already had 
that discussion, and I've no interest in working it into Cassandra anymore.

> simplify CommitLogSegmentManager
> --------------------------------
>
>                 Key: CASSANDRA-10202
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10202
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Local Write-Read Paths
>            Reporter: Jonathan Ellis
>            Assignee: Branimir Lambov
>            Priority: Minor
>
> Now that we only keep one active segment around we can simplify this from the 
> old recycling design.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to