mirror of https://github.com/apache/cassandra
infer org.apache.cassandra.locator for replication strategy classes when not otherwise specified
patch by jbellis git-svn-id: https://svn.apache.org/repos/asf/cassandra/branches/cassandra-0.7@1044012 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
0cc38e95a8
commit
fe9762db20
|
|
@ -1,8 +1,11 @@
|
|||
dev
|
||||
* expose getNaturalEndpoints in StorageServiceMBean taking byte[]
|
||||
key; RMI cannot serialize ByteBuffer (CASSANDRA-1833)
|
||||
* infer org.apache.cassandra.locator for replication strategy classes
|
||||
when not otherwise specified
|
||||
* validation that generates less garbage (CASSANDRA-1814)
|
||||
|
||||
|
||||
0.7.0-rc2
|
||||
* fix live-column-count of slice ranges including tombstoned supercolumn
|
||||
with live subcolumn (CASSANDRA-1591)
|
||||
|
|
|
|||
|
|
@ -42,12 +42,10 @@ import org.apache.avro.ipc.AvroRemoteException;
|
|||
import org.apache.avro.util.Utf8;
|
||||
import org.apache.cassandra.concurrent.Stage;
|
||||
import org.apache.cassandra.db.migration.DropKeyspace;
|
||||
import org.apache.cassandra.db.migration.RenameKeyspace;
|
||||
import org.apache.cassandra.db.migration.UpdateColumnFamily;
|
||||
import org.apache.cassandra.db.migration.UpdateKeyspace;
|
||||
import org.apache.cassandra.dht.*;
|
||||
import org.apache.cassandra.gms.Gossiper;
|
||||
import org.apache.cassandra.utils.FBUtilities;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
|
|
@ -66,7 +64,6 @@ import org.apache.cassandra.db.migration.AddColumnFamily;
|
|||
import org.apache.cassandra.db.migration.AddKeyspace;
|
||||
import org.apache.cassandra.db.migration.DropColumnFamily;
|
||||
import org.apache.cassandra.db.migration.Migration;
|
||||
import org.apache.cassandra.db.migration.RenameColumnFamily;
|
||||
import org.apache.cassandra.locator.AbstractReplicationStrategy;
|
||||
import org.apache.cassandra.scheduler.IRequestScheduler;
|
||||
import org.apache.cassandra.service.ClientState;
|
||||
|
|
@ -646,7 +643,7 @@ public class CassandraServer implements Cassandra {
|
|||
|
||||
KSMetaData ksmeta = new KSMetaData(
|
||||
ksDef.name.toString(),
|
||||
FBUtilities.<AbstractReplicationStrategy>classForName(ksDef.strategy_class.toString(), "keyspace replication strategy"),
|
||||
AbstractReplicationStrategy.getClass(ksDef.strategy_class.toString()),
|
||||
strategyOptions,
|
||||
ksDef.replication_factor,
|
||||
cfDefs.toArray(new CFMetaData[cfDefs.size()]));
|
||||
|
|
@ -738,7 +735,7 @@ public class CassandraServer implements Cassandra {
|
|||
|
||||
KSMetaData ksm = new KSMetaData(
|
||||
ks_def.name.toString(),
|
||||
(Class<? extends AbstractReplicationStrategy>) FBUtilities.<AbstractReplicationStrategy>classForName(ks_def.strategy_class.toString(), "keyspace replication strategy"),
|
||||
AbstractReplicationStrategy.getClass(ks_def.strategy_class.toString()),
|
||||
strategyOptions,
|
||||
ks_def.replication_factor);
|
||||
applyMigrationOnStage(new UpdateKeyspace(ksm));
|
||||
|
|
|
|||
|
|
@ -261,7 +261,13 @@ public abstract class AbstractReplicationStrategy
|
|||
Map<String, String> strategyOptions)
|
||||
throws ConfigurationException
|
||||
{
|
||||
Class<AbstractReplicationStrategy> c = FBUtilities.<AbstractReplicationStrategy>classForName(strategyClassName, "replication-strategy");
|
||||
Class<AbstractReplicationStrategy> c = getClass(strategyClassName);
|
||||
return createReplicationStrategy(table, c, tokenMetadata, snitch, strategyOptions);
|
||||
}
|
||||
|
||||
public static Class<AbstractReplicationStrategy> getClass(String cls) throws ConfigurationException
|
||||
{
|
||||
String className = cls.contains(".") ? cls : "org.apache.cassandra.locator." + cls;
|
||||
return FBUtilities.classForName(className, "replication strategy");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@ import org.apache.cassandra.config.ConfigurationException;
|
|||
import org.apache.cassandra.config.DatabaseDescriptor;
|
||||
import org.apache.cassandra.config.KSMetaData;
|
||||
import org.apache.cassandra.db.ColumnFamily;
|
||||
import org.apache.cassandra.db.ColumnFamilyNotDefinedException;
|
||||
import org.apache.cassandra.db.ColumnFamilyType;
|
||||
import org.apache.cassandra.db.DecoratedKey;
|
||||
import org.apache.cassandra.db.ExpiringColumn;
|
||||
|
|
@ -60,8 +59,6 @@ import org.apache.cassandra.db.migration.AddKeyspace;
|
|||
import org.apache.cassandra.db.migration.DropColumnFamily;
|
||||
import org.apache.cassandra.db.migration.DropKeyspace;
|
||||
import org.apache.cassandra.db.migration.Migration;
|
||||
import org.apache.cassandra.db.migration.RenameColumnFamily;
|
||||
import org.apache.cassandra.db.migration.RenameKeyspace;
|
||||
import org.apache.cassandra.db.migration.UpdateColumnFamily;
|
||||
import org.apache.cassandra.db.migration.UpdateKeyspace;
|
||||
import org.apache.cassandra.dht.AbstractBounds;
|
||||
|
|
@ -75,7 +72,6 @@ import org.apache.cassandra.scheduler.IRequestScheduler;
|
|||
import org.apache.cassandra.service.ClientState;
|
||||
import org.apache.cassandra.service.StorageProxy;
|
||||
import org.apache.cassandra.service.StorageService;
|
||||
import org.apache.cassandra.utils.FBUtilities;
|
||||
import org.apache.thrift.TException;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
@ -767,7 +763,7 @@ public class CassandraServer implements Cassandra.Iface
|
|||
}
|
||||
|
||||
KSMetaData ksm = new KSMetaData(ks_def.name,
|
||||
FBUtilities.<AbstractReplicationStrategy>classForName(ks_def.strategy_class, "keyspace replication strategy"),
|
||||
AbstractReplicationStrategy.getClass(ks_def.strategy_class),
|
||||
ks_def.strategy_options,
|
||||
ks_def.replication_factor,
|
||||
cfDefs.toArray(new CFMetaData[cfDefs.size()]));
|
||||
|
|
@ -826,7 +822,7 @@ public class CassandraServer implements Cassandra.Iface
|
|||
{
|
||||
KSMetaData ksm = new KSMetaData(
|
||||
ks_def.name,
|
||||
FBUtilities.<AbstractReplicationStrategy>classForName(ks_def.strategy_class, "keyspace replication strategy"),
|
||||
AbstractReplicationStrategy.getClass(ks_def.strategy_class),
|
||||
ks_def.strategy_options,
|
||||
ks_def.replication_factor);
|
||||
applyMigrationOnStage(new UpdateKeyspace(ksm));
|
||||
|
|
|
|||
|
|
@ -50,6 +50,7 @@ import org.apache.cassandra.db.marshal.AbstractType;
|
|||
import org.apache.cassandra.dht.IPartitioner;
|
||||
import org.apache.cassandra.dht.Range;
|
||||
import org.apache.cassandra.dht.Token;
|
||||
import org.apache.cassandra.locator.AbstractReplicationStrategy;
|
||||
import org.apache.cassandra.locator.PropertyFileSnitch;
|
||||
import org.apache.thrift.TBase;
|
||||
import org.apache.thrift.TDeserializer;
|
||||
|
|
|
|||
Loading…
Reference in New Issue