cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CASSANDRA-3578) Multithreaded commitlog
Date Sun, 01 Dec 2013 02:07:35 GMT

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

Jonathan Ellis edited comment on CASSANDRA-3578 at 12/1/13 2:07 AM:
--------------------------------------------------------------------

bq. We point next to next, which is absolutely correct

I understand what sync is doing; my point is that xxxxSyncMarkerPosition always points to
the *last* offset before which the contents are synced, which we'll revisit when we sync again
/ write the next marker (referred to appropriately as {{nextMarker}} in the code).  Your own
comments refer to "last" or "previous" in multiple places which speaks to how difficult it
is to avoid thinking of it that way. :)


was (Author: jbellis):
bq. We point next to next, which is absolutely correct

I understand what sync is doing; my point is that xxxxSyncMarkerPosition always points to
the *last* offset before which the contents are synced, which we'll revisit when we write
another.  Your own comments refer to "last" or "previous" in multiple places which speaks
to how difficult it is to avoid thinking of it that way. :)

> Multithreaded commitlog
> -----------------------
>
>                 Key: CASSANDRA-3578
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3578
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Jonathan Ellis
>            Assignee: Benedict
>            Priority: Minor
>              Labels: performance
>         Attachments: 0001-CASSANDRA-3578.patch, ComitlogStress.java, Current-CL.png,
Multi-Threded-CL.png, TestEA.java, latency.svg, oprate.svg, parallel_commit_log_2.patch
>
>
> Brian Aker pointed out a while ago that allowing multiple threads to modify the commitlog
simultaneously (reserving space for each with a CAS first, the way we do in the SlabAllocator.Region.allocate)
can improve performance, since you're not bottlenecking on a single thread to do all the copying
and CRC computation.
> Now that we use mmap'd CommitLog segments (CASSANDRA-3411) this becomes doable.
> (moved from CASSANDRA-622, which was getting a bit muddled.)



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message