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/09/09 23:21:43 UTC
svn commit: r1167366 - in /cassandra/branches/cassandra-1.0: ./ contrib/
interface/thrift/gen-java/org/apache/cassandra/thrift/
src/java/org/apache/cassandra/db/ src/java/org/apache/cassandra/db/commitlog/
src/java/org/apache/cassandra/db/compaction/ s...
Author: jbellis
Date: Fri Sep 9 21:21:42 2011
New Revision: 1167366
URL: http://svn.apache.org/viewvc?rev=1167366&view=rev
Log:
merge #3171 from 1.0.0
Modified:
cassandra/branches/cassandra-1.0/ (props changed)
cassandra/branches/cassandra-1.0/contrib/ (props changed)
cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java (props changed)
cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java (props changed)
cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java (props changed)
cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java (props changed)
cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java (props changed)
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/RowIteratorFactory.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLogSegment.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableBoundedScanner.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableScanner.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/BufferedSegmentedFile.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/MmappedSegmentedFile.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SegmentedFile.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SequentialWriter.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/streaming/FileStreamTask.java
cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/tools/SSTableExport.java
cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java
Propchange: cassandra/branches/cassandra-1.0/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 9 21:21:42 2011
@@ -5,7 +5,7 @@
/cassandra/branches/cassandra-0.8.0:1125021-1130369
/cassandra/branches/cassandra-0.8.1:1101014-1125018
/cassandra/branches/cassandra-1.0:1167106,1167185
-/cassandra/branches/cassandra-1.0.0:1167104-1167318
+/cassandra/branches/cassandra-1.0.0:1167104-1167365
/cassandra/tags/cassandra-0.7.0-rc3:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1:1102511-1125020
/cassandra/trunk:1167085-1167102
Propchange: cassandra/branches/cassandra-1.0/contrib/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 9 21:21:42 2011
@@ -5,7 +5,7 @@
/cassandra/branches/cassandra-0.8.0/contrib:1125021-1130369
/cassandra/branches/cassandra-0.8.1/contrib:1101014-1125018
/cassandra/branches/cassandra-1.0/contrib:1167106,1167185
-/cassandra/branches/cassandra-1.0.0/contrib:1167104-1167318
+/cassandra/branches/cassandra-1.0.0/contrib:1167104-1167365
/cassandra/tags/cassandra-0.7.0-rc3/contrib:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/contrib:1102511-1125020
/cassandra/trunk/contrib:1167085-1167102
Propchange: cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 9 21:21:42 2011
@@ -5,7 +5,7 @@
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1101014-1125018
/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167106,1167185
-/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167104-1167318
+/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167104-1167365
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1102511-1125020
/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167085-1167102
Propchange: cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 9 21:21:42 2011
@@ -5,7 +5,7 @@
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1101014-1125018
/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167106,1167185
-/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167104-1167318
+/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167104-1167365
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1102511-1125020
/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167085-1167102
Propchange: cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 9 21:21:42 2011
@@ -5,7 +5,7 @@
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1101014-1125018
/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167106,1167185
-/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167104-1167318
+/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167104-1167365
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1102511-1125020
/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167085-1167102
Propchange: cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 9 21:21:42 2011
@@ -5,7 +5,7 @@
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1101014-1125018
/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167106,1167185
-/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167104-1167318
+/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167104-1167365
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1102511-1125020
/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167085-1167102
Propchange: cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Sep 9 21:21:42 2011
@@ -5,7 +5,7 @@
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1101014-1125018
/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167106,1167185
-/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167104-1167318
+/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167104-1167365
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1102511-1125020
/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167085-1167102
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/RowIteratorFactory.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/RowIteratorFactory.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/RowIteratorFactory.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/RowIteratorFactory.java Fri Sep 9 21:21:42 2011
@@ -18,15 +18,10 @@
package org.apache.cassandra.db;
import java.io.Closeable;
-import java.io.IOError;
-import java.io.IOException;
import java.util.*;
-import java.util.Map.Entry;
-import com.google.common.base.Function;
import com.google.common.base.Predicate;
import com.google.common.collect.AbstractIterator;
-import com.google.common.collect.Iterators;
import org.apache.cassandra.db.columniterator.IColumnIterator;
import org.apache.cassandra.db.filter.QueryFilter;
@@ -90,7 +85,7 @@ public class RowIteratorFactory
for (SSTableReader sstable : sstables)
{
- final SSTableScanner scanner = sstable.getScanner(RANGE_FILE_BUFFER_SIZE, filter);
+ final SSTableScanner scanner = sstable.getScanner(filter);
scanner.seekTo(startWith);
assert scanner instanceof Closeable; // otherwise we leak FDs
iterators.add(scanner);
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLog.java Fri Sep 9 21:21:42 2011
@@ -203,8 +203,7 @@ public class CommitLog implements Commit
{
final long segment = CommitLogSegment.idFromFilename(file.getName());
- int bufferSize = (int) Math.min(Math.max(file.length(), 1), 32 * 1024 * 1024);
- RandomAccessReader reader = RandomAccessReader.open(new File(file.getAbsolutePath()), bufferSize, true);
+ RandomAccessReader reader = RandomAccessReader.open(new File(file.getAbsolutePath()), true);
assert reader.length() <= Integer.MAX_VALUE;
try
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLogSegment.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLogSegment.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLogSegment.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/commitlog/CommitLogSegment.java Fri Sep 9 21:21:42 2011
@@ -92,7 +92,7 @@ public class CommitLogSegment
private static SequentialWriter createWriter(String file) throws IOException
{
- return SequentialWriter.open(new File(file), 128 * 1024, true);
+ return SequentialWriter.open(new File(file), true);
}
public ReplayPosition write(RowMutation rowMutation) throws IOException
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/AbstractCompactionIterable.java Fri Sep 9 21:21:42 2011
@@ -16,8 +16,6 @@ import org.apache.cassandra.utils.Thrott
public abstract class AbstractCompactionIterable implements Iterable<AbstractCompactedRow>, CompactionInfo.Holder
{
- public static final int FILE_BUFFER_SIZE = 1024 * 1024;
-
private static Logger logger = LoggerFactory.getLogger(CompactionIterable.class);
protected final OperationType type;
@@ -51,7 +49,7 @@ public abstract class AbstractCompaction
{
ArrayList<SSTableScanner> scanners = new ArrayList<SSTableScanner>();
for (SSTableReader sstable : sstables)
- scanners.add(sstable.getDirectScanner(FILE_BUFFER_SIZE));
+ scanners.add(sstable.getDirectScanner());
return scanners;
}
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionIterable.java Fri Sep 9 21:21:42 2011
@@ -70,7 +70,7 @@ public class CompactionIterable extends
{
ArrayList<SSTableScanner> scanners = new ArrayList<SSTableScanner>();
for (SSTableReader sstable : sstables)
- scanners.add(sstable.getDirectScanner(FILE_BUFFER_SIZE));
+ scanners.add(sstable.getDirectScanner());
return scanners;
}
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionManager.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionManager.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/db/compaction/CompactionManager.java Fri Sep 9 21:21:42 2011
@@ -699,7 +699,7 @@ public class CompactionManager implement
if (compactionFileLocation == null)
throw new IOException("disk full");
- SSTableScanner scanner = sstable.getDirectScanner(AbstractCompactionIterable.FILE_BUFFER_SIZE);
+ SSTableScanner scanner = sstable.getDirectScanner();
Collection<ByteBuffer> indexedColumns = cfs.indexManager.getIndexedColumns();
CleanupInfo ci = new CleanupInfo(sstable, scanner);
executor.beginCompaction(ci);
@@ -949,7 +949,7 @@ public class CompactionManager implement
{
ArrayList<SSTableScanner> scanners = new ArrayList<SSTableScanner>();
for (SSTableReader sstable : sstables)
- scanners.add(sstable.getDirectScanner(FILE_BUFFER_SIZE, range));
+ scanners.add(sstable.getDirectScanner(range));
return scanners;
}
}
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java Fri Sep 9 21:21:42 2011
@@ -31,6 +31,7 @@ import org.apache.cassandra.utils.FBUtil
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+// TODO refactor this to separate concept of "buffer to avoid lots of read() syscalls" and "compression buffer"
public class CompressedRandomAccessReader extends RandomAccessReader
{
private static final Logger logger = LoggerFactory.getLogger(CompressedRandomAccessReader.class);
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableBoundedScanner.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableBoundedScanner.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableBoundedScanner.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableBoundedScanner.java Fri Sep 9 21:21:42 2011
@@ -24,7 +24,6 @@ import java.util.Collections;
import java.util.Iterator;
import org.apache.cassandra.db.columniterator.IColumnIterator;
-import org.apache.cassandra.db.DecoratedKey;
import org.apache.cassandra.dht.Range;
import org.apache.cassandra.utils.Pair;
@@ -36,9 +35,9 @@ public class SSTableBoundedScanner exten
private final Iterator<Pair<Long, Long>> rangeIterator;
private Pair<Long, Long> currentRange;
- SSTableBoundedScanner(SSTableReader sstable, int bufferSize, boolean skipCache, Range range)
+ SSTableBoundedScanner(SSTableReader sstable, boolean skipCache, Range range)
{
- super(sstable, bufferSize, skipCache);
+ super(sstable, skipCache);
this.rangeIterator = sstable.getPositionsForRanges(Collections.singletonList(range)).iterator();
if (rangeIterator.hasNext())
{
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableReader.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableReader.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableReader.java Fri Sep 9 21:21:42 2011
@@ -675,34 +675,33 @@ public class SSTableReader extends SSTab
}
/**
- * @param bufferSize Buffer size in bytes for this Scanner.
+ *
* @param filter filter to use when reading the columns
* @return A Scanner for seeking over the rows of the SSTable.
*/
- public SSTableScanner getScanner(int bufferSize, QueryFilter filter)
+ public SSTableScanner getScanner(QueryFilter filter)
{
- return new SSTableScanner(this, filter, bufferSize);
+ return new SSTableScanner(this, filter);
}
/**
* Direct I/O SSTableScanner
- * @param bufferSize Buffer size in bytes for this Scanner.
* @return A Scanner for seeking over the rows of the SSTable.
*/
- public SSTableScanner getDirectScanner(int bufferSize)
+ public SSTableScanner getDirectScanner()
{
- return new SSTableScanner(this, bufferSize, true);
+ return new SSTableScanner(this, true);
}
/**
* Direct I/O SSTableScanner over a defined range of tokens.
- * @param bufferSize Buffer size in bytes for this Scanner.
+ *
* @param range the range of keys to cover
* @return A Scanner for seeking over the rows of the SSTable.
*/
- public SSTableScanner getDirectScanner(int bufferSize, Range range)
+ public SSTableScanner getDirectScanner(Range range)
{
- return new SSTableBoundedScanner(this, bufferSize, true, range);
+ return new SSTableBoundedScanner(this, true, range);
}
public FileDataInput getFileDataInput(DecoratedKey decoratedKey, int bufferSize)
@@ -711,7 +710,7 @@ public class SSTableReader extends SSTab
if (position < 0)
return null;
- return dfile.getSegment(position, bufferSize);
+ return dfile.getSegment(position);
}
/**
@@ -830,14 +829,9 @@ public class SSTableReader extends SSTab
public RandomAccessReader openDataReader(boolean skipIOCache) throws IOException
{
- return openDataReader(RandomAccessReader.DEFAULT_BUFFER_SIZE, skipIOCache);
- }
-
- public RandomAccessReader openDataReader(int bufferSize, boolean skipIOCache) throws IOException
- {
return compression
- ? CompressedRandomAccessReader.open(getFilename(), skipIOCache)
- : RandomAccessReader.open(new File(getFilename()), bufferSize, skipIOCache);
+ ? CompressedRandomAccessReader.open(getFilename(), skipIOCache)
+ : RandomAccessReader.open(new File(getFilename()), skipIOCache);
}
/**
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableScanner.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableScanner.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableScanner.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableScanner.java Fri Sep 9 21:21:42 2011
@@ -48,11 +48,11 @@ public class SSTableScanner implements C
/**
* @param sstable SSTable to scan.
*/
- SSTableScanner(SSTableReader sstable, int bufferSize, boolean skipCache)
+ SSTableScanner(SSTableReader sstable, boolean skipCache)
{
try
{
- this.file = sstable.openDataReader(bufferSize, skipCache);
+ this.file = sstable.openDataReader(skipCache);
}
catch (IOException e)
{
@@ -65,11 +65,11 @@ public class SSTableScanner implements C
* @param sstable SSTable to scan.
* @param filter filter to use when scanning the columns
*/
- SSTableScanner(SSTableReader sstable, QueryFilter filter, int bufferSize)
+ SSTableScanner(SSTableReader sstable, QueryFilter filter)
{
try
{
- this.file = sstable.openDataReader(bufferSize, false);
+ this.file = sstable.openDataReader(false);
}
catch (IOException e)
{
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java Fri Sep 9 21:21:42 2011
@@ -369,7 +369,7 @@ public class SSTableWriter extends SSTab
{
this.desc = desc;
this.partitioner = part;
- indexFile = SequentialWriter.open(new File(desc.filenameFor(SSTable.COMPONENT_INDEX)), 8 * 1024 * 1024, true);
+ indexFile = SequentialWriter.open(new File(desc.filenameFor(SSTable.COMPONENT_INDEX)), true);
builder = SegmentedFile.getBuilder(DatabaseDescriptor.getIndexAccessMode());
summary = new IndexSummary(keyCount);
bf = BloomFilter.getFilter(keyCount, 15);
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/BufferedSegmentedFile.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/BufferedSegmentedFile.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/BufferedSegmentedFile.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/BufferedSegmentedFile.java Fri Sep 9 21:21:42 2011
@@ -55,11 +55,11 @@ public class BufferedSegmentedFile exten
}
}
- public FileDataInput getSegment(long position, int bufferSize)
+ public FileDataInput getSegment(long position)
{
try
{
- RandomAccessReader file = RandomAccessReader.open(new File(path), bufferSize);
+ RandomAccessReader file = RandomAccessReader.open(new File(path));
file.seek(position);
return file;
}
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java Fri Sep 9 21:21:42 2011
@@ -56,7 +56,7 @@ public class CompressedSegmentedFile ext
}
}
- public FileDataInput getSegment(long position, int bufferSize)
+ public FileDataInput getSegment(long position)
{
try
{
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/MmappedSegmentedFile.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/MmappedSegmentedFile.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/MmappedSegmentedFile.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/MmappedSegmentedFile.java Fri Sep 9 21:21:42 2011
@@ -75,7 +75,7 @@ public class MmappedSegmentedFile extend
/**
* @return The segment containing the given position: must be closed after use.
*/
- public FileDataInput getSegment(long position, int bufferSize)
+ public FileDataInput getSegment(long position)
{
Segment segment = floor(position);
if (segment.right != null)
@@ -88,7 +88,7 @@ public class MmappedSegmentedFile extend
try
{
// FIXME: brafs are unbounded, so this segment will cover the rest of the file, rather than just the row
- RandomAccessReader file = RandomAccessReader.open(new File(path), bufferSize);
+ RandomAccessReader file = RandomAccessReader.open(new File(path));
file.seek(position);
return file;
}
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SegmentedFile.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SegmentedFile.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SegmentedFile.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SegmentedFile.java Fri Sep 9 21:21:42 2011
@@ -66,7 +66,7 @@ public abstract class SegmentedFile
return new CompressedSegmentedFile.Builder();
}
- public abstract FileDataInput getSegment(long position, int bufferSize);
+ public abstract FileDataInput getSegment(long position);
/**
* @return An Iterator over segments, beginning with the segment containing the given position: each segment must be closed after use.
@@ -137,7 +137,7 @@ public abstract class SegmentedFile
if (position >= length)
throw new NoSuchElementException();
- FileDataInput segment = getSegment(nextpos, bufferSize);
+ FileDataInput segment = getSegment(nextpos);
try
{
nextpos = nextpos + segment.bytesRemaining();
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SequentialWriter.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SequentialWriter.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SequentialWriter.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/io/util/SequentialWriter.java Fri Sep 9 21:21:42 2011
@@ -65,11 +65,6 @@ public class SequentialWriter extends Ou
return open(file, RandomAccessReader.DEFAULT_BUFFER_SIZE, false);
}
- public static SequentialWriter open(File file, int bufferSize) throws IOException
- {
- return open(file, bufferSize, false);
- }
-
public static SequentialWriter open(File file, boolean skipIOCache) throws IOException
{
return open(file, RandomAccessReader.DEFAULT_BUFFER_SIZE, skipIOCache);
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/streaming/FileStreamTask.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/streaming/FileStreamTask.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/streaming/FileStreamTask.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/streaming/FileStreamTask.java Fri Sep 9 21:21:42 2011
@@ -49,8 +49,7 @@ public class FileStreamTask extends Wrap
{
private static Logger logger = LoggerFactory.getLogger(FileStreamTask.class);
- // 10MB chunks
- public static final int CHUNK_SIZE = 10*1024*1024;
+ public static final int CHUNK_SIZE = 64 * 1024;
// around 10 minutes at the default rpctimeout
public static final int MAX_CONNECT_ATTEMPTS = 8;
@@ -127,9 +126,10 @@ public class FileStreamTask extends Wrap
if (header.file == null)
return;
+ // TODO just use a raw RandomAccessFile since we're managing our own buffer here
RandomAccessReader file = (header.file.sstable.compression) // try to skip kernel page cache if possible
- ? CompressedRandomAccessReader.open(header.file.getFilename(), true)
- : RandomAccessReader.open(new File(header.file.getFilename()), CHUNK_SIZE, true);
+ ? CompressedRandomAccessReader.open(header.file.getFilename(), true)
+ : RandomAccessReader.open(new File(header.file.getFilename()), true);
// setting up data compression stream
output = new LZFOutputStream(output);
Modified: cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/tools/SSTableExport.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/tools/SSTableExport.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/tools/SSTableExport.java (original)
+++ cassandra/branches/cassandra-1.0/src/java/org/apache/cassandra/tools/SSTableExport.java Fri Sep 9 21:21:42 2011
@@ -31,7 +31,6 @@ import org.apache.cassandra.config.Schem
import org.apache.cassandra.db.*;
import org.apache.cassandra.db.index.keys.KeysIndex;
import org.apache.cassandra.db.marshal.AbstractType;
-import org.apache.cassandra.io.util.RandomAccessReader;
import org.apache.cassandra.service.StorageService;
import org.apache.commons.cli.*;
@@ -238,7 +237,7 @@ public class SSTableExport
public static void export(String ssTableFile, PrintStream outs, Collection<String> toExport, String[] excludes) throws IOException
{
SSTableReader reader = SSTableReader.open(Descriptor.fromFilename(ssTableFile));
- SSTableScanner scanner = reader.getDirectScanner(RandomAccessReader.DEFAULT_BUFFER_SIZE);
+ SSTableScanner scanner = reader.getDirectScanner();
IPartitioner<?> partitioner = StorageService.getPartitioner();
@@ -295,7 +294,7 @@ public class SSTableExport
SSTableIdentityIterator row;
- SSTableScanner scanner = reader.getDirectScanner(RandomAccessReader.DEFAULT_BUFFER_SIZE);
+ SSTableScanner scanner = reader.getDirectScanner();
outs.println("{");
Modified: cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java?rev=1167366&r1=1167365&r2=1167366&view=diff
==============================================================================
--- cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java (original)
+++ cassandra/branches/cassandra-1.0/test/unit/org/apache/cassandra/io/sstable/SSTableUtils.java Fri Sep 9 21:21:42 2011
@@ -32,7 +32,6 @@ import org.apache.cassandra.db.ColumnFam
import org.apache.cassandra.db.DecoratedKey;
import org.apache.cassandra.db.IColumn;
import org.apache.cassandra.db.columniterator.IColumnIterator;
-import org.apache.cassandra.io.util.DataOutputBuffer;
import org.apache.cassandra.utils.ByteBufferUtil;
import org.apache.cassandra.Util;
@@ -78,8 +77,8 @@ public class SSTableUtils
public static void assertContentEquals(SSTableReader lhs, SSTableReader rhs) throws IOException
{
- SSTableScanner slhs = lhs.getDirectScanner(2048);
- SSTableScanner srhs = rhs.getDirectScanner(2048);
+ SSTableScanner slhs = lhs.getDirectScanner();
+ SSTableScanner srhs = rhs.getDirectScanner();
while (slhs.hasNext())
{
IColumnIterator ilhs = slhs.next();