diff --git a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/edge/Node.java b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/edge/Node.java index 21c89fc9b8..ea4158f58a 100644 --- a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/edge/Node.java +++ b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/edge/Node.java @@ -194,24 +194,20 @@ public void setState(final JsonNode state) { } for (final InetRecord record : ipAddresses) { - if (record.getAddress() == ip4 && !ipv4Available) { + if (record.getAddress().equals(ip4) && !ipv4Available) { newlyUnavailable.add(record); - LOGGER.debug("disabling IPv4 address " + record.getAddress()); } - if (record.getAddress() == ip6 && !ipv6Available) { + if (record.getAddress().equals(ip6) && !ipv6Available) { newlyUnavailable.add(record); - LOGGER.debug("disabling IPv6 address " + record.getAddress()); } } for (final InetRecord record : unavailableIpAddresses) { - if (record.getAddress() == ip4 && ipv4Available) { + if (record.getAddress().equals(ip4) && ipv4Available) { newlyAvailable.add(record); - LOGGER.debug("enabling IPv4 address " + record.getAddress()); } - if (record.getAddress() == ip6 && ipv6Available) { + if (record.getAddress().equals(ip6) && ipv6Available) { newlyAvailable.add(record); - LOGGER.debug("enabling IPv6 address " + record.getAddress()); } } diff --git a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/TrafficRouter.java b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/TrafficRouter.java index 78bbdd2dba..34adf34e22 100644 --- a/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/TrafficRouter.java +++ b/traffic_router/core/src/main/java/com/comcast/cdn/traffic_control/traffic_router/core/router/TrafficRouter.java @@ -17,7 +17,6 @@ import java.io.IOException; import java.net.InetAddress; -import java.net.Inet4Address; import java.net.MalformedURLException; import java.net.URL; import java.net.UnknownHostException; @@ -812,10 +811,8 @@ public HTTPRouteResult multiRoute(final HTTPRequest request, final Track track) final DeliveryService ds = steeringResult.getDeliveryService(); List caches = selectCaches(request, ds, track); - try { - caches = editCacheListForIpVersion(InetAddress.getByName(request.getClientIP()) instanceof Inet4Address, caches); - } catch (UnknownHostException e) { - LOGGER.debug("Could not parse IP, accepting cache list as is."); + if (caches != null) { + caches = editCacheListForIpVersion(!request.getClientIP().contains(":"), caches); } // child Delivery Services can use their query parameters final String pathToHash = steeringHash + ds.extractSignificantQueryParams(request); @@ -862,7 +859,7 @@ public HTTPRouteResult multiRoute(final HTTPRequest request, final Track track) * Creates a string to be used in consistent hashing. *

* This uses simply the request path by default, but will consider any and all Query Parameters - * that are in deliveryService's {@link DeliveryService.consistentHashQueryParams} set as well. + * that are in deliveryService's {@link DeliveryService} consistentHashQueryParam set as well. * It will also fall back on the request path if the query parameters are not UTF-8-encoded. *

* @param deliveryService The {@link DeliveryService} being requested @@ -949,10 +946,8 @@ public HTTPRouteResult singleRoute(final HTTPRequest request, final Track track) routeResult.setDeliveryService(deliveryService); List caches = selectCaches(request, deliveryService, track); - try { - caches = editCacheListForIpVersion(InetAddress.getByName(request.getClientIP()) instanceof Inet4Address, caches); - } catch (UnknownHostException e) { - LOGGER.debug("Could not parse IP, accepting cache list as is."); + if (caches != null) { + caches = editCacheListForIpVersion(!request.getClientIP().contains(":"), caches); } if (caches == null || caches.isEmpty()) { @@ -1491,8 +1486,6 @@ private CacheLocation getClosestCacheLocation(final List cacheLoc * the caches that will considered * @param ds * the delivery service for the request - * @param request - * the request to consider for cache selection * @return the selected cache or null if none can be found */ private List selectCaches(final CacheLocation location, final DeliveryService ds) {