[
https://issues.apache.org/jira/browse/CASSANDRA-10202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14994086#comment-14994086
]
Benedict edited comment on CASSANDRA-10202 at 11/6/15 6:10 PM:
---------------------------------------------------------------
Overall it cleans up a number of things. I've pushed a version
[here|https://github.com/belliottsmith/cassandra/tree/10202] which modifies the
underlying semantics a little to, IMO, _conceptually_ simplify things further.
It does so by combining all three "parts" of the segment management into a
single list - the current segment simply always being the last or penultimate
segment in the list. This also permits a return to lock-free segment swapping.
It does introduce extra code since we now have a linked-list to maintain, so
it's not absolutely a simplification, so it is debatable if it is an
improvement.
>From my recollection, there was a bug with {{discard}} having the potential to
>be called twice if two flushes overlapped, which has been fixed. I can't
>recall if there were any other issues, but if there were, I fixed them in this
>branch also.
I've not had time to self-review my changes, but I'm going on holiday for a
while so figured I would post it in advance of that.
was (Author: benedict):
Overall it cleans up a number of things. I've pushed a version
[here|https://github.com/belliottsmith/cassandra/tree/10202] which modifies the
underlying semantics a little to, IMO, _conceptually_ simplify things a little.
It does so by combining all three "parts" of the segment management into a
single list - the current segment simply always being the last or penultimate
segment in the list. This also permits a return to lock-free segment swapping.
It does introduce extra code since we now have a linked-list to maintain, so
it's not absolutely a simplification, so it is debatable if it is an
improvement.
>From my recollection, there was a bug with {{discard}} having the potential to
>be called twice if two flushes overlapped, which has been fixed. I can't
>recall if there were any other issues, but if there were, I fixed them in this
>branch also.
I've not had time to self-review my changes, but I'm going on holiday for a
while so figured I would post it in advance of that.
> simplify CommitLogSegmentManager
> --------------------------------
>
> Key: CASSANDRA-10202
> URL: https://issues.apache.org/jira/browse/CASSANDRA-10202
> Project: Cassandra
> Issue Type: Improvement
> 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)