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] [Commented] (CASSANDRA-622) Improve commitlog performance
Date Wed, 07 Sep 2011 22:23:08 GMT

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

Jonathan Ellis commented on CASSANDRA-622:
------------------------------------------

bq. reserving space for each with a [AtomicInteger] first

For an example of something similar, look at how SlabAllocator.Region.allocate uses this approach
to reserve parts of a region for the ByteBuffers it allocates.

> Improve commitlog performance
> -----------------------------
>
>                 Key: CASSANDRA-622
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-622
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Jonathan Ellis
>            Priority: Minor
>              Labels: gsoc, gsoc2010
>
> Postgresql uses fixed-size commitlog files that it pre-allocates (filling with zeros)
so "appending" to the log can use cheaper fsync-without-metadata (length changes is "metadata").
 Then, when a commitlog is not needed, it "recycles" it by renaming it to a higher number.
 Commitlog entries have an increasing id, and if you come to an out-of-sequence (earlier)
id, then you must have have reached the end of the commitlog and are reading from the "recycled"
part.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message