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-1179) split commitlog into header + mutations files
Date Wed, 16 Jun 2010 02:02:25 GMT

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

Jonathan Ellis commented on CASSANDRA-1179:
-------------------------------------------

(actually BRAF.read should be returning -1, so that RAF.readFully throws EOFException)

> split commitlog into header + mutations files
> ---------------------------------------------
>
>                 Key: CASSANDRA-1179
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1179
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Jonathan Ellis
>            Assignee: Matthew F. Dennis
>             Fix For: 0.7
>
>         Attachments: 1179-v2.txt, trunk-1179-v3.txt, trunk-1179.txt
>
>
> As mentioned in CASSANDRA-1119, it seems possible that a commitlog header could be corrupted
by a power loss during update of the header, post-flush.  We could try to make it more robust
(by writing the size of the commitlogheader first, and skipping to the end if we encounter
corruption) but it seems to me that the most foolproof method would be to split the log into
two files: the header, which we'll overwrite, and the data, which is truly append only.  If
If the header is corrupt on reply, we just reply the data from the beginning; the header allows
us to avoid replaying data redundantly, but it's strictly an optimization and not required
for correctness.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message