Make changes to the set of memtables and sstables of a cfstore atomic
----------------------------------------------------------------------
Key: CASSANDRA-2284
URL: https://issues.apache.org/jira/browse/CASSANDRA-2284
Project: Cassandra
Issue Type: Bug
Components: Core
Reporter: Sylvain Lebresne
Assignee: Sylvain Lebresne
Fix For: 0.8
Attachments: 0001-Make-memtable-and-sstable-switches-atomic.patch
Some switches happen in the set of memtables and sstables of a cfstore:
* when we switch the memtable, the current memtable is replaced by a new one
and add to the memtablesPendingFlush
* when a memtable is fully flushed, it is removed from memtablesPendingFlush
and the newly created sstable is added to the set of active sstables.
* after compaction, compacted memtables are removed from the active sstables
and the compacted sstable is added instead
Only the last of these operations is atomic. This ticket proposes to makes all
of them atomic, using the idea of the View idea hinted by Stu in the comments
of CASSANDRA-1954.
The main reason for this is to fix CASSANDRA-2105. But I think that another
benefit of this is to make reasoning about those operations easier.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira