Author: slebresne
Date: Mon Dec 19 09:24:05 2011
New Revision: 1220665
URL: http://svn.apache.org/viewvc?rev=1220665&view=rev
Log:
Avoid creating empty and non-cleaned write during compaction
patch by slebresne; reviewed by jbellis for CASSANDRA-3616
Modified:
cassandra/branches/cassandra-1.0/CHANGES.txt
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionTask.java
Modified: cassandra/branches/cassandra-1.0/CHANGES.txt
URL:
http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/CHANGES.txt?rev=1220665&r1=1220664&r2=1220665&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/CHANGES.txt (original)
+++ cassandra/branches/cassandra-1.0/CHANGES.txt Mon Dec 19 09:24:05 2011
@@ -3,6 +3,7 @@
* more efficient allocation of small bloom filters (CASSANDRA-3618)
* CLibrary.createHardLinkWithExec() to check for errors (CASSANDRA-3101)
* fsync the directory after new sstable or commitlog segment are created
(CASSANDRA-3250)
+ * Avoid creating empty and non cleaned writer during compaction
(CASSANDRA-3616)
Merged from 0.8:
* prevent new nodes from thinking down nodes are up forever (CASSANDRA-3626)
Modified:
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionTask.java
URL:
http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionTask.java?rev=1220665&r1=1220664&r2=1220665&view=diff
==============================================================================
---
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionTask.java
(original)
+++
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionTask.java
Mon Dec 19 09:24:05 2011
@@ -175,9 +175,12 @@ public class CompactionTask extends Abst
SSTableReader toIndex =
writer.closeAndOpenReader(getMaxDataAge(toCompact));
cachedKeyMap.put(toIndex, cachedKeys);
sstables.add(toIndex);
- writer = cfs.createCompactionWriter(keysPerSSTable,
compactionFileLocation, toCompact);
- writers.add(writer);
- cachedKeys = new HashMap<DecoratedKey, Long>();
+ if (nni.hasNext())
+ {
+ writer = cfs.createCompactionWriter(keysPerSSTable,
compactionFileLocation, toCompact);
+ writers.add(writer);
+ cachedKeys = new HashMap<DecoratedKey, Long>();
+ }
}
}
}