Author: jbellis
Date: Thu Feb 11 03:50:40 2010
New Revision: 908831
URL: http://svn.apache.org/viewvc?rev=908831&view=rev
Log:
mv RecoverManager.doRecovery() -> CommitLog.recover()
patch by jbellis; reviewed by junrao for CASSANDRA-783
Removed:
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/RecoveryManager.java
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/avro/CassandraDaemon.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/thrift/CassandraDaemon.java
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManagerTest.java
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/avro/CassandraDaemon.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/avro/CassandraDaemon.java?rev=908831&r1=908830&r2=908831&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/java/org/apache/cassandra/avro/CassandraDaemon.java
(original)
+++
incubator/cassandra/trunk/src/java/org/apache/cassandra/avro/CassandraDaemon.java
Thu Feb 11 03:50:40 2010
@@ -27,8 +27,8 @@
import org.apache.avro.specific.SpecificResponder;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.db.CompactionManager;
-import org.apache.cassandra.db.RecoveryManager;
import org.apache.cassandra.db.Table;
+import org.apache.cassandra.db.commitlog.CommitLog;
import org.apache.cassandra.service.StorageService;
import org.apache.cassandra.utils.FBUtilities;
import org.apache.log4j.Logger;
@@ -81,7 +81,7 @@
}
// replay the log if necessary and check for compaction candidates
- RecoveryManager.doRecovery();
+ CommitLog.recover();
CompactionManager.instance.checkAllColumnFamilies();
// start server internals
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLog.java?rev=908831&r1=908830&r2=908831&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
(original)
+++
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
Thu Feb 11 03:50:40 2010
@@ -24,6 +24,7 @@
import org.apache.cassandra.db.Table;
import org.apache.cassandra.io.util.BufferedRandomAccessFile;
import org.apache.cassandra.io.DeletionService;
+import org.apache.cassandra.io.util.FileUtils;
import org.apache.cassandra.utils.WrappedRunnable;
import org.apache.cassandra.concurrent.StageManager;
@@ -145,6 +146,29 @@
}
}
+ public static void recover() throws IOException
+ {
+ String directory = DatabaseDescriptor.getLogFileLocation();
+ File file = new File(directory);
+ File[] files = file.listFiles(new FilenameFilter()
+ {
+ public boolean accept(File dir, String name)
+ {
+ // throw out anything that starts with dot.
+ return !name.matches("\\..*");
+ }
+ });
+ if (files.length == 0)
+ return;
+
+ Arrays.sort(files, new FileUtils.FileComparator());
+ logger.info("Replaying " + StringUtils.join(files, ", "));
+ recover(files);
+ FileUtils.delete(files);
+ logger.info("Log replay complete");
+ }
+
+
public static void recover(File[] clogs) throws IOException
{
Set<Table> tablesRecovered = new HashSet<Table>();
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/thrift/CassandraDaemon.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/thrift/CassandraDaemon.java?rev=908831&r1=908830&r2=908831&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/java/org/apache/cassandra/thrift/CassandraDaemon.java
(original)
+++
incubator/cassandra/trunk/src/java/org/apache/cassandra/thrift/CassandraDaemon.java
Thu Feb 11 03:50:40 2010
@@ -26,6 +26,7 @@
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
+import org.apache.cassandra.db.commitlog.CommitLog;
import org.apache.thrift.protocol.TBinaryProtocol;
import org.apache.thrift.protocol.TProtocolFactory;
import org.apache.thrift.server.TThreadPoolServer;
@@ -38,7 +39,6 @@
import org.apache.cassandra.service.StorageService;
import org.apache.cassandra.utils.FBUtilities;
import org.apache.cassandra.db.Table;
-import org.apache.cassandra.db.RecoveryManager;
import org.apache.cassandra.db.CompactionManager;
/**
@@ -92,7 +92,7 @@
}
// replay the log if necessary and check for compaction candidates
- RecoveryManager.doRecovery();
+ CommitLog.recover();
CompactionManager.instance.checkAllColumnFamilies();
// start server internals
Modified:
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java?rev=908831&r1=908830&r2=908831&view=diff
==============================================================================
---
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java
(original)
+++
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManager2Test.java
Thu Feb 11 03:50:40 2010
@@ -29,6 +29,8 @@
import org.junit.Test;
import org.apache.cassandra.CleanupHelper;
+import org.apache.cassandra.db.commitlog.CommitLog;
+
import static org.apache.cassandra.Util.column;
public class RecoveryManager2Test extends CleanupHelper
@@ -49,7 +51,7 @@
cfs.forceBlockingFlush();
cfs.clearUnsafe();
- RecoveryManager.doRecovery(); // this is a no-op. is testing this
useful?
+ CommitLog.recover(); // this is a no-op. is testing this useful?
assert Util.getRangeSlice(cfs).rows.isEmpty();
}
Modified:
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManagerTest.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManagerTest.java?rev=908831&r1=908830&r2=908831&view=diff
==============================================================================
---
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManagerTest.java
(original)
+++
incubator/cassandra/trunk/test/unit/org/apache/cassandra/db/RecoveryManagerTest.java
Thu Feb 11 03:50:40 2010
@@ -24,6 +24,8 @@
import org.junit.Test;
import org.apache.cassandra.CleanupHelper;
+import org.apache.cassandra.db.commitlog.CommitLog;
+
import static org.apache.cassandra.Util.column;
import static org.apache.cassandra.db.TableTest.assertColumns;
@@ -32,7 +34,7 @@
@Test
public void testNothing() throws IOException {
// TODO nothing to recover
- RecoveryManager.doRecovery();
+ CommitLog.recover();
}
@Test
@@ -59,7 +61,7 @@
table1.getColumnFamilyStore("Standard1").clearUnsafe();
table2.getColumnFamilyStore("Standard3").clearUnsafe();
- RecoveryManager.doRecovery();
+ CommitLog.recover();
assertColumns(table1.get("keymulti", "Standard1"), "col1");
assertColumns(table2.get("keymulti", "Standard3"), "col2");