[
https://issues.apache.org/jira/browse/CASSANDRA-2381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13012045#comment-13012045
]
Gary Dusbabek commented on CASSANDRA-2381:
------------------------------------------
Is it necessary to make the MT lock static? I do not think there would be a
problem with concurrently flushing two memtables of different column families
(the CL serialization is still preserved by the synchronization in CFS).
> orphaned data files may be created during migration race
> --------------------------------------------------------
>
> Key: CASSANDRA-2381
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2381
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.7.0
> Reporter: Jonathan Ellis
> Assignee: Jonathan Ellis
> Priority: Minor
> Fix For: 0.7.5
>
> Attachments: 2381-0.8.txt
>
>
> We try to prevent creating orphans by locking Table.flusherLock in
> maybeSwitchMemtable and the Migration process, but since the actual writing
> is done asynchronously in Memtable.writeSortedContents there is a race
> window, where we acquire lock in maybeSwitch, we're not dropped so we queue
> the flush and release the lock, Migration does the drop, then Memtable writes
> itself out.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira