Author: jbellis
Date: Wed Dec 23 19:19:38 2009
New Revision: 893604
URL: http://svn.apache.org/viewvc?rev=893604&view=rev
Log:
move initial check for compaction to after log replay. patch by jbellis;
reviewed by eevans for CASSANDRA-599
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraDaemon.java
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=893604&r1=893603&r2=893604&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
(original)
+++
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
Wed Dec 23 19:19:38 2009
@@ -245,9 +245,6 @@
}
ssTables_.onStart(sstables);
- // submit initial check-for-compaction request
- CompactionManager.instance.submitMinor(ColumnFamilyStore.this);
-
// schedule hinted handoff
if (table_.equals(Table.SYSTEM_TABLE) &&
columnFamily_.equals(HintedHandOffManager.HINTS_CF))
{
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java?rev=893604&r1=893603&r2=893604&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
(original)
+++
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
Wed Dec 23 19:19:38 2009
@@ -527,4 +527,22 @@
}
}
}
+
+ public void checkAllColumnFamilies()
+ {
+ for (String tableName : DatabaseDescriptor.getTables())
+ {
+ try
+ {
+ for (ColumnFamilyStore cfs :
Table.open(tableName).getColumnFamilyStores().values())
+ {
+ submitMinor(cfs);
+ }
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+ }
}
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraDaemon.java
URL:
http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraDaemon.java?rev=893604&r1=893603&r2=893604&view=diff
==============================================================================
---
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraDaemon.java
(original)
+++
incubator/cassandra/trunk/src/java/org/apache/cassandra/service/CassandraDaemon.java
Wed Dec 23 19:19:38 2009
@@ -38,6 +38,7 @@
import org.apache.cassandra.utils.FBUtilities;
import org.apache.cassandra.db.Table;
import org.apache.cassandra.db.RecoveryManager;
+import org.apache.cassandra.db.CompactionManager;
/**
* This class supports two methods for creating a Cassandra node daemon,
@@ -90,8 +91,9 @@
tbl.onStart();
}
- // replay the log if necessary
+ // replay the log if necessary and check for compaction candidates
RecoveryManager.doRecovery();
+ CompactionManager.instance.checkAllColumnFamilies();
// start server internals
StorageService.instance().initServer();