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

Benedict commented on CASSANDRA-3578:
-------------------------------------

Was browsing your changes and noticed your CL.getContext() comment 
clarification, which I think probably doesn't go far enough - also realised its 
return value no longer needs to be a Future (the callee also only uses 
immediateFuture). I think something like the following is appropriate:

{noformat}
     /**
       * @return a ReplayPosition representing the current position of the 
commit log; 
       * any CL.add() that completed prior to this call will occur at an 
earlier ReplayPosition. 
       * This makes no guarantees about persistence, only ordering
       */
      public ReplayPosition getContext()
      {
             return allocator.allocatingFrom().getContext()
      }
{noformat}

> 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, 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)

Reply via email to