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 2009/06/24 21:25:21 UTC
svn commit: r788146 - in
/incubator/cassandra/trunk/src/java/org/apache/cassandra/db:
ColumnFamilyStore.java MinorCompactionManager.java
Author: jbellis
Date: Wed Jun 24 19:25:21 2009
New Revision: 788146
URL: http://svn.apache.org/viewvc?rev=788146&view=rev
Log:
cleanup CFS.onstart
patch by jbellis; reviewed by Jun Rao for CASSANDRA-235
Modified:
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/MinorCompactionManager.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=788146&r1=788145&r2=788146&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 Jun 24 19:25:21 2009
@@ -147,7 +147,7 @@
void onStart() throws IOException
{
- /* Do major compaction */
+ // scan for data files corresponding to this CF
List<File> sstableFiles = new ArrayList<File>();
String[] dataFileDirectories = DatabaseDescriptor.getAllDataFileLocations();
for (String directory : dataFileDirectories)
@@ -173,15 +173,11 @@
}
}
Collections.sort(sstableFiles, new FileUtils.FileComparator());
- List<String> filenames = new ArrayList<String>();
- for (File ssTable : sstableFiles)
- {
- filenames.add(ssTable.getAbsolutePath());
- }
/* Load the index files and the Bloom Filters associated with them. */
- for (String filename : filenames)
+ for (File file : sstableFiles)
{
+ String filename = file.getAbsolutePath();
try
{
SSTable sstable = SSTable.open(filename, StorageService.getPartitioner());
@@ -189,20 +185,21 @@
}
catch (IOException ex)
{
- logger_.info("Deleting corrupted file " + filename);
+ logger_.error("Corrupt file " + filename, ex);
FileUtils.delete(filename);
- logger_.warn(LogUtil.throwableToString(ex));
}
}
+
+ // submit initial check-for-compaction request
MinorCompactionManager.instance().submit(ColumnFamilyStore.this);
+
+ // schedule hinted handoff
if (table_.equals(Table.SYSTEM_TABLE) && columnFamily_.equals(HintedHandOffManager.HINTS_CF))
{
HintedHandOffManager.instance().submit(this);
}
- // TODO this seems unnecessary -- each memtable flush checks to see if it needs to compact, too
- MinorCompactionManager.instance().submitPeriodicCompaction(this);
- /* submit periodic flusher if required */
+ // schedule periodic flusher if required
int flushPeriod = DatabaseDescriptor.getFlushPeriod(table_, columnFamily_);
if (flushPeriod > 0)
{
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/MinorCompactionManager.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/MinorCompactionManager.java?rev=788146&r1=788145&r2=788146&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/db/MinorCompactionManager.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/db/MinorCompactionManager.java Wed Jun 24 19:25:21 2009
@@ -151,26 +151,6 @@
private ScheduledExecutorService compactor_ = new DebuggableScheduledThreadPoolExecutor(1, new ThreadFactoryImpl("MINOR-COMPACTION-POOL"));
- public void submitPeriodicCompaction(final ColumnFamilyStore columnFamilyStore)
- {
- Runnable runnable = new Runnable()
- {
- public void run()
- {
- try
- {
- columnFamilyStore.doCompaction(COMPACTION_THRESHOLD);
- }
- catch (IOException e)
- {
- throw new RuntimeException(e);
- }
- }
- };
- compactor_.scheduleWithFixedDelay(runnable, MinorCompactionManager.intervalInMins_,
- MinorCompactionManager.intervalInMins_, TimeUnit.MINUTES);
- }
-
public Future<Integer> submit(final ColumnFamilyStore columnFamilyStore)
{
return submit(columnFamilyStore, COMPACTION_THRESHOLD);