[ https://issues.apache.org/jira/browse/CASSANDRA-2576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13027079#comment-13027079 ]
Sylvain Lebresne commented on CASSANDRA-2576: --------------------------------------------- Looks good, but I would want to remove the addition of the close() function to SSTableWriter (because it calls closeAndOpenReader). I fear people would be tempted to call close in a final block, which could remove the temporary marker, even though some error would have left the sstable corrupted. And as far as I can tell, this is a gratuitous addition, that has nothing to do with that patch. Writing a new file was in the first versions of the counter patch and was changed for the space efficiency it provides (or at least I don't think there was another reason). Nevertheless I do agree that it is cleaner that way, so let's hope the temporary increased space needed won't bite anyone (since we delete the streamed file as soon as the new file is created, it's probably fine). > Rewrite into new file post streaming > ------------------------------------ > > Key: CASSANDRA-2576 > URL: https://issues.apache.org/jira/browse/CASSANDRA-2576 > Project: Cassandra > Issue Type: Improvement > Components: Core > Reporter: Stu Hood > Assignee: Stu Hood > Fix For: 1.0 > > Attachments: > 0001-Don-t-depend-on-a-byte-for-byte-match-for-SSTable-rebu.txt, > 0002-Rebuild-into-a-new-file-to-minimize-magic.txt > > > Commutative/counter column families use a separate path to rebuild sstables > post streaming, and that path currently rewrites the data within the streamed > file. While this is great for space efficiency, it means a duplicated code > path for writing sstables, which makes it more difficult to make changes like > #674. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira