cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CASSANDRA-2349) Expring columns can expire between the two phase of LazilyCompactedRow.
Date Thu, 17 Mar 2011 14:41:29 GMT

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

Sylvain Lebresne commented on CASSANDRA-2349:
---------------------------------------------

This could be fixed by making LazilyCompactedRow do only one phase. We could write a place
holder header, write the column, and seek back at the end to write the header. The tricky
part is that this won't fit well with AbstractCompactedRow, since it is assume that the column
count is known before write is called.

> Expring columns can expire between the two phase of LazilyCompactedRow.
> -----------------------------------------------------------------------
>
>                 Key: CASSANDRA-2349
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2349
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.7.0
>            Reporter: Sylvain Lebresne
>            Assignee: Sylvain Lebresne
>            Priority: Critical
>             Fix For: 0.7.5
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> LazilyCompactedRow reads the columns to compact twice. First to create the index, bloom
filter and calculate the data size, and then another phase to actually write the columns.
But a column can expire between those two phase, which will result in a bad data size in the
sstable (and a possibly corrupted row index).

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

Mime
View raw message