Author: jbellis
Date: Mon Mar 28 19:15:18 2011
New Revision: 1086350
URL: http://svn.apache.org/viewvc?rev=1086350&view=rev
Log:
add actual dropped check to Memtable.flush for CASSANDRA-2381
patch by jbellis
Modified:
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/Memtable.java
Modified:
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
URL:
http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=1086350&r1=1086349&r2=1086350&view=diff
==============================================================================
---
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
(original)
+++
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
Mon Mar 28 19:15:18 2011
@@ -709,10 +709,7 @@ public class ColumnFamilyStore implement
return null;
}
- boolean isDropped = isIndex()
- ? DatabaseDescriptor.getCFMetaData(table.name,
getParentColumnfamily()) == null
- :
DatabaseDescriptor.getCFMetaData(metadata.cfId) == null;
- if (isDropped)
+ if (isDropped())
{
logger.debug("column family was dropped; no point in
flushing");
return null;
@@ -768,6 +765,13 @@ public class ColumnFamilyStore implement
}
}
+ public boolean isDropped()
+ {
+ return isIndex()
+ ? DatabaseDescriptor.getCFMetaData(table.name,
getParentColumnfamily()) == null
+ : DatabaseDescriptor.getCFMetaData(metadata.cfId) == null;
+ }
+
void switchBinaryMemtable(DecoratedKey key, ByteBuffer buffer)
{
binaryMemtable.set(new BinaryMemtable(this));
Modified:
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/Memtable.java
URL:
http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/Memtable.java?rev=1086350&r1=1086349&r2=1086350&view=diff
==============================================================================
---
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/Memtable.java
(original)
+++
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/db/Memtable.java
Mon Mar 28 19:15:18 2011
@@ -175,8 +175,11 @@ public class Memtable implements Compara
cfs.flushLock.lock();
try
{
- cfs.addSSTable(writeSortedContents());
- cfs.getMemtablesPendingFlush().remove(Memtable.this);
+ if (!cfs.isDropped())
+ {
+ cfs.addSSTable(writeSortedContents());
+ cfs.getMemtablesPendingFlush().remove(Memtable.this);
+ }
}
finally
{