Author: gdusbabek
Date: Fri Nov 19 15:26:58 2010
New Revision: 1036887
URL: http://svn.apache.org/viewvc?rev=1036887&view=rev
Log:
take drop off CompactionManager. patch by gdusbabek, reviewe by jbellis.
CASSANDRA-1715
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropKeyspace.java
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java?rev=1036887&r1=1036886&r2=1036887&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java
(original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/CompactionManager.java Fri
Nov 19 15:26:58 2010
@@ -488,30 +488,6 @@ public class CompactionManager implement
}
return tablePairs;
}
-
- public Future submitDrop(final ColumnFamilyStore... stores)
- {
- Callable callable = new Callable()
- {
- public Object call() throws IOException
- {
- for (ColumnFamilyStore cfs : stores)
- {
- Table.flusherLock.writeLock().lock();
- try
- {
- cfs.table.dropCf(cfs.metadata.cfId);
- }
- finally
- {
- Table.flusherLock.writeLock().unlock();
- }
- }
- return null;
- }
- };
- return executor.submit(callable);
- }
public Future submitIndexBuild(final ColumnFamilyStore cfs, final
Table.IndexBuilder builder)
{
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java?rev=1036887&r1=1036886&r2=1036887&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropColumnFamily.java
Fri Nov 19 15:26:58 2010
@@ -5,18 +5,15 @@ 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.SystemTable;
import org.apache.cassandra.db.Table;
import org.apache.cassandra.db.commitlog.CommitLog;
import org.apache.cassandra.utils.FBUtilities;
import org.apache.cassandra.utils.UUIDGen;
-import java.io.IOError;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
-import java.util.concurrent.ExecutionException;
/**
* Licensed to the Apache Software Foundation (ASF) under one
@@ -88,30 +85,13 @@ public class DropColumnFamily extends Mi
// reinitialize the table.
KSMetaData existing = DatabaseDescriptor.getTableDefinition(tableName);
CFMetaData cfm = existing.cfMetaData().get(cfName);
- ColumnFamilyStore cfs =
Table.open(cfm.tableName).getColumnFamilyStore(cfName);
KSMetaData ksm = makeNewKeyspaceDefinition(existing);
CFMetaData.purge(cfm);
DatabaseDescriptor.setTableDefinition(ksm, newVersion);
if (!clientMode)
{
- try
- {
- CompactionManager.instance.submitDrop(cfs).get();
- }
- catch (InterruptedException ex)
- {
- throw new IOException(ex);
- }
- catch (ExecutionException ex)
- {
- // if the compaction manager catches IOException, it wraps it
in an IOError and rethrows, which should
- // get caught be the executor and rethrown as an
ExecutionException.
- if (ex.getCause() instanceof IOException)
- throw (IOException)ex.getCause();
- else
- throw new IOException(ex);
- }
+ Table.open(ksm.name).dropCf(cfm.cfId);
}
}
Modified:
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropKeyspace.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropKeyspace.java?rev=1036887&r1=1036886&r2=1036887&view=diff
==============================================================================
---
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropKeyspace.java
(original)
+++
cassandra/trunk/src/java/org/apache/cassandra/db/migration/DropKeyspace.java
Fri Nov 19 15:26:58 2010
@@ -22,8 +22,6 @@ import org.apache.cassandra.config.CFMet
import org.apache.cassandra.config.ConfigurationException;
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.HintedHandOffManager;
import org.apache.cassandra.db.SystemTable;
import org.apache.cassandra.db.Table;
@@ -31,9 +29,7 @@ import org.apache.cassandra.db.commitlog
import org.apache.cassandra.utils.FBUtilities;
import org.apache.cassandra.utils.UUIDGen;
-import java.io.IOError;
import java.io.IOException;
-import java.util.concurrent.ExecutionException;
public class DropKeyspace extends Migration
{
@@ -72,26 +68,11 @@ public class DropKeyspace extends Migrat
// remove all cfs from the table instance.
for (CFMetaData cfm : ksm.cfMetaData().values())
- CFMetaData.purge(cfm);
-
- if (!clientMode)
{
- try
- {
-
CompactionManager.instance.submitDrop(table.getColumnFamilyStores().toArray(new
ColumnFamilyStore[0])).get();
- }
- catch (InterruptedException ex)
- {
- throw new IOException(ex);
- }
- catch (ExecutionException ex)
+ CFMetaData.purge(cfm);
+ if (!clientMode)
{
- // if the compaction manager catches IOException, it wraps it
in an IOError and rethrows, which should
- // get caught be the executor and rethrown as an
ExecutionException.
- if (ex.getCause() instanceof IOException)
- throw (IOException)ex.getCause();
- else
- throw new IOException(ex);
+ table.dropCf(cfm.cfId);
}
}