You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by aw...@apache.org on 2018/01/25 20:12:02 UTC
[05/19] cassandra git commit: Allow storage port to be configurable
per node
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/dht/RangeFetchMapCalculatorTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/dht/RangeFetchMapCalculatorTest.java b/test/unit/org/apache/cassandra/dht/RangeFetchMapCalculatorTest.java
index 1b3fe03..78e87c1 100644
--- a/test/unit/org/apache/cassandra/dht/RangeFetchMapCalculatorTest.java
+++ b/test/unit/org/apache/cassandra/dht/RangeFetchMapCalculatorTest.java
@@ -18,7 +18,6 @@
package org.apache.cassandra.dht;
-import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -34,6 +33,7 @@ import org.junit.Test;
import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.locator.AbstractNetworkTopologySnitch;
+import org.apache.cassandra.locator.InetAddressAndPort;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -50,13 +50,13 @@ public class RangeFetchMapCalculatorTest
//Odd IPs are in DC1 and Even are in DC2. Endpoints upto .14 will have unique racks and
// then will be same for a set of three.
@Override
- public String getRack(InetAddress endpoint)
+ public String getRack(InetAddressAndPort endpoint)
{
return "RAC1";
}
@Override
- public String getDatacenter(InetAddress endpoint)
+ public String getDatacenter(InetAddressAndPort endpoint)
{
if (getIPLastPart(endpoint) <= 50)
return DatabaseDescriptor.getLocalDataCenter();
@@ -66,9 +66,9 @@ public class RangeFetchMapCalculatorTest
return DatabaseDescriptor.getLocalDataCenter() + "Remote";
}
- private int getIPLastPart(InetAddress endpoint)
+ private int getIPLastPart(InetAddressAndPort endpoint)
{
- String str = endpoint.toString();
+ String str = endpoint.address.toString();
int index = str.lastIndexOf(".");
return Integer.parseInt(str.substring(index + 1).trim());
}
@@ -78,7 +78,7 @@ public class RangeFetchMapCalculatorTest
@Test
public void testWithSingleSource() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.1");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.2");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.3");
@@ -86,7 +86,7 @@ public class RangeFetchMapCalculatorTest
addNonTrivialRangeAndSources(rangesWithSources, 41, 50, "127.0.0.5");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, new ArrayList<RangeStreamer.ISourceFilter>(), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
Assert.assertEquals(4, map.asMap().keySet().size());
@@ -95,7 +95,7 @@ public class RangeFetchMapCalculatorTest
@Test
public void testWithNonOverlappingSource() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.1", "127.0.0.2");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.3", "127.0.0.4");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.5", "127.0.0.6");
@@ -103,7 +103,7 @@ public class RangeFetchMapCalculatorTest
addNonTrivialRangeAndSources(rangesWithSources, 41, 50, "127.0.0.9", "127.0.0.10");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, new ArrayList<RangeStreamer.ISourceFilter>(), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
Assert.assertEquals(5, map.asMap().keySet().size());
@@ -112,13 +112,13 @@ public class RangeFetchMapCalculatorTest
@Test
public void testWithRFThreeReplacement() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.1", "127.0.0.2");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.2", "127.0.0.3");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.3", "127.0.0.4");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, new ArrayList<RangeStreamer.ISourceFilter>(), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
//We should validate that it streamed from 3 unique sources
@@ -128,7 +128,7 @@ public class RangeFetchMapCalculatorTest
@Test
public void testForMultipleRoundsComputation() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.3");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.3");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.3");
@@ -136,21 +136,21 @@ public class RangeFetchMapCalculatorTest
addNonTrivialRangeAndSources(rangesWithSources, 41, 50, "127.0.0.3", "127.0.0.2");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, new ArrayList<RangeStreamer.ISourceFilter>(), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
//We should validate that it streamed from 2 unique sources
Assert.assertEquals(2, map.asMap().keySet().size());
assertArrays(Arrays.asList(generateNonTrivialRange(1, 10), generateNonTrivialRange(11, 20), generateNonTrivialRange(21, 30), generateNonTrivialRange(31, 40)),
- map.asMap().get(InetAddress.getByName("127.0.0.3")));
- assertArrays(Arrays.asList(generateNonTrivialRange(41, 50)), map.asMap().get(InetAddress.getByName("127.0.0.2")));
+ map.asMap().get(InetAddressAndPort.getByName("127.0.0.3")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(41, 50)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.2")));
}
@Test
public void testForMultipleRoundsComputationWithLocalHost() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.1");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.1");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.1");
@@ -158,19 +158,19 @@ public class RangeFetchMapCalculatorTest
addNonTrivialRangeAndSources(rangesWithSources, 41, 50, "127.0.0.1", "127.0.0.2");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, new ArrayList<RangeStreamer.ISourceFilter>(), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
//We should validate that it streamed from only non local host and only one range
Assert.assertEquals(1, map.asMap().keySet().size());
- assertArrays(Arrays.asList(generateNonTrivialRange(41, 50)), map.asMap().get(InetAddress.getByName("127.0.0.2")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(41, 50)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.2")));
}
@Test
public void testForEmptyGraph() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.1");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.1");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.1");
@@ -178,7 +178,7 @@ public class RangeFetchMapCalculatorTest
addNonTrivialRangeAndSources(rangesWithSources, 41, 50, "127.0.0.1");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, new ArrayList<RangeStreamer.ISourceFilter>(), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
//All ranges map to local host so we will not stream anything.
assertTrue(map.isEmpty());
}
@@ -186,7 +186,7 @@ public class RangeFetchMapCalculatorTest
@Test
public void testWithNoSourceWithLocal() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.1", "127.0.0.5");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.2");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.3");
@@ -194,11 +194,11 @@ public class RangeFetchMapCalculatorTest
//Return false for all except 127.0.0.5
final RangeStreamer.ISourceFilter filter = new RangeStreamer.ISourceFilter()
{
- public boolean shouldInclude(InetAddress endpoint)
+ public boolean shouldInclude(InetAddressAndPort endpoint)
{
try
{
- if (endpoint.equals(InetAddress.getByName("127.0.0.5")))
+ if (endpoint.equals(InetAddressAndPort.getByName("127.0.0.5")))
return false;
else
return true;
@@ -211,28 +211,28 @@ public class RangeFetchMapCalculatorTest
};
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, Arrays.asList(filter), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
//We should validate that it streamed from only non local host and only one range
Assert.assertEquals(2, map.asMap().keySet().size());
- assertArrays(Arrays.asList(generateNonTrivialRange(11, 20)), map.asMap().get(InetAddress.getByName("127.0.0.2")));
- assertArrays(Arrays.asList(generateNonTrivialRange(21, 30)), map.asMap().get(InetAddress.getByName("127.0.0.3")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(11, 20)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.2")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(21, 30)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.3")));
}
@Test (expected = IllegalStateException.class)
public void testWithNoLiveSource() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.5");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.2");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.3");
final RangeStreamer.ISourceFilter allDeadFilter = new RangeStreamer.ISourceFilter()
{
- public boolean shouldInclude(InetAddress endpoint)
+ public boolean shouldInclude(InetAddressAndPort endpoint)
{
return false;
}
@@ -245,25 +245,25 @@ public class RangeFetchMapCalculatorTest
@Test
public void testForLocalDC() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.1", "127.0.0.3", "127.0.0.53");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.1", "127.0.0.3", "127.0.0.57");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.2", "127.0.0.59", "127.0.0.61");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, new ArrayList<>(), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
Assert.assertEquals(2, map.asMap().size());
//Should have streamed from local DC endpoints
- assertArrays(Arrays.asList(generateNonTrivialRange(21, 30)), map.asMap().get(InetAddress.getByName("127.0.0.2")));
- assertArrays(Arrays.asList(generateNonTrivialRange(1, 10), generateNonTrivialRange(11, 20)), map.asMap().get(InetAddress.getByName("127.0.0.3")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(21, 30)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.2")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(1, 10), generateNonTrivialRange(11, 20)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.3")));
}
@Test
public void testForRemoteDC() throws Exception
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.3", "127.0.0.51");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.3", "127.0.0.55");
addNonTrivialRangeAndSources(rangesWithSources, 21, 30, "127.0.0.2", "127.0.0.59");
@@ -271,11 +271,11 @@ public class RangeFetchMapCalculatorTest
//Reject only 127.0.0.3 and accept everyone else
final RangeStreamer.ISourceFilter localHostFilter = new RangeStreamer.ISourceFilter()
{
- public boolean shouldInclude(InetAddress endpoint)
+ public boolean shouldInclude(InetAddressAndPort endpoint)
{
try
{
- if (endpoint.equals(InetAddress.getByName("127.0.0.3")))
+ if (endpoint.equals(InetAddressAndPort.getByName("127.0.0.3")))
return false;
else
return true;
@@ -288,20 +288,20 @@ public class RangeFetchMapCalculatorTest
};
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, Arrays.asList(localHostFilter), "Test");
- Multimap<InetAddress, Range<Token>> map = calculator.getRangeFetchMap();
+ Multimap<InetAddressAndPort, Range<Token>> map = calculator.getRangeFetchMap();
validateRange(rangesWithSources, map);
Assert.assertEquals(3, map.asMap().size());
//Should have streamed from remote DC endpoint
- assertArrays(Arrays.asList(generateNonTrivialRange(1, 10)), map.asMap().get(InetAddress.getByName("127.0.0.51")));
- assertArrays(Arrays.asList(generateNonTrivialRange(11, 20)), map.asMap().get(InetAddress.getByName("127.0.0.55")));
- assertArrays(Arrays.asList(generateNonTrivialRange(21, 30)), map.asMap().get(InetAddress.getByName("127.0.0.2")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(1, 10)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.51")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(11, 20)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.55")));
+ assertArrays(Arrays.asList(generateNonTrivialRange(21, 30)), map.asMap().get(InetAddressAndPort.getByName("127.0.0.2")));
}
@Test
public void testTrivialRanges() throws UnknownHostException
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
// add non-trivial ranges
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.3", "127.0.0.51");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.3", "127.0.0.55");
@@ -309,17 +309,17 @@ public class RangeFetchMapCalculatorTest
// and a trivial one:
addTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.3", "127.0.0.51");
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, Collections.emptyList(), "Test");
- Multimap<InetAddress, Range<Token>> optMap = calculator.getRangeFetchMapForNonTrivialRanges();
- Multimap<InetAddress, Range<Token>> trivialMap = calculator.getRangeFetchMapForTrivialRanges(optMap);
- assertTrue(trivialMap.get(InetAddress.getByName("127.0.0.3")).contains(generateTrivialRange(1,10)) ^
- trivialMap.get(InetAddress.getByName("127.0.0.51")).contains(generateTrivialRange(1,10)));
+ Multimap<InetAddressAndPort, Range<Token>> optMap = calculator.getRangeFetchMapForNonTrivialRanges();
+ Multimap<InetAddressAndPort, Range<Token>> trivialMap = calculator.getRangeFetchMapForTrivialRanges(optMap);
+ assertTrue(trivialMap.get(InetAddressAndPort.getByName("127.0.0.3")).contains(generateTrivialRange(1,10)) ^
+ trivialMap.get(InetAddressAndPort.getByName("127.0.0.51")).contains(generateTrivialRange(1,10)));
assertFalse(optMap.containsKey(generateTrivialRange(1, 10)));
}
@Test(expected = IllegalStateException.class)
public void testNotEnoughEndpointsForTrivialRange() throws UnknownHostException
{
- Multimap<Range<Token>, InetAddress> rangesWithSources = HashMultimap.create();
+ Multimap<Range<Token>, InetAddressAndPort> rangesWithSources = HashMultimap.create();
// add non-trivial ranges
addNonTrivialRangeAndSources(rangesWithSources, 1, 10, "127.0.0.3", "127.0.0.51");
addNonTrivialRangeAndSources(rangesWithSources, 11, 20, "127.0.0.3", "127.0.0.55");
@@ -329,11 +329,11 @@ public class RangeFetchMapCalculatorTest
RangeStreamer.ISourceFilter filter = new RangeStreamer.ISourceFilter()
{
- public boolean shouldInclude(InetAddress endpoint)
+ public boolean shouldInclude(InetAddressAndPort endpoint)
{
try
{
- if (endpoint.equals(InetAddress.getByName("127.0.0.3")))
+ if (endpoint.equals(InetAddressAndPort.getByName("127.0.0.3")))
return false;
}
catch (UnknownHostException e)
@@ -344,8 +344,8 @@ public class RangeFetchMapCalculatorTest
}
};
RangeFetchMapCalculator calculator = new RangeFetchMapCalculator(rangesWithSources, Collections.singleton(filter), "Test");
- Multimap<InetAddress, Range<Token>> optMap = calculator.getRangeFetchMapForNonTrivialRanges();
- Multimap<InetAddress, Range<Token>> trivialMap = calculator.getRangeFetchMapForTrivialRanges(optMap);
+ Multimap<InetAddressAndPort, Range<Token>> optMap = calculator.getRangeFetchMapForNonTrivialRanges();
+ Multimap<InetAddressAndPort, Range<Token>> trivialMap = calculator.getRangeFetchMapForTrivialRanges(optMap);
}
@@ -355,35 +355,35 @@ public class RangeFetchMapCalculatorTest
assertTrue(result.containsAll(expected));
}
- private void validateRange(Multimap<Range<Token>, InetAddress> rangesWithSources, Multimap<InetAddress, Range<Token>> result)
+ private void validateRange(Multimap<Range<Token>, InetAddressAndPort> rangesWithSources, Multimap<InetAddressAndPort, Range<Token>> result)
{
- for (Map.Entry<InetAddress, Range<Token>> entry : result.entries())
+ for (Map.Entry<InetAddressAndPort, Range<Token>> entry : result.entries())
{
assertTrue(rangesWithSources.get(entry.getValue()).contains(entry.getKey()));
}
}
- private void addNonTrivialRangeAndSources(Multimap<Range<Token>, InetAddress> rangesWithSources, int left, int right, String... hosts) throws UnknownHostException
+ private void addNonTrivialRangeAndSources(Multimap<Range<Token>, InetAddressAndPort> rangesWithSources, int left, int right, String... hosts) throws UnknownHostException
{
- for (InetAddress endpoint : makeAddrs(hosts))
+ for (InetAddressAndPort endpoint : makeAddrs(hosts))
{
rangesWithSources.put(generateNonTrivialRange(left, right), endpoint);
}
}
- private void addTrivialRangeAndSources(Multimap<Range<Token>, InetAddress> rangesWithSources, int left, int right, String... hosts) throws UnknownHostException
+ private void addTrivialRangeAndSources(Multimap<Range<Token>, InetAddressAndPort> rangesWithSources, int left, int right, String... hosts) throws UnknownHostException
{
- for (InetAddress endpoint : makeAddrs(hosts))
+ for (InetAddressAndPort endpoint : makeAddrs(hosts))
{
rangesWithSources.put(generateTrivialRange(left, right), endpoint);
}
}
- private Collection<InetAddress> makeAddrs(String... hosts) throws UnknownHostException
+ private Collection<InetAddressAndPort> makeAddrs(String... hosts) throws UnknownHostException
{
- ArrayList<InetAddress> addrs = new ArrayList<InetAddress>(hosts.length);
+ ArrayList<InetAddressAndPort> addrs = new ArrayList<>(hosts.length);
for (String host : hosts)
- addrs.add(InetAddress.getByName(host));
+ addrs.add(InetAddressAndPort.getByName(host));
return addrs;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/dht/StreamStateStoreTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/dht/StreamStateStoreTest.java b/test/unit/org/apache/cassandra/dht/StreamStateStoreTest.java
index b5f8036..ad5f8f5 100644
--- a/test/unit/org/apache/cassandra/dht/StreamStateStoreTest.java
+++ b/test/unit/org/apache/cassandra/dht/StreamStateStoreTest.java
@@ -17,13 +17,13 @@
*/
package org.apache.cassandra.dht;
-import java.net.InetAddress;
import java.util.Collections;
import org.junit.BeforeClass;
import org.junit.Test;
import org.apache.cassandra.config.DatabaseDescriptor;
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.streaming.DefaultConnectionFactory;
import org.apache.cassandra.streaming.PreviewKind;
import org.apache.cassandra.streaming.StreamEvent;
@@ -50,7 +50,7 @@ public class StreamStateStoreTest
Token.TokenFactory factory = p.getTokenFactory();
Range<Token> range = new Range<>(factory.fromString("0"), factory.fromString("100"));
- InetAddress local = FBUtilities.getBroadcastAddress();
+ InetAddressAndPort local = FBUtilities.getBroadcastAddressAndPort();
StreamSession session = new StreamSession(local, local, new DefaultConnectionFactory(), 0, true, null, PreviewKind.NONE);
session.addStreamRequest("keyspace1", Collections.singleton(range), Collections.singleton("cf"));
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java b/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java
index 511511b..ea59300 100644
--- a/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java
+++ b/test/unit/org/apache/cassandra/gms/ArrivalWindowTest.java
@@ -25,9 +25,8 @@ import static org.junit.Assert.*;
import org.junit.Test;
-import java.lang.RuntimeException;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
+import org.apache.cassandra.locator.InetAddressAndPort;
+import org.apache.cassandra.utils.FBUtilities;
public class ArrivalWindowTest
{
@@ -36,15 +35,7 @@ public class ArrivalWindowTest
{
final ArrivalWindow windowWithNano = new ArrivalWindow(4);
final long toNano = 1000000L;
- InetAddress ep;
- try
- {
- ep = InetAddress.getLocalHost();
- }
- catch (UnknownHostException e)
- {
- throw new RuntimeException(e);
- }
+ InetAddressAndPort ep = FBUtilities.getLocalAddressAndPort();
windowWithNano.add(111 * toNano, ep);
windowWithNano.add(222 * toNano, ep);
windowWithNano.add(333 * toNano, ep);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/gms/EndpointStateTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/gms/EndpointStateTest.java b/test/unit/org/apache/cassandra/gms/EndpointStateTest.java
index 2453fe8..6e0cc75 100644
--- a/test/unit/org/apache/cassandra/gms/EndpointStateTest.java
+++ b/test/unit/org/apache/cassandra/gms/EndpointStateTest.java
@@ -72,7 +72,7 @@ public class EndpointStateTest
public void run()
{
state.addApplicationState(ApplicationState.TOKENS, valueFactory.tokens(tokens));
- state.addApplicationState(ApplicationState.STATUS, valueFactory.normal(tokens));
+ state.addApplicationState(ApplicationState.STATUS_WITH_PORT, valueFactory.normal(tokens));
}
});
@@ -86,7 +86,7 @@ public class EndpointStateTest
for (Map.Entry<ApplicationState, VersionedValue> entry : state.states())
values.put(entry.getKey(), entry.getValue());
- if (values.containsKey(ApplicationState.STATUS) && !values.containsKey(ApplicationState.TOKENS))
+ if (values.containsKey(ApplicationState.STATUS_WITH_PORT) && !values.containsKey(ApplicationState.TOKENS))
{
numFailures.incrementAndGet();
System.out.println(String.format("Failed: %s", values));
@@ -129,7 +129,7 @@ public class EndpointStateTest
{
Map<ApplicationState, VersionedValue> states = new EnumMap<>(ApplicationState.class);
states.put(ApplicationState.TOKENS, valueFactory.tokens(tokens));
- states.put(ApplicationState.STATUS, valueFactory.normal(tokens));
+ states.put(ApplicationState.STATUS_WITH_PORT, valueFactory.normal(tokens));
state.addApplicationStates(states);
}
});
@@ -158,7 +158,7 @@ public class EndpointStateTest
for (Map.Entry<ApplicationState, VersionedValue> entry : states)
values.put(entry.getKey(), entry.getValue());
- assertTrue(values.containsKey(ApplicationState.STATUS));
+ assertTrue(values.containsKey(ApplicationState.STATUS_WITH_PORT));
assertTrue(values.containsKey(ApplicationState.TOKENS));
assertTrue(values.containsKey(ApplicationState.INTERNAL_IP));
assertTrue(values.containsKey(ApplicationState.HOST_ID));
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/gms/FailureDetectorTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/gms/FailureDetectorTest.java b/test/unit/org/apache/cassandra/gms/FailureDetectorTest.java
index dca00b1..554e894 100644
--- a/test/unit/org/apache/cassandra/gms/FailureDetectorTest.java
+++ b/test/unit/org/apache/cassandra/gms/FailureDetectorTest.java
@@ -18,7 +18,6 @@
package org.apache.cassandra.gms;
-import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Collections;
@@ -33,6 +32,7 @@ import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.dht.IPartitioner;
import org.apache.cassandra.dht.RandomPartitioner;
import org.apache.cassandra.dht.Token;
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.locator.TokenMetadata;
import org.apache.cassandra.service.StorageService;
@@ -60,7 +60,7 @@ public class FailureDetectorTest
ArrayList<Token> endpointTokens = new ArrayList<>();
ArrayList<Token> keyTokens = new ArrayList<>();
- List<InetAddress> hosts = new ArrayList<>();
+ List<InetAddressAndPort> hosts = new ArrayList<>();
List<UUID> hostIds = new ArrayList<>();
// we want to convict if there is any heartbeat data present in the FD
@@ -69,12 +69,12 @@ public class FailureDetectorTest
// create a ring of 2 nodes
Util.createInitialRing(ss, partitioner, endpointTokens, keyTokens, hosts, hostIds, 3);
- InetAddress leftHost = hosts.get(1);
+ InetAddressAndPort leftHost = hosts.get(1);
FailureDetector.instance.report(leftHost);
// trigger handleStateLeft in StorageService
- ss.onChange(leftHost, ApplicationState.STATUS,
+ ss.onChange(leftHost, ApplicationState.STATUS_WITH_PORT,
valueFactory.left(Collections.singleton(endpointTokens.get(1)), Gossiper.computeExpireTime()));
// confirm that handleStateLeft was called and leftEndpoint was removed from TokenMetadata
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/gms/GossipDigestTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/gms/GossipDigestTest.java b/test/unit/org/apache/cassandra/gms/GossipDigestTest.java
index 3191b03..cb67a54 100644
--- a/test/unit/org/apache/cassandra/gms/GossipDigestTest.java
+++ b/test/unit/org/apache/cassandra/gms/GossipDigestTest.java
@@ -26,8 +26,7 @@ import org.apache.cassandra.io.util.DataInputBuffer;
import org.apache.cassandra.io.util.DataInputPlus;
import org.apache.cassandra.io.util.DataOutputBuffer;
-import java.net.InetAddress;
-
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.net.MessagingService;
import org.junit.Test;
@@ -36,7 +35,7 @@ public class GossipDigestTest
@Test
public void test() throws IOException
{
- InetAddress endpoint = InetAddress.getByName("127.0.0.1");
+ InetAddressAndPort endpoint = InetAddressAndPort.getByName("127.0.0.1");
int generation = 0;
int maxVersion = 123;
GossipDigest expected = new GossipDigest(endpoint, generation, maxVersion);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/gms/GossiperTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/gms/GossiperTest.java b/test/unit/org/apache/cassandra/gms/GossiperTest.java
index 83f12d1..8c65cb4 100644
--- a/test/unit/org/apache/cassandra/gms/GossiperTest.java
+++ b/test/unit/org/apache/cassandra/gms/GossiperTest.java
@@ -18,7 +18,6 @@
package org.apache.cassandra.gms;
-import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.List;
@@ -33,6 +32,7 @@ import org.apache.cassandra.config.DatabaseDescriptor;
import org.apache.cassandra.dht.IPartitioner;
import org.apache.cassandra.dht.RandomPartitioner;
import org.apache.cassandra.dht.Token;
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.locator.TokenMetadata;
import org.apache.cassandra.service.StorageService;
@@ -49,7 +49,7 @@ public class GossiperTest
TokenMetadata tmd = StorageService.instance.getTokenMetadata();
ArrayList<Token> endpointTokens = new ArrayList<>();
ArrayList<Token> keyTokens = new ArrayList<>();
- List<InetAddress> hosts = new ArrayList<>();
+ List<InetAddressAndPort> hosts = new ArrayList<>();
List<UUID> hostIds = new ArrayList<>();
@Before
@@ -62,7 +62,7 @@ public class GossiperTest
public void testLargeGenerationJump() throws UnknownHostException, InterruptedException
{
Util.createInitialRing(ss, partitioner, endpointTokens, keyTokens, hosts, hostIds, 2);
- InetAddress remoteHostAddress = hosts.get(1);
+ InetAddressAndPort remoteHostAddress = hosts.get(1);
EndpointState initialRemoteState = Gossiper.instance.getEndpointStateForEndpoint(remoteHostAddress);
HeartBeatState initialRemoteHeartBeat = initialRemoteState.getHeartBeatState();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/gms/PendingRangeCalculatorServiceTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/gms/PendingRangeCalculatorServiceTest.java b/test/unit/org/apache/cassandra/gms/PendingRangeCalculatorServiceTest.java
index 0939db0..833ee8b 100644
--- a/test/unit/org/apache/cassandra/gms/PendingRangeCalculatorServiceTest.java
+++ b/test/unit/org/apache/cassandra/gms/PendingRangeCalculatorServiceTest.java
@@ -18,7 +18,6 @@
package org.apache.cassandra.gms;
-import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Collection;
@@ -35,6 +34,7 @@ import org.apache.cassandra.SchemaLoader;
import org.apache.cassandra.dht.ByteOrderedPartitioner;
import org.apache.cassandra.dht.Token;
import org.apache.cassandra.exceptions.ConfigurationException;
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.service.StorageService;
import org.jboss.byteman.contrib.bmunit.BMRule;
import org.jboss.byteman.contrib.bmunit.BMUnitRunner;
@@ -66,7 +66,7 @@ public class PendingRangeCalculatorServiceTest
action = "org.apache.cassandra.gms.PendingRangeCalculatorServiceTest.calculationLock.lock()")
public void testDelayedResponse() throws UnknownHostException, InterruptedException
{
- InetAddress otherNodeAddr = InetAddress.getByName("127.0.0.2");
+ InetAddressAndPort otherNodeAddr = InetAddressAndPort.getByName("127.0.0.2");
UUID otherHostId = UUID.randomUUID();
// introduce node for first major state change
@@ -112,7 +112,7 @@ public class PendingRangeCalculatorServiceTest
}
}
- private Map<InetAddress, EndpointState> getStates(InetAddress otherNodeAddr, UUID hostId, int ver, boolean bootstrapping)
+ private Map<InetAddressAndPort, EndpointState> getStates(InetAddressAndPort otherNodeAddr, UUID hostId, int ver, boolean bootstrapping)
{
HeartBeatState hb = new HeartBeatState(1, ver);
EndpointState state = new EndpointState(hb);
@@ -125,7 +125,7 @@ public class PendingRangeCalculatorServiceTest
state.addApplicationState(ApplicationState.HOST_ID, StorageService.instance.valueFactory.hostId(hostId));
state.addApplicationState(ApplicationState.NET_VERSION, StorageService.instance.valueFactory.networkVersion());
- Map<InetAddress, EndpointState> states = new HashMap<>();
+ Map<InetAddressAndPort, EndpointState> states = new HashMap<>();
states.put(otherNodeAddr, state);
return states;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/gms/SerializationsTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/gms/SerializationsTest.java b/test/unit/org/apache/cassandra/gms/SerializationsTest.java
index 0df266f..90ce10b 100644
--- a/test/unit/org/apache/cassandra/gms/SerializationsTest.java
+++ b/test/unit/org/apache/cassandra/gms/SerializationsTest.java
@@ -24,6 +24,7 @@ import org.apache.cassandra.dht.IPartitioner;
import org.apache.cassandra.dht.Token;
import org.apache.cassandra.io.util.DataInputPlus.DataInputStreamPlus;
import org.apache.cassandra.io.util.DataOutputStreamPlus;
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.service.StorageService;
import org.apache.cassandra.utils.FBUtilities;
@@ -31,7 +32,6 @@ import org.junit.BeforeClass;
import org.junit.Test;
import java.io.IOException;
-import java.net.InetAddress;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
@@ -78,9 +78,9 @@ public class SerializationsTest extends AbstractSerializationsTester
private void testGossipDigestWrite() throws IOException
{
- Map<InetAddress, EndpointState> states = new HashMap<InetAddress, EndpointState>();
- states.put(InetAddress.getByName("127.0.0.1"), Statics.EndpointSt);
- states.put(InetAddress.getByName("127.0.0.2"), Statics.EndpointSt);
+ Map<InetAddressAndPort, EndpointState> states = new HashMap<>();
+ states.put(InetAddressAndPort.getByName("127.0.0.1"), Statics.EndpointSt);
+ states.put(InetAddressAndPort.getByName("127.0.0.2"), Statics.EndpointSt);
GossipDigestAck ack = new GossipDigestAck(Statics.Digests, states);
GossipDigestAck2 ack2 = new GossipDigestAck2(states);
GossipDigestSyn syn = new GossipDigestSyn("Not a real cluster name",
@@ -132,9 +132,9 @@ public class SerializationsTest extends AbstractSerializationsTester
{
HeartbeatSt.updateHeartBeat();
EndpointSt.addApplicationState(ApplicationState.LOAD, vv0);
- EndpointSt.addApplicationState(ApplicationState.STATUS, vv1);
+ EndpointSt.addApplicationState(ApplicationState.STATUS_WITH_PORT, vv1);
for (int i = 0; i < 100; i++)
- Digests.add(new GossipDigest(FBUtilities.getBroadcastAddress(), 100 + i, 1000 + 2 * i));
+ Digests.add(new GossipDigest(FBUtilities.getBroadcastAddressAndPort(), 100 + i, 1000 + 2 * i));
}
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/hints/HintTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/hints/HintTest.java b/test/unit/org/apache/cassandra/hints/HintTest.java
index 23189e1..e8960f5 100644
--- a/test/unit/org/apache/cassandra/hints/HintTest.java
+++ b/test/unit/org/apache/cassandra/hints/HintTest.java
@@ -18,7 +18,6 @@
package org.apache.cassandra.hints;
import java.io.IOException;
-import java.net.InetAddress;
import java.util.Collections;
import java.util.UUID;
@@ -39,6 +38,7 @@ import org.apache.cassandra.dht.BootStrapper;
import org.apache.cassandra.io.util.DataInputBuffer;
import org.apache.cassandra.io.util.DataInputPlus;
import org.apache.cassandra.io.util.DataOutputBuffer;
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.locator.TokenMetadata;
import org.apache.cassandra.metrics.StorageMetrics;
import org.apache.cassandra.net.MessageIn;
@@ -81,7 +81,7 @@ public class HintTest
public void resetGcGraceSeconds()
{
TokenMetadata tokenMeta = StorageService.instance.getTokenMetadata();
- InetAddress local = FBUtilities.getBroadcastAddress();
+ InetAddressAndPort local = FBUtilities.getBroadcastAddressAndPort();
tokenMeta.clearUnsafe();
tokenMeta.updateHostId(UUID.randomUUID(), local);
tokenMeta.updateNormalTokens(BootStrapper.getRandomTokens(tokenMeta, 1), local);
@@ -230,8 +230,8 @@ public class HintTest
// Prepare metadata with injected stale endpoint serving the mutation key.
TokenMetadata tokenMeta = StorageService.instance.getTokenMetadata();
- InetAddress local = FBUtilities.getBroadcastAddress();
- InetAddress endpoint = InetAddress.getByName("1.1.1.1");
+ InetAddressAndPort local = FBUtilities.getBroadcastAddressAndPort();
+ InetAddressAndPort endpoint = InetAddressAndPort.getByName("1.1.1.1");
UUID localId = StorageService.instance.getLocalHostUUID();
UUID targetId = UUID.randomUUID();
tokenMeta.updateHostId(targetId, endpoint);
@@ -271,8 +271,8 @@ public class HintTest
// Prepare metadata with injected stale endpoint.
TokenMetadata tokenMeta = StorageService.instance.getTokenMetadata();
- InetAddress local = FBUtilities.getBroadcastAddress();
- InetAddress endpoint = InetAddress.getByName("1.1.1.1");
+ InetAddressAndPort local = FBUtilities.getBroadcastAddressAndPort();
+ InetAddressAndPort endpoint = InetAddressAndPort.getByName("1.1.1.1");
UUID localId = StorageService.instance.getLocalHostUUID();
UUID targetId = UUID.randomUUID();
tokenMeta.updateHostId(targetId, endpoint);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/hints/HintsServiceTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/hints/HintsServiceTest.java b/test/unit/org/apache/cassandra/hints/HintsServiceTest.java
index 2da8993..b71140f 100644
--- a/test/unit/org/apache/cassandra/hints/HintsServiceTest.java
+++ b/test/unit/org/apache/cassandra/hints/HintsServiceTest.java
@@ -17,7 +17,6 @@
*/
package org.apache.cassandra.hints;
-import java.net.InetAddress;
import java.util.Collections;
import java.util.UUID;
import java.util.concurrent.ExecutionException;
@@ -34,6 +33,7 @@ import org.junit.Test;
import com.datastax.driver.core.utils.MoreFutures;
import org.apache.cassandra.SchemaLoader;
+import org.apache.cassandra.locator.InetAddressAndPort;
import org.apache.cassandra.schema.TableMetadata;
import org.apache.cassandra.schema.Schema;
import org.apache.cassandra.db.DecoratedKey;
@@ -182,7 +182,7 @@ public class HintsServiceTest
private MockMessagingSpy sendHintsAndResponses(int noOfHints, int noOfResponses)
{
// create spy for hint messages, but only create responses for noOfResponses hints
- MessageIn<HintResponse> messageIn = MessageIn.create(FBUtilities.getBroadcastAddress(),
+ MessageIn<HintResponse> messageIn = MessageIn.create(FBUtilities.getBroadcastAddressAndPort(),
HintResponse.instance,
Collections.emptyMap(),
MessagingService.Verb.REQUEST_RESPONSE,
@@ -217,17 +217,17 @@ public class HintsServiceTest
{
private boolean isAlive = true;
- public boolean isAlive(InetAddress ep)
+ public boolean isAlive(InetAddressAndPort ep)
{
return isAlive;
}
- public void interpret(InetAddress ep)
+ public void interpret(InetAddressAndPort ep)
{
throw new UnsupportedOperationException();
}
- public void report(InetAddress ep)
+ public void report(InetAddressAndPort ep)
{
throw new UnsupportedOperationException();
}
@@ -242,12 +242,12 @@ public class HintsServiceTest
throw new UnsupportedOperationException();
}
- public void remove(InetAddress ep)
+ public void remove(InetAddressAndPort ep)
{
throw new UnsupportedOperationException();
}
- public void forceConviction(InetAddress ep)
+ public void forceConviction(InetAddressAndPort ep)
{
throw new UnsupportedOperationException();
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterTest.java b/test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterTest.java
index d63d6c3..dbb929d 100644
--- a/test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterTest.java
+++ b/test/unit/org/apache/cassandra/io/sstable/CQLSSTableWriterTest.java
@@ -650,7 +650,7 @@ public class CQLSSTableWriterTest
{
this.keyspace = keyspace;
for (Range<Token> range : StorageService.instance.getLocalRanges(ks))
- addRangeForEndpoint(range, FBUtilities.getBroadcastAddress());
+ addRangeForEndpoint(range, FBUtilities.getBroadcastAddressAndPort());
}
public TableMetadataRef getTableMetadata(String cfName)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/io/sstable/LegacySSTableTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/io/sstable/LegacySSTableTest.java b/test/unit/org/apache/cassandra/io/sstable/LegacySSTableTest.java
index 6e7d173..8fc69bf 100644
--- a/test/unit/org/apache/cassandra/io/sstable/LegacySSTableTest.java
+++ b/test/unit/org/apache/cassandra/io/sstable/LegacySSTableTest.java
@@ -215,7 +215,7 @@ public class LegacySSTableTest
details.add(new StreamSession.SSTableStreamingSections(sstable.ref(),
sstable.getPositionsForRanges(ranges),
sstable.estimatedKeysForRanges(ranges)));
- new StreamPlan(StreamOperation.OTHER).transferFiles(FBUtilities.getBroadcastAddress(), details)
+ new StreamPlan(StreamOperation.OTHER).transferFiles(FBUtilities.getBroadcastAddressAndPort(), details)
.execute().get();
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/io/sstable/SSTableLoaderTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/io/sstable/SSTableLoaderTest.java b/test/unit/org/apache/cassandra/io/sstable/SSTableLoaderTest.java
index 4f3739f..430b7c2 100644
--- a/test/unit/org/apache/cassandra/io/sstable/SSTableLoaderTest.java
+++ b/test/unit/org/apache/cassandra/io/sstable/SSTableLoaderTest.java
@@ -104,7 +104,7 @@ public class SSTableLoaderTest
{
this.keyspace = keyspace;
for (Range<Token> range : StorageService.instance.getLocalRanges(KEYSPACE1))
- addRangeForEndpoint(range, FBUtilities.getBroadcastAddress());
+ addRangeForEndpoint(range, FBUtilities.getBroadcastAddressAndPort());
}
public TableMetadataRef getTableMetadata(String tableName)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/CloudstackSnitchTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/CloudstackSnitchTest.java b/test/unit/org/apache/cassandra/locator/CloudstackSnitchTest.java
index 34f8204..391f789 100644
--- a/test/unit/org/apache/cassandra/locator/CloudstackSnitchTest.java
+++ b/test/unit/org/apache/cassandra/locator/CloudstackSnitchTest.java
@@ -19,7 +19,6 @@
package org.apache.cassandra.locator;
import java.io.IOException;
-import java.net.InetAddress;
import java.util.EnumMap;
import java.util.Map;
@@ -77,8 +76,8 @@ public class CloudstackSnitchTest
{
az = "ch-gva-1";
CloudstackSnitch snitch = new TestCloudstackSnitch();
- InetAddress local = InetAddress.getByName("127.0.0.1");
- InetAddress nonlocal = InetAddress.getByName("127.0.0.7");
+ InetAddressAndPort local = InetAddressAndPort.getByName("127.0.0.1");
+ InetAddressAndPort nonlocal = InetAddressAndPort.getByName("127.0.0.7");
Gossiper.instance.addSavedEndpoint(nonlocal);
Map<ApplicationState, VersionedValue> stateMap = new EnumMap<>(ApplicationState.class);
@@ -99,7 +98,7 @@ public class CloudstackSnitchTest
{
az = "ch-gva-1";
CloudstackSnitch snitch = new TestCloudstackSnitch();
- InetAddress local = InetAddress.getByName("127.0.0.1");
+ InetAddressAndPort local = InetAddressAndPort.getByName("127.0.0.1");
assertEquals("ch-gva", snitch.getDatacenter(local));
assertEquals("1", snitch.getRack(local));
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/DynamicEndpointSnitchTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/DynamicEndpointSnitchTest.java b/test/unit/org/apache/cassandra/locator/DynamicEndpointSnitchTest.java
index 8a59a4a..bf1e4c2 100644
--- a/test/unit/org/apache/cassandra/locator/DynamicEndpointSnitchTest.java
+++ b/test/unit/org/apache/cassandra/locator/DynamicEndpointSnitchTest.java
@@ -19,7 +19,6 @@
package org.apache.cassandra.locator;
import java.io.IOException;
-import java.net.InetAddress;
import java.util.*;
import org.junit.BeforeClass;
@@ -41,7 +40,7 @@ public class DynamicEndpointSnitchTest
DatabaseDescriptor.daemonInitialization();
}
- private static void setScores(DynamicEndpointSnitch dsnitch, int rounds, List<InetAddress> hosts, Integer... scores) throws InterruptedException
+ private static void setScores(DynamicEndpointSnitch dsnitch, int rounds, List<InetAddressAndPort> hosts, Integer... scores) throws InterruptedException
{
for (int round = 0; round < rounds; round++)
{
@@ -58,16 +57,16 @@ public class DynamicEndpointSnitchTest
StorageService.instance.unsafeInitialize();
SimpleSnitch ss = new SimpleSnitch();
DynamicEndpointSnitch dsnitch = new DynamicEndpointSnitch(ss, String.valueOf(ss.hashCode()));
- InetAddress self = FBUtilities.getBroadcastAddress();
- InetAddress host1 = InetAddress.getByName("127.0.0.2");
- InetAddress host2 = InetAddress.getByName("127.0.0.3");
- InetAddress host3 = InetAddress.getByName("127.0.0.4");
- InetAddress host4 = InetAddress.getByName("127.0.0.5");
- List<InetAddress> hosts = Arrays.asList(host1, host2, host3);
+ InetAddressAndPort self = FBUtilities.getBroadcastAddressAndPort();
+ InetAddressAndPort host1 = InetAddressAndPort.getByName("127.0.0.2");
+ InetAddressAndPort host2 = InetAddressAndPort.getByName("127.0.0.3");
+ InetAddressAndPort host3 = InetAddressAndPort.getByName("127.0.0.4");
+ InetAddressAndPort host4 = InetAddressAndPort.getByName("127.0.0.5");
+ List<InetAddressAndPort> hosts = Arrays.asList(host1, host2, host3);
// first, make all hosts equal
setScores(dsnitch, 1, hosts, 10, 10, 10);
- List<InetAddress> order = Arrays.asList(host1, host2, host3);
+ List<InetAddressAndPort> order = Arrays.asList(host1, host2, host3);
assertEquals(order, dsnitch.getSortedListByProximity(self, Arrays.asList(host1, host2, host3)));
// make host1 a little worse
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/EC2SnitchTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/EC2SnitchTest.java b/test/unit/org/apache/cassandra/locator/EC2SnitchTest.java
index 09973a8..182ff1a 100644
--- a/test/unit/org/apache/cassandra/locator/EC2SnitchTest.java
+++ b/test/unit/org/apache/cassandra/locator/EC2SnitchTest.java
@@ -20,7 +20,7 @@ package org.apache.cassandra.locator;
import java.io.IOException;
-import java.net.InetAddress;
+import java.net.UnknownHostException;
import java.util.EnumMap;
import java.util.Map;
@@ -72,8 +72,8 @@ public class EC2SnitchTest
{
az = "us-east-1d";
Ec2Snitch snitch = new TestEC2Snitch();
- InetAddress local = InetAddress.getByName("127.0.0.1");
- InetAddress nonlocal = InetAddress.getByName("127.0.0.7");
+ InetAddressAndPort local = InetAddressAndPort.getByName("127.0.0.1");
+ InetAddressAndPort nonlocal = InetAddressAndPort.getByName("127.0.0.7");
Gossiper.instance.addSavedEndpoint(nonlocal);
Map<ApplicationState, VersionedValue> stateMap = new EnumMap<>(ApplicationState.class);
@@ -93,7 +93,7 @@ public class EC2SnitchTest
{
az = "us-east-2d";
Ec2Snitch snitch = new TestEC2Snitch();
- InetAddress local = InetAddress.getByName("127.0.0.1");
+ InetAddressAndPort local = InetAddressAndPort.getByName("127.0.0.1");
assertEquals("us-east-2", snitch.getDatacenter(local));
assertEquals("2d", snitch.getRack(local));
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/GoogleCloudSnitchTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/GoogleCloudSnitchTest.java b/test/unit/org/apache/cassandra/locator/GoogleCloudSnitchTest.java
index c63044c..ea6fa2d 100644
--- a/test/unit/org/apache/cassandra/locator/GoogleCloudSnitchTest.java
+++ b/test/unit/org/apache/cassandra/locator/GoogleCloudSnitchTest.java
@@ -20,7 +20,6 @@ package org.apache.cassandra.locator;
import java.io.IOException;
-import java.net.InetAddress;
import java.util.EnumMap;
import java.util.Map;
@@ -72,8 +71,8 @@ public class GoogleCloudSnitchTest
{
az = "us-central1-a";
GoogleCloudSnitch snitch = new TestGoogleCloudSnitch();
- InetAddress local = InetAddress.getByName("127.0.0.1");
- InetAddress nonlocal = InetAddress.getByName("127.0.0.7");
+ InetAddressAndPort local = InetAddressAndPort.getByName("127.0.0.1");
+ InetAddressAndPort nonlocal = InetAddressAndPort.getByName("127.0.0.7");
Gossiper.instance.addSavedEndpoint(nonlocal);
Map<ApplicationState, VersionedValue> stateMap = new EnumMap<>(ApplicationState.class);
@@ -93,7 +92,7 @@ public class GoogleCloudSnitchTest
{
az = "asia-east1-a";
GoogleCloudSnitch snitch = new TestGoogleCloudSnitch();
- InetAddress local = InetAddress.getByName("127.0.0.1");
+ InetAddressAndPort local = InetAddressAndPort.getByName("127.0.0.1");
assertEquals("asia-east1", snitch.getDatacenter(local));
assertEquals("a", snitch.getRack(local));
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/GossipingPropertyFileSnitchTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/GossipingPropertyFileSnitchTest.java b/test/unit/org/apache/cassandra/locator/GossipingPropertyFileSnitchTest.java
index 77734f7..da26003 100644
--- a/test/unit/org/apache/cassandra/locator/GossipingPropertyFileSnitchTest.java
+++ b/test/unit/org/apache/cassandra/locator/GossipingPropertyFileSnitchTest.java
@@ -18,9 +18,8 @@
package org.apache.cassandra.locator;
-import java.net.InetAddress;
+import java.net.UnknownHostException;
-import com.google.common.net.InetAddresses;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -45,7 +44,15 @@ public class GossipingPropertyFileSnitchTest
final String endpointString, final String expectedDatacenter,
final String expectedRack)
{
- final InetAddress endpoint = InetAddresses.forString(endpointString);
+ final InetAddressAndPort endpoint;
+ try
+ {
+ endpoint = InetAddressAndPort.getByName(endpointString);
+ }
+ catch (UnknownHostException e)
+ {
+ throw new RuntimeException(e);
+ }
assertEquals(expectedDatacenter, snitch.getDatacenter(endpoint));
assertEquals(expectedRack, snitch.getRack(endpoint));
}
@@ -54,6 +61,6 @@ public class GossipingPropertyFileSnitchTest
public void testLoadConfig() throws Exception
{
final GossipingPropertyFileSnitch snitch = new GossipingPropertyFileSnitch();
- checkEndpoint(snitch, FBUtilities.getBroadcastAddress().getHostAddress(), "DC1", "RAC1");
+ checkEndpoint(snitch, FBUtilities.getBroadcastAddressAndPort().toString(), "DC1", "RAC1");
}
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/InetAddressAndPortTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/InetAddressAndPortTest.java b/test/unit/org/apache/cassandra/locator/InetAddressAndPortTest.java
new file mode 100644
index 0000000..c32b9a9
--- /dev/null
+++ b/test/unit/org/apache/cassandra/locator/InetAddressAndPortTest.java
@@ -0,0 +1,143 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.cassandra.locator;
+
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+
+import org.junit.Test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+public class InetAddressAndPortTest
+{
+ private static interface ThrowingRunnable
+ {
+ public void run() throws Throwable;
+ }
+
+ @Test
+ public void getByNameIPv4Test() throws Exception
+ {
+ //Negative port
+ shouldThrow(() -> InetAddressAndPort.getByName("127.0.0.1:-1"), IllegalArgumentException.class);
+ //Too large port
+ shouldThrow(() -> InetAddressAndPort.getByName("127.0.0.1:65536"), IllegalArgumentException.class);
+
+ //bad address, caught by InetAddress
+ shouldThrow(() -> InetAddressAndPort.getByName("127.0.0.1.0"), UnknownHostException.class);
+
+ //Test default port
+ InetAddressAndPort address = InetAddressAndPort.getByName("127.0.0.1");
+ assertEquals(InetAddress.getByName("127.0.0.1"), address.address);
+ assertEquals(InetAddressAndPort.defaultPort, address.port);
+
+ //Test overriding default port
+ address = InetAddressAndPort.getByName("127.0.0.1:42");
+ assertEquals(InetAddress.getByName("127.0.0.1"), address.address);
+ assertEquals(42, address.port);
+ }
+
+ @Test
+ public void getByNameIPv6Test() throws Exception
+ {
+ //Negative port
+ shouldThrow(() -> InetAddressAndPort.getByName("[2001:0db8:0000:0000:0000:ff00:0042:8329]:-1"), IllegalArgumentException.class);
+ //Too large port
+ shouldThrow(() -> InetAddressAndPort.getByName("[2001:0db8:0000:0000:0000:ff00:0042:8329]:65536"), IllegalArgumentException.class);
+
+ //bad address, caught by InetAddress
+ shouldThrow(() -> InetAddressAndPort.getByName("2001:0db8:0000:0000:0000:ff00:0042:8329:8329"), UnknownHostException.class);
+
+ //Test default port
+ InetAddressAndPort address = InetAddressAndPort.getByName("2001:0db8:0000:0000:0000:ff00:0042:8329");
+ assertEquals(InetAddress.getByName("2001:0db8:0000:0000:0000:ff00:0042:8329"), address.address);
+ assertEquals(InetAddressAndPort.defaultPort, address.port);
+
+ //Test overriding default port
+ address = InetAddressAndPort.getByName("[2001:0db8:0000:0000:0000:ff00:0042:8329]:42");
+ assertEquals(InetAddress.getByName("2001:0db8:0000:0000:0000:ff00:0042:8329"), address.address);
+ assertEquals(42, address.port);
+ }
+
+ @Test
+ public void compareAndEqualsAndHashCodeTest() throws Exception
+ {
+ InetAddressAndPort address1 = InetAddressAndPort.getByName("127.0.0.1:42");
+ InetAddressAndPort address4 = InetAddressAndPort.getByName("127.0.0.1:43");
+ InetAddressAndPort address5 = InetAddressAndPort.getByName("127.0.0.1:41");
+ InetAddressAndPort address6 = InetAddressAndPort.getByName("127.0.0.2:42");
+ InetAddressAndPort address7 = InetAddressAndPort.getByName("127.0.0.0:42");
+
+ assertEquals(0, address1.compareTo(address1));
+ assertEquals(-1, address1.compareTo(address4));
+ assertEquals(1, address1.compareTo(address5));
+ assertEquals(-1, address1.compareTo(address6));
+ assertEquals(1, address1.compareTo(address7));
+
+ assertEquals(address1, address1);
+ assertEquals(address1.hashCode(), address1.hashCode());
+ assertEquals(address1, InetAddressAndPort.getByName("127.0.0.1:42"));
+ assertEquals(address1.hashCode(), InetAddressAndPort.getByName("127.0.0.1:42").hashCode());
+ assertEquals(address1, InetAddressAndPort.getByNameOverrideDefaults("127.0.0.1", 42));
+ assertEquals(address1.hashCode(), InetAddressAndPort.getByNameOverrideDefaults("127.0.0.1", 42).hashCode());
+ int originalPort = InetAddressAndPort.defaultPort;
+ InetAddressAndPort.initializeDefaultPort(42);
+ try
+ {
+ assertEquals(address1, InetAddressAndPort.getByName("127.0.0.1"));
+ assertEquals(address1.hashCode(), InetAddressAndPort.getByName("127.0.0.1").hashCode());
+ }
+ finally
+ {
+ InetAddressAndPort.initializeDefaultPort(originalPort);
+ }
+ assertTrue(!address1.equals(address4));
+ assertTrue(!address1.equals(address5));
+ assertTrue(!address1.equals(address6));
+ assertTrue(!address1.equals(address7));
+ }
+
+ @Test
+ public void toStringTest() throws Exception
+ {
+ String ipv4 = "127.0.0.1:42";
+ String ipv6 = "[2001:db8:0:0:0:ff00:42:8329]:42";
+ assertEquals(ipv4, InetAddressAndPort.getByName(ipv4).toString());
+ assertEquals(ipv6, InetAddressAndPort.getByName(ipv6).toString());
+ }
+
+
+ private void shouldThrow(ThrowingRunnable t, Class expectedClass)
+ {
+ try
+ {
+ t.run();
+ }
+ catch (Throwable thrown)
+ {
+ assertEquals(thrown.getClass(), expectedClass);
+ return;
+ }
+ fail("Runnable didn't throw");
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/NetworkTopologyStrategyTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/NetworkTopologyStrategyTest.java b/test/unit/org/apache/cassandra/locator/NetworkTopologyStrategyTest.java
index f64b84a..ab6c6cd 100644
--- a/test/unit/org/apache/cassandra/locator/NetworkTopologyStrategyTest.java
+++ b/test/unit/org/apache/cassandra/locator/NetworkTopologyStrategyTest.java
@@ -19,7 +19,6 @@
package org.apache.cassandra.locator;
import java.io.IOException;
-import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.*;
import java.util.stream.Collectors;
@@ -73,9 +72,9 @@ public class NetworkTopologyStrategyTest
assert strategy.getReplicationFactor("DC2") == 2;
assert strategy.getReplicationFactor("DC3") == 1;
// Query for the natural hosts
- ArrayList<InetAddress> endpoints = strategy.getNaturalEndpoints(new StringToken("123"));
+ ArrayList<InetAddressAndPort> endpoints = strategy.getNaturalEndpoints(new StringToken("123"));
assert 6 == endpoints.size();
- assert 6 == new HashSet<InetAddress>(endpoints).size(); // ensure uniqueness
+ assert 6 == new HashSet<>(endpoints).size(); // ensure uniqueness
}
@Test
@@ -97,9 +96,9 @@ public class NetworkTopologyStrategyTest
assert strategy.getReplicationFactor("DC2") == 3;
assert strategy.getReplicationFactor("DC3") == 0;
// Query for the natural hosts
- ArrayList<InetAddress> endpoints = strategy.getNaturalEndpoints(new StringToken("123"));
+ ArrayList<InetAddressAndPort> endpoints = strategy.getNaturalEndpoints(new StringToken("123"));
assert 6 == endpoints.size();
- assert 6 == new HashSet<InetAddress>(endpoints).size(); // ensure uniqueness
+ assert 6 == new HashSet<>(endpoints).size(); // ensure uniqueness
}
@Test
@@ -113,7 +112,7 @@ public class NetworkTopologyStrategyTest
DatabaseDescriptor.setEndpointSnitch(snitch);
TokenMetadata metadata = new TokenMetadata();
Map<String, String> configOptions = new HashMap<String, String>();
- Multimap<InetAddress, Token> tokens = HashMultimap.create();
+ Multimap<InetAddressAndPort, Token> tokens = HashMultimap.create();
int totalRF = 0;
for (int dc = 0; dc < dcRacks.length; ++dc)
@@ -125,7 +124,7 @@ public class NetworkTopologyStrategyTest
for (int ep = 1; ep <= dcEndpoints[dc]/dcRacks[dc]; ++ep)
{
byte[] ipBytes = new byte[]{10, (byte)dc, (byte)rack, (byte)ep};
- InetAddress address = InetAddress.getByAddress(ipBytes);
+ InetAddressAndPort address = InetAddressAndPort.getByAddress(ipBytes);
StringToken token = new StringToken(String.format("%02x%02x%02x", ep, rack, dc));
logger.debug("adding node {} at {}", address, token);
tokens.put(address, token);
@@ -138,8 +137,8 @@ public class NetworkTopologyStrategyTest
for (String testToken : new String[]{"123456", "200000", "000402", "ffffff", "400200"})
{
- List<InetAddress> endpoints = strategy.calculateNaturalEndpoints(new StringToken(testToken), metadata);
- Set<InetAddress> epSet = new HashSet<InetAddress>(endpoints);
+ List<InetAddressAndPort> endpoints = strategy.calculateNaturalEndpoints(new StringToken(testToken), metadata);
+ Set<InetAddressAndPort> epSet = new HashSet<>(endpoints);
Assert.assertEquals(totalRF, endpoints.size());
Assert.assertEquals(totalRF, epSet.size());
@@ -172,7 +171,7 @@ public class NetworkTopologyStrategyTest
public void tokenFactory(TokenMetadata metadata, String token, byte[] bytes) throws UnknownHostException
{
Token token1 = new StringToken(token);
- InetAddress add1 = InetAddress.getByAddress(bytes);
+ InetAddressAndPort add1 = InetAddressAndPort.getByAddress(bytes);
metadata.updateNormalToken(token1, add1);
}
@@ -184,9 +183,9 @@ public class NetworkTopologyStrategyTest
final int RUNS = 10;
StorageService.instance.setPartitionerUnsafe(Murmur3Partitioner.instance);
Map<String, Integer> datacenters = ImmutableMap.of("rf1", 1, "rf3", 3, "rf5_1", 5, "rf5_2", 5, "rf5_3", 5);
- List<InetAddress> nodes = new ArrayList<>(NODES);
+ List<InetAddressAndPort> nodes = new ArrayList<>(NODES);
for (byte i=0; i<NODES; ++i)
- nodes.add(InetAddress.getByAddress(new byte[]{127, 0, 0, i}));
+ nodes.add(InetAddressAndPort.getByAddress(new byte[]{ 127, 0, 0, i}));
for (int run=0; run<RUNS; ++run)
{
Random rand = new Random();
@@ -209,8 +208,8 @@ public class NetworkTopologyStrategyTest
for (int i=0; i<1000; ++i)
{
Token token = Murmur3Partitioner.instance.getRandomToken(rand);
- List<InetAddress> expected = calculateNaturalEndpoints(token, tokenMetadata, datacenters, snitch);
- List<InetAddress> actual = nts.calculateNaturalEndpoints(token, tokenMetadata);
+ List<InetAddressAndPort> expected = calculateNaturalEndpoints(token, tokenMetadata, datacenters, snitch);
+ List<InetAddressAndPort> actual = nts.calculateNaturalEndpoints(token, tokenMetadata);
if (endpointsDiffer(expected, actual))
{
System.err.println("Endpoints mismatch for token " + token);
@@ -221,7 +220,7 @@ public class NetworkTopologyStrategyTest
}
}
- private boolean endpointsDiffer(List<InetAddress> ep1, List<InetAddress> ep2)
+ private boolean endpointsDiffer(List<InetAddressAndPort> ep1, List<InetAddressAndPort> ep2)
{
// Because the old algorithm does not put the nodes in the correct order in the case where more replicas
// are required than there are racks in a dc, we accept different order as long as the primary
@@ -230,15 +229,15 @@ public class NetworkTopologyStrategyTest
return false;
if (!ep1.get(0).equals(ep2.get(0)))
return true;
- Set<InetAddress> s1 = new HashSet<>(ep1);
- Set<InetAddress> s2 = new HashSet<>(ep2);
+ Set<InetAddressAndPort> s1 = new HashSet<>(ep1);
+ Set<InetAddressAndPort> s2 = new HashSet<>(ep2);
return !s1.equals(s2);
}
- IEndpointSnitch generateSnitch(Map<String, Integer> datacenters, Collection<InetAddress> nodes, Random rand)
+ IEndpointSnitch generateSnitch(Map<String, Integer> datacenters, Collection<InetAddressAndPort> nodes, Random rand)
{
- final Map<InetAddress, String> nodeToRack = new HashMap<>();
- final Map<InetAddress, String> nodeToDC = new HashMap<>();
+ final Map<InetAddressAndPort, String> nodeToRack = new HashMap<>();
+ final Map<InetAddressAndPort, String> nodeToDC = new HashMap<>();
Map<String, List<String>> racksPerDC = new HashMap<>();
datacenters.forEach((dc, rf) -> racksPerDC.put(dc, randomRacks(rf, rand)));
int rf = datacenters.values().stream().mapToInt(x -> x).sum();
@@ -250,7 +249,7 @@ public class NetworkTopologyStrategyTest
dcs[pos++] = dce.getKey();
}
- for (InetAddress node : nodes)
+ for (InetAddressAndPort node : nodes)
{
String dc = dcs[rand.nextInt(rf)];
List<String> racks = racksPerDC.get(dc);
@@ -261,12 +260,12 @@ public class NetworkTopologyStrategyTest
return new AbstractNetworkTopologySnitch()
{
- public String getRack(InetAddress endpoint)
+ public String getRack(InetAddressAndPort endpoint)
{
return nodeToRack.get(endpoint);
}
- public String getDatacenter(InetAddress endpoint)
+ public String getDatacenter(InetAddressAndPort endpoint)
{
return nodeToDC.get(endpoint);
}
@@ -283,20 +282,20 @@ public class NetworkTopologyStrategyTest
}
// Copy of older endpoints calculation algorithm for comparison
- public static List<InetAddress> calculateNaturalEndpoints(Token searchToken, TokenMetadata tokenMetadata, Map<String, Integer> datacenters, IEndpointSnitch snitch)
+ public static List<InetAddressAndPort> calculateNaturalEndpoints(Token searchToken, TokenMetadata tokenMetadata, Map<String, Integer> datacenters, IEndpointSnitch snitch)
{
// we want to preserve insertion order so that the first added endpoint becomes primary
- Set<InetAddress> replicas = new LinkedHashSet<>();
+ Set<InetAddressAndPort> replicas = new LinkedHashSet<>();
// replicas we have found in each DC
- Map<String, Set<InetAddress>> dcReplicas = new HashMap<>(datacenters.size());
+ Map<String, Set<InetAddressAndPort>> dcReplicas = new HashMap<>(datacenters.size());
for (Map.Entry<String, Integer> dc : datacenters.entrySet())
- dcReplicas.put(dc.getKey(), new HashSet<InetAddress>(dc.getValue()));
+ dcReplicas.put(dc.getKey(), new HashSet<InetAddressAndPort>(dc.getValue()));
Topology topology = tokenMetadata.getTopology();
// all endpoints in each DC, so we can check when we have exhausted all the members of a DC
- Multimap<String, InetAddress> allEndpoints = topology.getDatacenterEndpoints();
+ Multimap<String, InetAddressAndPort> allEndpoints = topology.getDatacenterEndpoints();
// all racks in a DC so we can check when we have exhausted all racks in a DC
- Map<String, Multimap<String, InetAddress>> racks = topology.getDatacenterRacks();
+ Map<String, Multimap<String, InetAddressAndPort>> racks = topology.getDatacenterRacks();
assert !allEndpoints.isEmpty() && !racks.isEmpty() : "not aware of any cluster members";
// tracks the racks we have already placed replicas in
@@ -306,15 +305,15 @@ public class NetworkTopologyStrategyTest
// tracks the endpoints that we skipped over while looking for unique racks
// when we relax the rack uniqueness we can append this to the current result so we don't have to wind back the iterator
- Map<String, Set<InetAddress>> skippedDcEndpoints = new HashMap<>(datacenters.size());
+ Map<String, Set<InetAddressAndPort>> skippedDcEndpoints = new HashMap<>(datacenters.size());
for (Map.Entry<String, Integer> dc : datacenters.entrySet())
- skippedDcEndpoints.put(dc.getKey(), new LinkedHashSet<InetAddress>());
+ skippedDcEndpoints.put(dc.getKey(), new LinkedHashSet<InetAddressAndPort>());
Iterator<Token> tokenIter = TokenMetadata.ringIterator(tokenMetadata.sortedTokens(), searchToken, false);
while (tokenIter.hasNext() && !hasSufficientReplicas(dcReplicas, allEndpoints, datacenters))
{
Token next = tokenIter.next();
- InetAddress ep = tokenMetadata.getEndpoint(next);
+ InetAddressAndPort ep = tokenMetadata.getEndpoint(next);
String dc = snitch.getDatacenter(ep);
// have we already found all replicas for this dc?
if (!datacenters.containsKey(dc) || hasSufficientReplicas(dc, dcReplicas, allEndpoints, datacenters))
@@ -341,10 +340,10 @@ public class NetworkTopologyStrategyTest
// if we've run out of distinct racks, add the hosts we skipped past already (up to RF)
if (seenRacks.get(dc).size() == racks.get(dc).keySet().size())
{
- Iterator<InetAddress> skippedIt = skippedDcEndpoints.get(dc).iterator();
+ Iterator<InetAddressAndPort> skippedIt = skippedDcEndpoints.get(dc).iterator();
while (skippedIt.hasNext() && !hasSufficientReplicas(dc, dcReplicas, allEndpoints, datacenters))
{
- InetAddress nextSkipped = skippedIt.next();
+ InetAddressAndPort nextSkipped = skippedIt.next();
dcReplicas.get(dc).add(nextSkipped);
replicas.add(nextSkipped);
}
@@ -353,15 +352,15 @@ public class NetworkTopologyStrategyTest
}
}
- return new ArrayList<InetAddress>(replicas);
+ return new ArrayList<InetAddressAndPort>(replicas);
}
- private static boolean hasSufficientReplicas(String dc, Map<String, Set<InetAddress>> dcReplicas, Multimap<String, InetAddress> allEndpoints, Map<String, Integer> datacenters)
+ private static boolean hasSufficientReplicas(String dc, Map<String, Set<InetAddressAndPort>> dcReplicas, Multimap<String, InetAddressAndPort> allEndpoints, Map<String, Integer> datacenters)
{
return dcReplicas.get(dc).size() >= Math.min(allEndpoints.get(dc).size(), getReplicationFactor(dc, datacenters));
}
- private static boolean hasSufficientReplicas(Map<String, Set<InetAddress>> dcReplicas, Multimap<String, InetAddress> allEndpoints, Map<String, Integer> datacenters)
+ private static boolean hasSufficientReplicas(Map<String, Set<InetAddressAndPort>> dcReplicas, Multimap<String, InetAddressAndPort> allEndpoints, Map<String, Integer> datacenters)
{
for (String dc : datacenters.keySet())
if (!hasSufficientReplicas(dc, dcReplicas, allEndpoints, datacenters))
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/OldNetworkTopologyStrategyTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/OldNetworkTopologyStrategyTest.java b/test/unit/org/apache/cassandra/locator/OldNetworkTopologyStrategyTest.java
index e6e17cd..9c90d57 100644
--- a/test/unit/org/apache/cassandra/locator/OldNetworkTopologyStrategyTest.java
+++ b/test/unit/org/apache/cassandra/locator/OldNetworkTopologyStrategyTest.java
@@ -17,7 +17,6 @@
*/
package org.apache.cassandra.locator;
-import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -45,7 +44,7 @@ public class OldNetworkTopologyStrategyTest
{
private List<Token> keyTokens;
private TokenMetadata tmd;
- private Map<String, ArrayList<InetAddress>> expectedResults;
+ private Map<String, ArrayList<InetAddressAndPort>> expectedResults;
@BeforeClass
public static void setupDD()
@@ -58,7 +57,7 @@ public class OldNetworkTopologyStrategyTest
{
keyTokens = new ArrayList<Token>();
tmd = new TokenMetadata();
- expectedResults = new HashMap<String, ArrayList<InetAddress>>();
+ expectedResults = new HashMap<String, ArrayList<InetAddressAndPort>>();
}
/**
@@ -136,12 +135,12 @@ public class OldNetworkTopologyStrategyTest
testGetEndpoints(strategy, keyTokens.toArray(new Token[0]));
}
- private ArrayList<InetAddress> buildResult(String... addresses) throws UnknownHostException
+ private ArrayList<InetAddressAndPort> buildResult(String... addresses) throws UnknownHostException
{
- ArrayList<InetAddress> result = new ArrayList<InetAddress>();
+ ArrayList<InetAddressAndPort> result = new ArrayList<>();
for (String address : addresses)
{
- result.add(InetAddress.getByName(address));
+ result.add(InetAddressAndPort.getByName(address));
}
return result;
}
@@ -153,7 +152,7 @@ public class OldNetworkTopologyStrategyTest
BigIntegerToken keyToken = new BigIntegerToken(keyTokenID);
keyTokens.add(keyToken);
- InetAddress ep = InetAddress.getByName(endpointAddress);
+ InetAddressAndPort ep = InetAddressAndPort.getByName(endpointAddress);
tmd.updateNormalToken(endpointToken, ep);
}
@@ -161,10 +160,10 @@ public class OldNetworkTopologyStrategyTest
{
for (Token keyToken : keyTokens)
{
- List<InetAddress> endpoints = strategy.getNaturalEndpoints(keyToken);
+ List<InetAddressAndPort> endpoints = strategy.getNaturalEndpoints(keyToken);
for (int j = 0; j < endpoints.size(); j++)
{
- ArrayList<InetAddress> hostsExpected = expectedResults.get(keyToken.toString());
+ ArrayList<InetAddressAndPort> hostsExpected = expectedResults.get(keyToken.toString());
assertEquals(endpoints.get(j), hostsExpected.get(j));
}
}
@@ -340,7 +339,7 @@ public class OldNetworkTopologyStrategyTest
int lastIPPart = 1;
for (BigIntegerToken token : tokens)
- tokenMetadataCurrent.updateNormalToken(token, InetAddress.getByName("254.0.0." + Integer.toString(lastIPPart++)));
+ tokenMetadataCurrent.updateNormalToken(token, InetAddressAndPort.getByName("254.0.0." + Integer.toString(lastIPPart++)));
return tokenMetadataCurrent;
}
@@ -360,7 +359,7 @@ public class OldNetworkTopologyStrategyTest
{
RackInferringSnitch endpointSnitch = new RackInferringSnitch();
- InetAddress movingNode = InetAddress.getByName("254.0.0." + Integer.toString(movingNodeIdx + 1));
+ InetAddressAndPort movingNode = InetAddressAndPort.getByName("254.0.0." + Integer.toString(movingNodeIdx + 1));
TokenMetadata tokenMetadataCurrent = initTokenMetadata(tokens);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/59b5b6be/test/unit/org/apache/cassandra/locator/PendingRangeMapsTest.java
----------------------------------------------------------------------
diff --git a/test/unit/org/apache/cassandra/locator/PendingRangeMapsTest.java b/test/unit/org/apache/cassandra/locator/PendingRangeMapsTest.java
index 7121550..56fd181 100644
--- a/test/unit/org/apache/cassandra/locator/PendingRangeMapsTest.java
+++ b/test/unit/org/apache/cassandra/locator/PendingRangeMapsTest.java
@@ -25,7 +25,6 @@ import org.apache.cassandra.dht.Range;
import org.apache.cassandra.dht.Token;
import org.junit.Test;
-import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Collection;
@@ -44,12 +43,12 @@ public class PendingRangeMapsTest {
{
PendingRangeMaps pendingRangeMaps = new PendingRangeMaps();
- pendingRangeMaps.addPendingRange(genRange("5", "15"), InetAddress.getByName("127.0.0.1"));
- pendingRangeMaps.addPendingRange(genRange("15", "25"), InetAddress.getByName("127.0.0.2"));
- pendingRangeMaps.addPendingRange(genRange("25", "35"), InetAddress.getByName("127.0.0.3"));
- pendingRangeMaps.addPendingRange(genRange("35", "45"), InetAddress.getByName("127.0.0.4"));
- pendingRangeMaps.addPendingRange(genRange("45", "55"), InetAddress.getByName("127.0.0.5"));
- pendingRangeMaps.addPendingRange(genRange("45", "65"), InetAddress.getByName("127.0.0.6"));
+ pendingRangeMaps.addPendingRange(genRange("5", "15"), InetAddressAndPort.getByName("127.0.0.1"));
+ pendingRangeMaps.addPendingRange(genRange("15", "25"), InetAddressAndPort.getByName("127.0.0.2"));
+ pendingRangeMaps.addPendingRange(genRange("25", "35"), InetAddressAndPort.getByName("127.0.0.3"));
+ pendingRangeMaps.addPendingRange(genRange("35", "45"), InetAddressAndPort.getByName("127.0.0.4"));
+ pendingRangeMaps.addPendingRange(genRange("45", "55"), InetAddressAndPort.getByName("127.0.0.5"));
+ pendingRangeMaps.addPendingRange(genRange("45", "65"), InetAddressAndPort.getByName("127.0.0.6"));
assertEquals(0, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("0")).size());
assertEquals(0, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("5")).size());
@@ -62,8 +61,8 @@ public class PendingRangeMapsTest {
assertEquals(2, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("55")).size());
assertEquals(1, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("65")).size());
- Collection<InetAddress> endpoints = pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("15"));
- assertTrue(endpoints.contains(InetAddress.getByName("127.0.0.1")));
+ Collection<InetAddressAndPort> endpoints = pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("15"));
+ assertTrue(endpoints.contains(InetAddressAndPort.getByName("127.0.0.1")));
}
@Test
@@ -71,13 +70,13 @@ public class PendingRangeMapsTest {
{
PendingRangeMaps pendingRangeMaps = new PendingRangeMaps();
- pendingRangeMaps.addPendingRange(genRange("5", "15"), InetAddress.getByName("127.0.0.1"));
- pendingRangeMaps.addPendingRange(genRange("15", "25"), InetAddress.getByName("127.0.0.2"));
- pendingRangeMaps.addPendingRange(genRange("25", "35"), InetAddress.getByName("127.0.0.3"));
- pendingRangeMaps.addPendingRange(genRange("35", "45"), InetAddress.getByName("127.0.0.4"));
- pendingRangeMaps.addPendingRange(genRange("45", "55"), InetAddress.getByName("127.0.0.5"));
- pendingRangeMaps.addPendingRange(genRange("45", "65"), InetAddress.getByName("127.0.0.6"));
- pendingRangeMaps.addPendingRange(genRange("65", "7"), InetAddress.getByName("127.0.0.7"));
+ pendingRangeMaps.addPendingRange(genRange("5", "15"), InetAddressAndPort.getByName("127.0.0.1"));
+ pendingRangeMaps.addPendingRange(genRange("15", "25"), InetAddressAndPort.getByName("127.0.0.2"));
+ pendingRangeMaps.addPendingRange(genRange("25", "35"), InetAddressAndPort.getByName("127.0.0.3"));
+ pendingRangeMaps.addPendingRange(genRange("35", "45"), InetAddressAndPort.getByName("127.0.0.4"));
+ pendingRangeMaps.addPendingRange(genRange("45", "55"), InetAddressAndPort.getByName("127.0.0.5"));
+ pendingRangeMaps.addPendingRange(genRange("45", "65"), InetAddressAndPort.getByName("127.0.0.6"));
+ pendingRangeMaps.addPendingRange(genRange("65", "7"), InetAddressAndPort.getByName("127.0.0.7"));
assertEquals(1, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("0")).size());
assertEquals(1, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("5")).size());
@@ -91,8 +90,8 @@ public class PendingRangeMapsTest {
assertEquals(2, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("55")).size());
assertEquals(1, pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("65")).size());
- Collection<InetAddress> endpoints = pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("6"));
- assertTrue(endpoints.contains(InetAddress.getByName("127.0.0.1")));
- assertTrue(endpoints.contains(InetAddress.getByName("127.0.0.7")));
+ Collection<InetAddressAndPort> endpoints = pendingRangeMaps.pendingEndpointsFor(new BigIntegerToken("6"));
+ assertTrue(endpoints.contains(InetAddressAndPort.getByName("127.0.0.1")));
+ assertTrue(endpoints.contains(InetAddressAndPort.getByName("127.0.0.7")));
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org