cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ariel Weisberg (JIRA)" <>
Subject [jira] [Created] (CASSANDRA-8729) Commitlog causes read before write when overwriting
Date Tue, 03 Feb 2015 18:04:35 GMT
Ariel Weisberg created CASSANDRA-8729:

             Summary: Commitlog causes read before write when overwriting
                 Key: CASSANDRA-8729
             Project: Cassandra
          Issue Type: Improvement
          Components: Core
            Reporter: Ariel Weisberg

The memory mapped commit log implementation writes directly to the page cache. If a page is
not in the cache the kernel will read it in even though we are going to overwrite.

The way to avoid this is to write to private memory, and then pad the write with 0s at the
end so it is page (4k) aligned before writing to a file.

The commit log would benefit from being refactored into something that looks more like a pipeline
with incoming requests receiving private memory to write in, completed buffers being submitted
to a  parallelized compression/checksum step, followed by submission to another thread for
writing to a file that preserves the order.

This message was sent by Atlassian JIRA

View raw message