You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2011/02/22 18:32:28 UTC
svn commit: r1073427 - in /cassandra/branches/cassandra-0.7: CHANGES.txt
src/java/org/apache/cassandra/io/LazilyCompactedRow.java
src/java/org/apache/cassandra/io/PrecompactedRow.java
Author: jbellis
Date: Tue Feb 22 17:32:27 2011
New Revision: 1073427
URL: http://svn.apache.org/viewvc?rev=1073427&view=rev
Log:
fix compaction echoing old-style data into new sstable version
patch by slebresne; reviewed by jbellis for CASSANDRA-2216
Modified:
cassandra/branches/cassandra-0.7/CHANGES.txt
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/LazilyCompactedRow.java
cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/PrecompactedRow.java
Modified: cassandra/branches/cassandra-0.7/CHANGES.txt
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.7/CHANGES.txt?rev=1073427&r1=1073426&r2=1073427&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.7/CHANGES.txt (original)
+++ cassandra/branches/cassandra-0.7/CHANGES.txt Tue Feb 22 17:32:27 2011
@@ -10,10 +10,11 @@
* refactor stress.py to have only one copy of the format string
used for creating row keys (CASSANDRA-2108)
* validate index names for \w+ (CASSANDRA-2196)
- * Fix Cassandra cli to respect timeout if schema does not settle (CASSANDRA-2187)
+ * Fix Cassandra cli to respect timeout if schema does not settle
+ (CASSANDRA-2187)
* update memtable_throughput to be a long (CASSANDRA-2158)
- * fix for cleanup writing old-format data into new-version sstable
- (CASSANRDRA-2211)
+ * fix for compaction and cleanup writing old-format data into new-version
+ sstable (CASSANDRA-2211, -2216)
0.7.2
Modified: cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/LazilyCompactedRow.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/LazilyCompactedRow.java?rev=1073427&r1=1073426&r2=1073427&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/LazilyCompactedRow.java (original)
+++ cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/LazilyCompactedRow.java Tue Feb 22 17:32:27 2011
@@ -94,7 +94,7 @@ public class LazilyCompactedRow extends
public void write(DataOutput out) throws IOException
{
- if (rows.size() == 1 && !shouldPurge)
+ if (rows.size() == 1 && !shouldPurge && rows.get(0).sstable.descriptor.isLatestVersion)
{
SSTableIdentityIterator row = rows.get(0);
out.writeLong(row.dataSize);
Modified: cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/PrecompactedRow.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/PrecompactedRow.java?rev=1073427&r1=1073426&r2=1073427&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/PrecompactedRow.java (original)
+++ cassandra/branches/cassandra-0.7/src/java/org/apache/cassandra/io/PrecompactedRow.java Tue Feb 22 17:32:27 2011
@@ -67,7 +67,7 @@ public class PrecompactedRow extends Abs
}
boolean shouldPurge = major || !cfStore.isKeyInRemainingSSTables(key, sstables);
- if (rows.size() > 1 || shouldPurge)
+ if (rows.size() > 1 || shouldPurge || !rows.get(0).sstable.descriptor.isLatestVersion)
{
ColumnFamily cf = null;
for (SSTableIdentityIterator row : rows)