Author: jbellis
Date: Mon Jul 19 17:33:40 2010
New Revision: 965568
URL: http://svn.apache.org/viewvc?rev=965568&view=rev
Log:
hand-assembled sstables could contain garbage data since we were writing the
entire buffer contents. copy just the valid data to a separate byte[] first.
patch by jbellis; reviewed by Stu Hood for CASSANDRA-1299
Modified:
cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java
Modified:
cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java?rev=965568&r1=965567&r2=965568&view=diff
==============================================================================
--- cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java
(original)
+++ cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java
Mon Jul 19 17:33:40 2010
@@ -21,12 +21,11 @@ package org.apache.cassandra.io.sstable;
import java.io.File;
import java.io.IOException;
-
import java.util.*;
import org.apache.cassandra.db.*;
-import org.apache.cassandra.service.StorageService;
import org.apache.cassandra.io.util.DataOutputBuffer;
+import org.apache.cassandra.service.StorageService;
public class SSTableUtils
{
@@ -78,7 +77,7 @@ public class SSTableUtils
{
DataOutputBuffer buffer = new DataOutputBuffer();
ColumnFamily.serializer().serializeWithIndexes(entry.getValue(),
buffer);
- map.put(entry.getKey().getBytes(), buffer.getData());
+ map.put(entry.getKey().getBytes(), Arrays.copyOf(buffer.getData(),
buffer.getLength()));
}
return writeRawSSTable(TABLENAME, CFNAME, map);
}