[
https://issues.apache.org/jira/browse/CASSANDRA-622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13093911#comment-13093911
]
Jonathan Ellis commented on CASSANDRA-622:
------------------------------------------
I think we can reasonably move "recycling" out of scope here and start with
multithreaded CL append.
And a correction to my earlier statement: sun.misc.unsafe seems to be part of
the JRE spec, despite the package name. The only difference I see between
NBHM's usage and the "safe" Atomic* classes is that NBHM's target is not
volatile. For our purposes here AtomicInteger should be fine.
> 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