diff --git a/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java b/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java index b87e94af46..c840950f7b 100644 --- a/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java +++ b/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java @@ -45,14 +45,12 @@ public abstract class AbstractReplicationStrategy protected TokenMetadata tokenMetadata_; protected IPartitioner partitioner_; protected int replicas_; - protected int storagePort_; - AbstractReplicationStrategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas, int storagePort) + AbstractReplicationStrategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas) { tokenMetadata_ = tokenMetadata; partitioner_ = partitioner; replicas_ = replicas; - storagePort_ = storagePort; } public abstract ArrayList getNaturalEndpoints(Token token, TokenMetadata metadata); diff --git a/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java b/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java index 6e8317c7d1..f07123b476 100644 --- a/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java +++ b/src/java/org/apache/cassandra/locator/DatacenterShardStategy.java @@ -87,11 +87,14 @@ public class DatacenterShardStategy extends AbstractReplicationStrategy } } - public DatacenterShardStategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas, int storagePort) + public DatacenterShardStategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas) throws UnknownHostException { - super(tokenMetadata, partitioner, replicas, storagePort); - assert (DatabaseDescriptor.getEndPointSnitch() instanceof DatacenterEndPointSnitch); + super(tokenMetadata, partitioner, replicas); + if ((!(DatabaseDescriptor.getEndPointSnitch() instanceof DatacenterEndPointSnitch))) + { + throw new IllegalArgumentException("DatacenterShardStrategy requires DatacenterEndpointSnitch"); + } } public ArrayList getNaturalEndpoints(Token token, TokenMetadata metadata) diff --git a/src/java/org/apache/cassandra/locator/RackAwareStrategy.java b/src/java/org/apache/cassandra/locator/RackAwareStrategy.java index 62c79b6756..c1ed4d6107 100644 --- a/src/java/org/apache/cassandra/locator/RackAwareStrategy.java +++ b/src/java/org/apache/cassandra/locator/RackAwareStrategy.java @@ -39,9 +39,9 @@ import org.apache.cassandra.utils.LogUtil; */ public class RackAwareStrategy extends AbstractReplicationStrategy { - public RackAwareStrategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas, int storagePort) + public RackAwareStrategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas) { - super(tokenMetadata, partitioner, replicas, storagePort); + super(tokenMetadata, partitioner, replicas); } public ArrayList getNaturalEndpoints(Token token, TokenMetadata metadata) diff --git a/src/java/org/apache/cassandra/locator/RackUnawareStrategy.java b/src/java/org/apache/cassandra/locator/RackUnawareStrategy.java index 17a9ef03c7..9cb7caa6b7 100644 --- a/src/java/org/apache/cassandra/locator/RackUnawareStrategy.java +++ b/src/java/org/apache/cassandra/locator/RackUnawareStrategy.java @@ -35,9 +35,9 @@ import java.net.InetAddress; */ public class RackUnawareStrategy extends AbstractReplicationStrategy { - public RackUnawareStrategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas, int storagePort) + public RackUnawareStrategy(TokenMetadata tokenMetadata, IPartitioner partitioner, int replicas) { - super(tokenMetadata, partitioner, replicas, storagePort); + super(tokenMetadata, partitioner, replicas); } public ArrayList getNaturalEndpoints(Token token, TokenMetadata metadata) diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java index 726b25b334..c3dc17d376 100644 --- a/src/java/org/apache/cassandra/service/StorageService.java +++ b/src/java/org/apache/cassandra/service/StorageService.java @@ -229,11 +229,11 @@ public final class StorageService implements IEndPointStateChangeSubscriber, Sto new MultiThreadedStage(StorageService.readStage_, DatabaseDescriptor.getConcurrentReaders())); Class cls = DatabaseDescriptor.getReplicaPlacementStrategyClass(); - Class [] parameterTypes = new Class[] { TokenMetadata.class, IPartitioner.class, int.class, int.class}; + Class [] parameterTypes = new Class[] { TokenMetadata.class, IPartitioner.class, int.class}; try { Constructor constructor = cls.getConstructor(parameterTypes); - replicationStrategy_ = constructor.newInstance(tokenMetadata_, partitioner_, DatabaseDescriptor.getReplicationFactor(), DatabaseDescriptor.getStoragePort()); + replicationStrategy_ = constructor.newInstance(tokenMetadata_, partitioner_, DatabaseDescriptor.getReplicationFactor()); } catch (Exception e) { diff --git a/test/unit/org/apache/cassandra/locator/RackUnawareStrategyTest.java b/test/unit/org/apache/cassandra/locator/RackUnawareStrategyTest.java index 5a0ce0cc66..9169f7df90 100644 --- a/test/unit/org/apache/cassandra/locator/RackUnawareStrategyTest.java +++ b/test/unit/org/apache/cassandra/locator/RackUnawareStrategyTest.java @@ -44,7 +44,7 @@ public class RackUnawareStrategyTest { TokenMetadata tmd = new TokenMetadata(); IPartitioner partitioner = new RandomPartitioner(); - AbstractReplicationStrategy strategy = new RackUnawareStrategy(tmd, partitioner, 3, 7000); + AbstractReplicationStrategy strategy = new RackUnawareStrategy(tmd, partitioner, 3); List endPointTokens = new ArrayList(); List keyTokens = new ArrayList(); @@ -60,7 +60,7 @@ public class RackUnawareStrategyTest { TokenMetadata tmd = new TokenMetadata(); IPartitioner partitioner = new OrderPreservingPartitioner(); - AbstractReplicationStrategy strategy = new RackUnawareStrategy(tmd, partitioner, 3, 7000); + AbstractReplicationStrategy strategy = new RackUnawareStrategy(tmd, partitioner, 3); List endPointTokens = new ArrayList(); List keyTokens = new ArrayList(); @@ -99,7 +99,7 @@ public class RackUnawareStrategyTest { TokenMetadata tmd = new TokenMetadata(); IPartitioner partitioner = new RandomPartitioner(); - AbstractReplicationStrategy strategy = new RackUnawareStrategy(tmd, partitioner, 3, 7000); + AbstractReplicationStrategy strategy = new RackUnawareStrategy(tmd, partitioner, 3); Token[] endPointTokens = new Token[5]; Token[] keyTokens = new Token[5];