[
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