[
https://issues.apache.org/jira/browse/CASSANDRA-320?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Ellis updated CASSANDRA-320:
-------------------------------------
Attachment: 320.patch
combine switchMemtable and enqueueFlush so that they always operate on the same
object. move forceFlush guts from MT to CFS since it encapsulates better there
> Memtable sometimes not enqueued for flush
> -----------------------------------------
>
> Key: CASSANDRA-320
> URL: https://issues.apache.org/jira/browse/CASSANDRA-320
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Environment: Debian lenny amd64 sun jdk 1.6
> Reporter: Brandon Williams
> Attachments: 320.patch
>
>
> There appears to be a (rare) race condition with flushing memtables.
> Occasionally, when Cassandra is in the process of flushing a table, another
> switch will occur. The latter table will be added to memtablesPendingFlush
> in ColumnFamilyStore, but it will not be enqueued for flush and thus hang
> around forever. Adding an else clause and a print statement to
> Memtable.java's enqueueFlush method reveals that the memtable is not being
> flushed because isFrozen_ is already true.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.