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/06/05 16:33:37 UTC

svn commit: r1132420 - in /cassandra/branches/cassandra-0.8: src/java/org/apache/cassandra/cache/ src/java/org/apache/cassandra/cli/ src/java/org/apache/cassandra/db/ src/java/org/apache/cassandra/db/compaction/ src/java/org/apache/cassandra/db/migrati...

Author: jbellis
Date: Sun Jun  5 14:33:36 2011
New Revision: 1132420

URL: http://svn.apache.org/viewvc?rev=1132420&view=rev
Log:
move compaction code into db.compaction package

Added:
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
      - copied, changed from r1131292, cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManager.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManagerMBean.java
      - copied, changed from r1131292, cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManagerMBean.java
    cassandra/branches/cassandra-0.8/test/long/org/apache/cassandra/db/compaction/
    cassandra/branches/cassandra-0.8/test/long/org/apache/cassandra/db/compaction/LongCompactionSpeedTest.java
Removed:
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManager.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManagerMBean.java
    cassandra/branches/cassandra-0.8/test/long/org/apache/cassandra/db/LongCompactionSpeedTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/CompactionsPurgeTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/CompactionsTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/OneCompactionTest.java
Modified:
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cache/AutoSavingCache.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cli/CliClient.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/HintedHandOffManager.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropKeyspace.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/io/CompactionIterator.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AbstractCassandraDaemon.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AntiEntropyService.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/streaming/StreamInSession.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeCmd.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeProbe.java
    cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/utils/StatusLogger.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/Util.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/CleanupTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/KeyCacheTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RemoveSuperColumnTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RowCacheTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/ScrubTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/TableTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/LazilyCompactedRowTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableReaderTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterCommutativeTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterTest.java
    cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cache/AutoSavingCache.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cache/AutoSavingCache.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cache/AutoSavingCache.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cache/AutoSavingCache.java Sun Jun  5 14:33:36 2011
@@ -33,7 +33,7 @@ import org.slf4j.LoggerFactory;
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.DecoratedKey;
 import org.apache.cassandra.io.CompactionInfo;
 import org.apache.cassandra.io.CompactionType;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cli/CliClient.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cli/CliClient.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cli/CliClient.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/cli/CliClient.java Sun Jun  5 14:33:36 2011
@@ -33,7 +33,7 @@ import org.antlr.runtime.tree.Tree;
 import org.apache.cassandra.auth.SimpleAuthenticator;
 import org.apache.cassandra.config.ConfigurationException;
 import org.apache.cassandra.db.ColumnFamilyStoreMBean;
-import org.apache.cassandra.db.CompactionManagerMBean;
+import org.apache.cassandra.db.compaction.CompactionManagerMBean;
 import org.apache.cassandra.db.marshal.*;
 import org.apache.cassandra.io.CompactionInfo;
 import org.apache.cassandra.io.CompactionType;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/ColumnFamilyStore.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/ColumnFamilyStore.java Sun Jun  5 14:33:36 2011
@@ -53,6 +53,7 @@ import org.apache.cassandra.config.Datab
 import org.apache.cassandra.db.columniterator.IColumnIterator;
 import org.apache.cassandra.db.commitlog.CommitLog;
 import org.apache.cassandra.db.commitlog.ReplayPosition;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.filter.*;
 import org.apache.cassandra.db.marshal.AbstractType;
 import org.apache.cassandra.db.marshal.BytesType;
@@ -923,7 +924,7 @@ public class ColumnFamilyStore implement
      * Add up all the files sizes this is the worst case file
      * size for compaction of all the list of files given.
      */
-    long getExpectedCompactedFileSize(Iterable<SSTableReader> sstables)
+    public long getExpectedCompactedFileSize(Iterable<SSTableReader> sstables)
     {
         long expectedFileSize = 0;
         for (SSTableReader sstable : sstables)
@@ -937,7 +938,7 @@ public class ColumnFamilyStore implement
     /*
      *  Find the maximum size file in the list .
      */
-    SSTableReader getMaxSizeFile(Iterable<SSTableReader> sstables)
+    public SSTableReader getMaxSizeFile(Iterable<SSTableReader> sstables)
     {
         long maxSize = 0L;
         SSTableReader maxFile = null;
@@ -963,7 +964,7 @@ public class ColumnFamilyStore implement
         CompactionManager.instance.performScrub(ColumnFamilyStore.this);
     }
 
-    void markCompacted(Collection<SSTableReader> sstables)
+    public void markCompacted(Collection<SSTableReader> sstables)
     {
         data.markCompacted(sstables);
     }
@@ -973,7 +974,7 @@ public class ColumnFamilyStore implement
         return data.getSSTables().equals(sstables);
     }
 
-    void replaceCompactedSSTables(Collection<SSTableReader> sstables, Iterable<SSTableReader> replacements)
+    public void replaceCompactedSSTables(Collection<SSTableReader> sstables, Iterable<SSTableReader> replacements)
     {
         data.replaceCompactedSSTables(sstables, replacements);
     }
@@ -1054,7 +1055,7 @@ public class ColumnFamilyStore implement
     /**
      * Package protected for access from the CompactionManager.
      */
-    DataTracker getDataTracker()
+    public DataTracker getDataTracker()
     {
         return data;
     }

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/HintedHandOffManager.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/HintedHandOffManager.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/HintedHandOffManager.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/HintedHandOffManager.java Sun Jun  5 14:33:36 2011
@@ -40,6 +40,7 @@ import javax.management.MBeanServer;
 import javax.management.ObjectName;
 import org.apache.cassandra.concurrent.JMXEnabledThreadPoolExecutor;
 import org.apache.cassandra.config.DatabaseDescriptor;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.filter.QueryFilter;
 import org.apache.cassandra.db.filter.QueryPath;
 import org.apache.cassandra.dht.IPartitioner;

Copied: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManager.java (from r1131292, cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManager.java)
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManager.java?p2=cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManager.java&p1=cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManager.java&r1=1131292&r2=1132420&rev=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManager.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManager.java Sun Jun  5 14:33:36 2011
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.cassandra.db;
+package org.apache.cassandra.db.compaction;
 
 import java.io.File;
 import java.io.IOError;
@@ -42,20 +42,16 @@ import org.apache.cassandra.cache.AutoSa
 import org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor;
 import org.apache.cassandra.concurrent.NamedThreadFactory;
 import org.apache.cassandra.config.DatabaseDescriptor;
+import org.apache.cassandra.db.*;
 import org.apache.cassandra.dht.Range;
 import org.apache.cassandra.io.*;
 import org.apache.cassandra.io.sstable.*;
 import org.apache.cassandra.io.util.BufferedRandomAccessFile;
 import org.apache.cassandra.io.util.FileUtils;
-import org.apache.cassandra.io.util.MemoryInputStream;
 import org.apache.cassandra.service.AntiEntropyService;
 import org.apache.cassandra.service.StorageService;
 import org.apache.cassandra.streaming.OperationType;
-import org.apache.cassandra.utils.ByteBufferUtil;
-import org.apache.cassandra.utils.FBUtilities;
-import org.apache.cassandra.utils.NodeId;
-import org.apache.cassandra.utils.Pair;
-import org.apache.cassandra.utils.WrappedRunnable;
+import org.apache.cassandra.utils.*;
 import org.cliffc.high_scale_lib.NonBlockingHashMap;
 
 /**
@@ -520,7 +516,7 @@ public class CompactionManager implement
      * For internal use and testing only.  The rest of the system should go through the submit* methods,
      * which are properly serialized.
      */
-    int doCompactionWithoutSizeEstimation(ColumnFamilyStore cfs, Collection<SSTableReader> sstables, int gcBefore, String compactionFileLocation) throws IOException
+    public int doCompactionWithoutSizeEstimation(ColumnFamilyStore cfs, Collection<SSTableReader> sstables, int gcBefore, String compactionFileLocation) throws IOException
     {
         // The collection of sstables passed may be empty (but not null); even if
         // it is not empty, it may compact down to nothing if all rows are deleted.
@@ -634,31 +630,26 @@ public class CompactionManager implement
     private void doScrub(ColumnFamilyStore cfs, Collection<SSTableReader> sstables) throws IOException
     {
         assert !cfs.isIndex();
+
         for (final SSTableReader sstable : sstables)
-            scrubOne(cfs, sstable);
-    }
+        {
+            logger.info("Scrubbing " + sstable);
+            CompactionController controller = new CompactionController(cfs, Collections.singletonList(sstable), getDefaultGcBefore(cfs), true);
 
-    private void scrubOne(ColumnFamilyStore cfs, SSTableReader sstable) throws IOException
-    {
-        logger.info("Scrubbing " + sstable);
-        CompactionController controller = new CompactionController(cfs, Collections.singletonList(sstable), getDefaultGcBefore(cfs), true);
+            // Calculate the expected compacted filesize
+            String compactionFileLocation = cfs.table.getDataFileLocation(sstable.length());
+            if (compactionFileLocation == null)
+                throw new IOException("disk full");
+            int expectedBloomFilterSize = Math.max(DatabaseDescriptor.getIndexInterval(),
+                                                   (int)(SSTableReader.getApproximateKeyCount(Arrays.asList(sstable))));
 
-        // Calculate the expected compacted filesize
-        String compactionFileLocation = cfs.table.getDataFileLocation(sstable.length());
-        if (compactionFileLocation == null)
-            throw new IOException("disk full");
-        int expectedBloomFilterSize = Math.max(DatabaseDescriptor.getIndexInterval(),
-                                               (int)(SSTableReader.getApproximateKeyCount(Arrays.asList(sstable))));
-
-        // loop through each row, deserializing to check for damage.
-        // we'll also loop through the index at the same time, using the position from the index to recover if the
-        // row header (key or data size) is corrupt. (This means our position in the index file will be one row
-        // "ahead" of the data file.)
-        final BufferedRandomAccessFile dataFile = BufferedRandomAccessFile.getUncachingReader(sstable.getFilename());
-        String indexFilename = sstable.descriptor.filenameFor(Component.PRIMARY_INDEX);
-        BufferedRandomAccessFile indexFile = BufferedRandomAccessFile.getUncachingReader(indexFilename);
-        try
-        {
+            // loop through each row, deserializing to check for damage.
+            // we'll also loop through the index at the same time, using the position from the index to recover if the
+            // row header (key or data size) is corrupt. (This means our position in the index file will be one row
+            // "ahead" of the data file.)
+            final BufferedRandomAccessFile dataFile = BufferedRandomAccessFile.getUncachingReader(sstable.getFilename());
+            String indexFilename = sstable.descriptor.filenameFor(Component.PRIMARY_INDEX);
+            BufferedRandomAccessFile indexFile = BufferedRandomAccessFile.getUncachingReader(indexFilename);
             ByteBuffer nextIndexKey = ByteBufferUtil.readWithShortLength(indexFile);
             {
                 // throw away variable so we don't have a side effect in the assert
@@ -797,11 +788,6 @@ public class CompactionManager implement
                     logger.info("Scrub of " + sstable + " complete; looks like all " + emptyRows + " rows were tombstoned");
             }
         }
-        finally
-        {
-            FileUtils.closeQuietly(dataFile);
-            FileUtils.closeQuietly(indexFile);
-        }
     }
 
     private void throwIfFatal(Throwable th)
@@ -1150,30 +1136,6 @@ public class CompactionManager implement
         return executor.submit(runnable);
     }
 
-    public Future<?> submitTruncate(final ColumnFamilyStore main, final long truncatedAt)
-    {
-        Runnable runnable = new WrappedRunnable()
-        {
-            public void runMayThrow() throws InterruptedException, IOException
-            {
-                for (ColumnFamilyStore cfs : main.concatWithIndexes())
-                {
-                    List<SSTableReader> truncatedSSTables = new ArrayList<SSTableReader>();
-                    for (SSTableReader sstable : cfs.getSSTables())
-                    {
-                        if (!sstable.newSince(truncatedAt))
-                            truncatedSSTables.add(sstable);
-                    }
-                    cfs.markCompacted(truncatedSSTables);
-                }
-
-                main.invalidateRowCache();
-            }
-        };
-
-        return executor.submit(runnable);
-    }
-
     private static int getDefaultGcBefore(ColumnFamilyStore cfs)
     {
         return cfs.isIndex()

Copied: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManagerMBean.java (from r1131292, cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManagerMBean.java)
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManagerMBean.java?p2=cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManagerMBean.java&p1=cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManagerMBean.java&r1=1131292&r2=1132420&rev=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/CompactionManagerMBean.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/compaction/CompactionManagerMBean.java Sun Jun  5 14:33:36 2011
@@ -16,7 +16,7 @@
  * limitations under the License.
  */
 
-package org.apache.cassandra.db;
+package org.apache.cassandra.db.compaction;
 
 import java.util.List;
 

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java Sun Jun  5 14:33:36 2011
@@ -9,7 +9,7 @@ import org.apache.cassandra.config.Confi
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.config.KSMetaData;
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.Table;
 import org.apache.cassandra.utils.FBUtilities;
 import org.apache.cassandra.utils.UUIDGen;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropKeyspace.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropKeyspace.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropKeyspace.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/migration/DropKeyspace.java Sun Jun  5 14:33:36 2011
@@ -25,7 +25,7 @@ import org.apache.cassandra.config.Confi
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.config.KSMetaData;
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.HintedHandOffManager;
 import org.apache.cassandra.db.Table;
 import org.apache.cassandra.utils.FBUtilities;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/io/CompactionIterator.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/io/CompactionIterator.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/io/CompactionIterator.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/io/CompactionIterator.java Sun Jun  5 14:33:36 2011
@@ -33,7 +33,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.cassandra.config.DatabaseDescriptor;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.io.sstable.SSTableIdentityIterator;
 import org.apache.cassandra.io.sstable.SSTableReader;
 import org.apache.cassandra.io.sstable.SSTableScanner;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AbstractCassandraDaemon.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AbstractCassandraDaemon.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AbstractCassandraDaemon.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AbstractCassandraDaemon.java Sun Jun  5 14:33:36 2011
@@ -39,7 +39,7 @@ import org.apache.cassandra.config.CFMet
 import org.apache.cassandra.config.ConfigurationException;
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.SystemTable;
 import org.apache.cassandra.db.Table;
 import org.apache.cassandra.db.commitlog.CommitLog;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AntiEntropyService.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AntiEntropyService.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AntiEntropyService.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/service/AntiEntropyService.java Sun Jun  5 14:33:36 2011
@@ -35,7 +35,7 @@ import org.apache.cassandra.concurrent.S
 import org.apache.cassandra.concurrent.StageManager;
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.DecoratedKey;
 import org.apache.cassandra.db.Table;
 import org.apache.cassandra.dht.AbstractBounds;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/streaming/StreamInSession.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/streaming/StreamInSession.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/streaming/StreamInSession.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/streaming/StreamInSession.java Sun Jun  5 14:33:36 2011
@@ -30,7 +30,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.Table;
 import org.apache.cassandra.io.sstable.SSTableReader;
 import org.apache.cassandra.net.MessagingService;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeCmd.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeCmd.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeCmd.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeCmd.java Sun Jun  5 14:33:36 2011
@@ -39,7 +39,7 @@ import org.apache.commons.cli.*;
 import org.apache.cassandra.cache.InstrumentingCacheMBean;
 import org.apache.cassandra.concurrent.IExecutorMBean;
 import org.apache.cassandra.db.ColumnFamilyStoreMBean;
-import org.apache.cassandra.db.CompactionManagerMBean;
+import org.apache.cassandra.db.compaction.CompactionManagerMBean;
 import org.apache.cassandra.dht.Token;
 import org.apache.cassandra.io.CompactionInfo;
 import org.apache.cassandra.net.MessagingServiceMBean;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeProbe.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeProbe.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeProbe.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/tools/NodeProbe.java Sun Jun  5 14:33:36 2011
@@ -45,8 +45,8 @@ import org.apache.cassandra.cache.Instru
 import org.apache.cassandra.concurrent.IExecutorMBean;
 import org.apache.cassandra.config.ConfigurationException;
 import org.apache.cassandra.db.ColumnFamilyStoreMBean;
-import org.apache.cassandra.db.CompactionManager;
-import org.apache.cassandra.db.CompactionManagerMBean;
+import org.apache.cassandra.db.compaction.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManagerMBean;
 import org.apache.cassandra.dht.Token;
 import org.apache.cassandra.locator.EndpointSnitchInfoMBean;
 import org.apache.cassandra.net.MessagingServiceMBean;

Modified: cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/utils/StatusLogger.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/utils/StatusLogger.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/utils/StatusLogger.java (original)
+++ cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/utils/StatusLogger.java Sun Jun  5 14:33:36 2011
@@ -35,7 +35,7 @@ import org.slf4j.LoggerFactory;
 
 import org.apache.cassandra.concurrent.IExecutorMBean;
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.net.MessagingService;
 
 public class StatusLogger

Added: cassandra/branches/cassandra-0.8/test/long/org/apache/cassandra/db/compaction/LongCompactionSpeedTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/long/org/apache/cassandra/db/compaction/LongCompactionSpeedTest.java?rev=1132420&view=auto
==============================================================================
--- cassandra/branches/cassandra-0.8/test/long/org/apache/cassandra/db/compaction/LongCompactionSpeedTest.java (added)
+++ cassandra/branches/cassandra-0.8/test/long/org/apache/cassandra/db/compaction/LongCompactionSpeedTest.java Sun Jun  5 14:33:36 2011
@@ -0,0 +1,202 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*    http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied.  See the License for the
+* specific language governing permissions and limitations
+* under the License.
+*/
+package org.apache.cassandra.db.compaction;
+
+import java.io.IOException;
+import java.net.InetAddress;
+import java.nio.ByteBuffer;
+import java.util.*;
+
+import org.junit.Test;
+import org.apache.cassandra.CleanupHelper;
+import org.apache.cassandra.Util;
+import org.apache.cassandra.db.*;
+import org.apache.cassandra.db.compaction.CompactionManager;
+import org.apache.cassandra.config.DatabaseDescriptor;
+import org.apache.cassandra.io.util.FileUtils;
+import org.apache.cassandra.io.sstable.Component;
+import org.apache.cassandra.io.sstable.SSTableReader;
+import org.apache.cassandra.io.sstable.SSTableUtils;
+import org.apache.cassandra.io.sstable.SSTableWriter;
+import org.apache.cassandra.streaming.OperationType;
+import org.apache.cassandra.utils.ByteBufferUtil;
+import org.apache.cassandra.utils.FBUtilities;
+import org.apache.cassandra.utils.NodeId;
+import static org.apache.cassandra.db.context.CounterContext.ContextState;
+
+import static junit.framework.Assert.assertEquals;
+
+public class LongCompactionSpeedTest extends CleanupHelper
+{
+    public static final String TABLE1 = "Keyspace1";
+
+    /**
+     * Test compaction with a very wide row.
+     */
+    @Test
+    public void testCompactionWide() throws Exception
+    {
+        testCompaction(2, 1, 200000);
+    }
+
+    /**
+     * Test compaction with lots of skinny rows.
+     */
+    @Test
+    public void testCompactionSlim() throws Exception
+    {
+        testCompaction(2, 200000, 1);
+    }
+
+    /**
+     * Test compaction with lots of small sstables.
+     */
+    @Test
+    public void testCompactionMany() throws Exception
+    {
+        testCompaction(100, 800, 5);
+    }
+
+    /**
+     * Test aes counter repair with a very wide row.
+     */
+    @Test
+    public void testAESCountersRepairWide() throws Exception
+    {
+        testAESCountersRepair(2, 1, 500000);
+    }
+
+    /**
+     * Test aes counter repair with lots of skinny rows.
+     */
+    @Test
+    public void testAESCountersRepairSlim() throws Exception
+    {
+        testAESCountersRepair(2, 500000, 1);
+    }
+
+    /**
+     * Test aes counter repair with lots of small sstables.
+     */
+    @Test
+    public void testAESCounterRepairMany() throws Exception
+    {
+        testAESCountersRepair(100, 1000, 5);
+    }
+
+    protected void testCompaction(int sstableCount, int rowsPerSSTable, int colsPerRow) throws Exception
+    {
+        CompactionManager.instance.disableAutoCompaction();
+
+        Table table = Table.open(TABLE1);
+        ColumnFamilyStore store = table.getColumnFamilyStore("Standard1");
+
+        ArrayList<SSTableReader> sstables = new ArrayList<SSTableReader>();
+        for (int k = 0; k < sstableCount; k++)
+        {
+            SortedMap<String,ColumnFamily> rows = new TreeMap<String,ColumnFamily>();
+            for (int j = 0; j < rowsPerSSTable; j++)
+            {
+                String key = String.valueOf(j);
+                IColumn[] cols = new IColumn[colsPerRow];
+                for (int i = 0; i < colsPerRow; i++)
+                {
+                    // last sstable has highest timestamps
+                    cols[i] = Util.column(String.valueOf(i), String.valueOf(i), k);
+                }
+                rows.put(key, SSTableUtils.createCF(Long.MIN_VALUE, Integer.MIN_VALUE, cols));
+            }
+            SSTableReader sstable = SSTableUtils.prepare().write(rows);
+            sstables.add(sstable);
+            store.addSSTable(sstable);
+        }
+
+        // give garbage collection a bit of time to catch up
+        Thread.sleep(1000);
+
+        long start = System.currentTimeMillis();
+        CompactionManager.instance.doCompaction(store, sstables, (int) (System.currentTimeMillis() / 1000) - DatabaseDescriptor.getCFMetaData(TABLE1, "Standard1").getGcGraceSeconds());
+        System.out.println(String.format("%s: sstables=%d rowsper=%d colsper=%d: %d ms",
+                                         this.getClass().getName(),
+                                         sstableCount,
+                                         rowsPerSSTable,
+                                         colsPerRow,
+                                         System.currentTimeMillis() - start));
+    }
+
+    protected void testAESCountersRepair(int sstableCount, final int rowsPerSSTable, final int colsPerRow) throws Exception
+    {
+        final String cfName = "Counter1";
+        CompactionManager.instance.disableAutoCompaction();
+
+        ArrayList<SSTableReader> sstables = new ArrayList<SSTableReader>();
+        for (int k = 0; k < sstableCount; k++)
+        {
+            final int sstableNum = k;
+            SSTableReader sstable = SSTableUtils.prepare().ks(TABLE1).cf(cfName).write(rowsPerSSTable, new SSTableUtils.Appender(){
+                int written = 0;
+                public boolean append(SSTableWriter writer) throws IOException
+                {
+                    if (written > rowsPerSSTable)
+                        return false;
+
+                    DecoratedKey key = Util.dk(String.format("%020d", written));
+                    ColumnFamily cf = ColumnFamily.create(TABLE1, cfName);
+                    for (int i = 0; i < colsPerRow; i++)
+                        cf.addColumn(createCounterColumn(String.valueOf(i)));
+                    writer.append(key, cf);
+                    written++;
+                    return true;
+                }
+            });
+
+            // whack the index to trigger the recover
+            FileUtils.deleteWithConfirm(sstable.descriptor.filenameFor(Component.PRIMARY_INDEX));
+            FileUtils.deleteWithConfirm(sstable.descriptor.filenameFor(Component.FILTER));
+
+            sstables.add(sstable);
+        }
+
+        // give garbage collection a bit of time to catch up
+        Thread.sleep(1000);
+
+        long start = System.currentTimeMillis();
+
+        for (SSTableReader sstable : sstables)
+            CompactionManager.instance.submitSSTableBuild(sstable.descriptor, OperationType.AES).get();
+
+        System.out.println(String.format("%s: sstables=%d rowsper=%d colsper=%d: %d ms",
+                                         this.getClass().getName(),
+                                         sstableCount,
+                                         rowsPerSSTable,
+                                         colsPerRow,
+                                         System.currentTimeMillis() - start));
+    }
+
+    protected CounterColumn createCounterColumn(String name)
+    {
+        ContextState context = ContextState.allocate(4, 1);
+        context.writeElement(NodeId.fromInt(1), 4L, 2L, true);
+        context.writeElement(NodeId.fromInt(2), 4L, 2L);
+        context.writeElement(NodeId.fromInt(4), 3L, 3L);
+        context.writeElement(NodeId.fromInt(8), 2L, 4L);
+
+        return new CounterColumn(ByteBufferUtil.bytes(name), context.context, 0L);
+    }
+}

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/Util.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/Util.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/Util.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/Util.java Sun Jun  5 14:33:36 2011
@@ -31,6 +31,7 @@ import java.util.concurrent.ExecutionExc
 import java.util.concurrent.Future;
 
 import org.apache.cassandra.db.*;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.columniterator.IdentityQueryFilter;
 import org.apache.cassandra.db.filter.QueryFilter;
 import org.apache.cassandra.db.filter.QueryPath;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/CleanupTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/CleanupTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/CleanupTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/CleanupTest.java Sun Jun  5 14:33:36 2011
@@ -34,6 +34,7 @@ import org.junit.Test;
 import org.apache.cassandra.CleanupHelper;
 import org.apache.cassandra.Util;
 import org.apache.cassandra.config.ConfigurationException;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.columniterator.IdentityQueryFilter;
 import org.apache.cassandra.db.filter.IFilter;
 import org.apache.cassandra.db.filter.QueryPath;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/KeyCacheTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/KeyCacheTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/KeyCacheTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/KeyCacheTest.java Sun Jun  5 14:33:36 2011
@@ -31,6 +31,7 @@ import org.junit.Test;
 import org.apache.cassandra.CleanupHelper;
 import org.apache.cassandra.Util;
 import org.apache.cassandra.db.filter.QueryPath;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.io.sstable.Descriptor;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.cassandra.utils.Pair;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java Sun Jun  5 14:33:36 2011
@@ -32,6 +32,7 @@ import org.slf4j.LoggerFactory;
 import static org.apache.cassandra.Util.column;
 import org.apache.cassandra.CleanupHelper;
 import org.apache.cassandra.Util;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.commitlog.CommitLog;
 import org.apache.cassandra.utils.ByteBufferUtil;
 

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RemoveSuperColumnTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RemoveSuperColumnTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RemoveSuperColumnTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RemoveSuperColumnTest.java Sun Jun  5 14:33:36 2011
@@ -28,6 +28,7 @@ import static org.junit.Assert.assertNul
 import static org.junit.Assert.assertEquals;
 
 import org.apache.cassandra.Util;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.filter.QueryFilter;
 import org.apache.cassandra.db.filter.QueryPath;
 import static org.apache.cassandra.Util.addMutation;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RowCacheTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RowCacheTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RowCacheTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/RowCacheTest.java Sun Jun  5 14:33:36 2011
@@ -26,6 +26,7 @@ import org.junit.Test;
 import org.apache.cassandra.CleanupHelper;
 import org.apache.cassandra.Util;
 import org.apache.cassandra.db.filter.QueryPath;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.utils.ByteBufferUtil;
 
 public class RowCacheTest extends CleanupHelper

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/ScrubTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/ScrubTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/ScrubTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/ScrubTest.java Sun Jun  5 14:33:36 2011
@@ -33,6 +33,7 @@ import org.apache.cassandra.Util;
 import org.apache.cassandra.config.ConfigurationException;
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.db.columniterator.IdentityQueryFilter;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.io.util.FileUtils;
 import org.apache.cassandra.utils.ByteBufferUtil;
 import org.apache.cassandra.utils.CLibrary;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/TableTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/TableTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/TableTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/db/TableTest.java Sun Jun  5 14:33:36 2011
@@ -33,6 +33,7 @@ import org.junit.Test;
 
 import static junit.framework.Assert.*;
 import org.apache.cassandra.CleanupHelper;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.filter.QueryFilter;
 import org.apache.cassandra.utils.WrappedRunnable;
 import static org.apache.cassandra.Util.column;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/LazilyCompactedRowTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/LazilyCompactedRowTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/LazilyCompactedRowTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/LazilyCompactedRowTest.java Sun Jun  5 14:33:36 2011
@@ -35,7 +35,7 @@ import org.apache.cassandra.CleanupHelpe
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.db.ColumnFamily;
 import org.apache.cassandra.db.ColumnFamilyStore;
-import org.apache.cassandra.db.CompactionManager;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.IColumn;
 import org.apache.cassandra.db.RowMutation;
 import org.apache.cassandra.db.Table;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableReaderTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableReaderTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableReaderTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableReaderTest.java Sun Jun  5 14:33:36 2011
@@ -33,6 +33,7 @@ import org.junit.Test;
 import org.apache.cassandra.CleanupHelper;
 import org.apache.cassandra.config.DatabaseDescriptor;
 import org.apache.cassandra.db.*;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.filter.QueryPath;
 import org.apache.cassandra.dht.Range;
 import org.apache.cassandra.dht.Token;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterCommutativeTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterCommutativeTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterCommutativeTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterCommutativeTest.java Sun Jun  5 14:33:36 2011
@@ -35,6 +35,7 @@ import java.util.concurrent.ExecutionExc
 import org.apache.cassandra.CleanupHelper;
 import org.apache.cassandra.Util;
 import org.apache.cassandra.db.*;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.context.CounterContext;
 import org.apache.cassandra.db.marshal.CounterColumnType;
 import org.apache.cassandra.io.util.BufferedRandomAccessFile;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/io/sstable/SSTableWriterTest.java Sun Jun  5 14:33:36 2011
@@ -33,6 +33,7 @@ import java.util.concurrent.ExecutionExc
 
 import org.apache.cassandra.CleanupHelper;
 import org.apache.cassandra.db.*;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.filter.IFilter;
 import org.apache.cassandra.db.columniterator.IdentityQueryFilter;
 import org.apache.cassandra.db.filter.QueryPath;

Modified: cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java
URL: http://svn.apache.org/viewvc/cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java?rev=1132420&r1=1132419&r2=1132420&view=diff
==============================================================================
--- cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java (original)
+++ cassandra/branches/cassandra-0.8/test/unit/org/apache/cassandra/streaming/StreamingTransferTest.java Sun Jun  5 14:33:36 2011
@@ -30,6 +30,7 @@ import org.apache.cassandra.CleanupHelpe
 import org.apache.cassandra.Util;
 import org.apache.cassandra.config.CFMetaData;
 import org.apache.cassandra.db.*;
+import org.apache.cassandra.db.compaction.CompactionManager;
 import org.apache.cassandra.db.columniterator.IdentityQueryFilter;
 import org.apache.cassandra.db.filter.IFilter;
 import org.apache.cassandra.db.filter.QueryFilter;