This is an automated email from the ASF dual-hosted git repository.
zrhoffman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficcontrol.git
The following commit(s) were added to refs/heads/master by this push:
new c6fcfea717 Revert "Traffic Router DNS zone calculation optimizations
(#7622)"
c6fcfea717 is described below
commit c6fcfea71760261de0aa7e6127697e8d0fce9fb0
Author: Zach Hoffman <[email protected]>
AuthorDate: Tue Jul 11 12:31:22 2023 -0600
Revert "Traffic Router DNS zone calculation optimizations (#7622)"
This reverts commit dcf6e316aa7d395c2ffabebe5e4c6d10bb7cf1a2.
---
CHANGELOG.md | 1 -
.../traffic_router/core/config/ConfigHandler.java | 12 +---
.../traffic_router/core/dns/NameServer.java | 8 ---
.../traffic_router/core/edge/CacheRegister.java | 13 ----
.../core/edge/CacheRegisterTest.java | 81 ----------------------
5 files changed, 2 insertions(+), 113 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 740fc3b727..2365a34d47 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,7 +5,6 @@ The format is based on [Keep a
Changelog](http://keepachangelog.com/en/1.0.0/).
## [unreleased]
### Added
-- [#7622](https://github.com/apache/trafficcontrol/pull/7622) *Traffic Router*
Added further optimization to TR's algorithm of figuring out the zone for an
incoming request.
- [#7609](https://github.com/apache/trafficcontrol/pull/7609) *Traffic Portal*
Added Scope Query Param to SSO login.
- [#7450](https://github.com/apache/trafficcontrol/pull/7450) *Traffic Ops*
Removed hypnotoad section and added listen field to traffic_ops_golang section
in order to simplify cdn config.
- [#7290](https://github.com/apache/trafficcontrol/pull/7302) *Traffic
Monitor* Update TM results with hostname from via header, syncronize health on
caches with same service address
diff --git
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/config/ConfigHandler.java
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/config/ConfigHandler.java
index 26a7c0e6ff..64cde8bfbd 100644
---
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/config/ConfigHandler.java
+++
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/config/ConfigHandler.java
@@ -102,16 +102,11 @@ public class ConfigHandler {
private final AtomicBoolean cancelled = new AtomicBoolean(false);
private final AtomicBoolean isProcessing = new AtomicBoolean(false);
- private final Map<String, DeliveryService> fqdnToDeliveryService = new
HashMap<>();
private final static String NEUSTAR_POLLING_URL = "neustar.polling.url";
private final static String NEUSTAR_POLLING_INTERVAL =
"neustar.polling.interval";
private final static String LOCALIZATION_METHODS =
"localizationMethods";
- public Map<String, DeliveryService> getFQDNToDeliveryServiceMap() {
- return fqdnToDeliveryService;
- }
-
public String getConfigDir() {
return configDir;
}
@@ -187,7 +182,7 @@ public class ConfigHandler {
cacheRegister.setStats(stats);
parseTrafficOpsConfig(config, stats);
- final Map<String, DeliveryService>
deliveryServiceMap = parseDeliveryServiceConfig(JsonUtils.getJsonNode(jo,
deliveryServicesKey), cacheRegister);
+ final Map<String, DeliveryService>
deliveryServiceMap = parseDeliveryServiceConfig(JsonUtils.getJsonNode(jo,
deliveryServicesKey));
parseCertificatesConfig(config);
certificatesPublisher.setDeliveryServicesJson(deliveryServicesJson);
@@ -453,7 +448,7 @@ public class ConfigHandler {
statTracker.initialize(statMap, cacheRegister);
}
- private Map<String, DeliveryService> parseDeliveryServiceConfig(final
JsonNode allDeliveryServices, final CacheRegister cacheRegister) throws
JsonUtilsException {
+ private Map<String, DeliveryService> parseDeliveryServiceConfig(final
JsonNode allDeliveryServices) throws JsonUtilsException {
final Map<String,DeliveryService> deliveryServiceMap = new
HashMap<>();
final Iterator<String> deliveryServiceIter =
allDeliveryServices.fieldNames();
@@ -474,9 +469,6 @@ public class ConfigHandler {
deliveryService.setDns(isDns);
deliveryServiceMap.put(deliveryServiceId,
deliveryService);
-
fqdnToDeliveryService.put(deliveryService.getRoutingName() + "." +
deliveryService.getDomain(), deliveryService);
- fqdnToDeliveryService.put("_." +
deliveryService.getDomain(), deliveryService);
-
cacheRegister.setFQDNToDeliveryServiceMap(fqdnToDeliveryService);
}
return deliveryServiceMap;
diff --git
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
index 5e08488997..91c6fa5cf9 100644
---
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
+++
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/dns/NameServer.java
@@ -369,14 +369,6 @@ public class NameServer {
return;
}
- if (clientAddress != null &&
clientAddress.getHostName().equals("_")) {
- response.getHeader().setRcode(Rcode.NXDOMAIN);
- response.getHeader().setFlag(Flags.AA);
- addDenialOfExistence(qname, zone, response, flags);
- addSOA(zone, response, Section.AUTHORITY, flags);
- return;
- }
-
final SetResponse sr = zone.findRecords(qname, qtype);
if (sr.isSuccessful()) {
diff --git
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegister.java
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegister.java
index e173a798e2..e6de36b29d 100644
---
a/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegister.java
+++
b/traffic_router/core/src/main/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegister.java
@@ -32,7 +32,6 @@ public class CacheRegister {
private Map<String,Cache> allCaches;
private TreeSet<DeliveryServiceMatcher> deliveryServiceMatchers;
private Map<String, DeliveryService> dsMap;
- private Map<String, DeliveryService> fqdnToDeliveryServiceMap;
private JsonNode config;
private JsonNode stats;
private int edgeTrafficRouterCount;
@@ -149,10 +148,6 @@ public class CacheRegister {
* @return the DeliveryService that matches the request
*/
public DeliveryService getDeliveryService(final Request request) {
- final String requestName = request.getHostname();
- if (getFQDNToDeliveryServiceMap() != null &&
getFQDNToDeliveryServiceMap().get(requestName) != null) {
- return getFQDNToDeliveryServiceMap().get(requestName);
- }
if (deliveryServiceMatchers == null) {
return null;
}
@@ -184,14 +179,6 @@ public class CacheRegister {
this.dsMap = dsMap;
}
- public Map<String, DeliveryService> getFQDNToDeliveryServiceMap() {
- return fqdnToDeliveryServiceMap;
- }
-
- public void setFQDNToDeliveryServiceMap(final Map<String,
DeliveryService> fqdnToDeliveryServiceMap) {
- this.fqdnToDeliveryServiceMap = fqdnToDeliveryServiceMap;
- }
-
public JsonNode getTrafficRouters() {
return trafficRouters;
}
diff --git
a/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegisterTest.java
b/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegisterTest.java
index 07f338e205..471167fcb6 100644
---
a/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegisterTest.java
+++
b/traffic_router/core/src/test/java/org/apache/traffic_control/traffic_router/core/edge/CacheRegisterTest.java
@@ -15,23 +15,13 @@
package org.apache.traffic_control.traffic_router.core.edge;
-import com.fasterxml.jackson.databind.node.ArrayNode;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
import org.apache.traffic_control.traffic_router.core.ds.DeliveryService;
import
org.apache.traffic_control.traffic_router.core.ds.DeliveryServiceMatcher;
-import org.apache.traffic_control.traffic_router.core.request.DNSRequest;
import org.apache.traffic_control.traffic_router.core.request.HTTPRequest;
import org.apache.traffic_control.traffic_router.core.request.Request;
-import org.apache.traffic_control.traffic_router.core.util.JsonUtilsException;
import org.junit.Before;
import org.junit.Test;
-import org.xbill.DNS.Name;
-import org.xbill.DNS.TextParseException;
-import org.xbill.DNS.Type;
-import java.util.HashMap;
-import java.util.Map;
import java.util.TreeSet;
import static
org.apache.traffic_control.traffic_router.core.ds.DeliveryServiceMatcher.Type.HOST;
@@ -100,75 +90,4 @@ public class CacheRegisterTest {
httpRequest.setPath("foo/abcde/bar");
assertThat(cacheRegister.getDeliveryService(httpRequest),
nullValue());
}
-
- @Test
- public void itReturnsDeliveryServiceFromFQDNMapForHTTPRequest() throws
JsonUtilsException {
- String requestName = "http://foo.service01.kabletown.com/";
- HTTPRequest httpRequest = new HTTPRequest();
- httpRequest.setHostname("foo.service01.kabletown.com");
- httpRequest.setRequestedUrl(requestName);
- Map<String, DeliveryService> map = new HashMap<>();
-
- ObjectNode node = JsonNodeFactory.instance.objectNode();
- ArrayNode domainNode = node.putArray("domains");
- domainNode.add("kabletown.com");
- node.put("routingName","foo");
- node.put("coverageZoneOnly", false);
- DeliveryService ds = new DeliveryService("service01", node);
-
- map.put("foo.service01.kabletown.com", ds);
- map.put("_.service01.kabletown.com", ds);
- cacheRegister.setFQDNToDeliveryServiceMap(map);
-
- DeliveryService answer =
cacheRegister.getDeliveryService(httpRequest);
- assertThat("FQDNToDeliveryServiceMap was expected to have the
key foo.service01.kabletown.com",
-
cacheRegister.getFQDNToDeliveryServiceMap().containsKey("foo.service01.kabletown.com"));
- assertThat("Returned Delivery Service was expected to have the
ID service01",
- answer.getId().equals("service01"));
-
-
- httpRequest.setRequestedUrl("http://_.service01.kabletown.com");
- answer = cacheRegister.getDeliveryService(httpRequest);
- assertThat("FQDNToDeliveryServiceMap was expected to have the
key _.service01.kabletown.com",
-
cacheRegister.getFQDNToDeliveryServiceMap().containsKey("_.service01.kabletown.com"));
- assertThat("Returned Delivery Service was expected to have the
ID service01",
- answer.getId().equals("service01"));
- }
-
- @Test
- public void itReturnsDeliveryServiceFromFQDNMapForDNSRequest() throws
JsonUtilsException, TextParseException {
- final Name name = Name.fromString("edge.example.com.");
- DNSRequest dnsRequest = new DNSRequest("example.com", name,
Type.A);
- dnsRequest.setClientIP("10.10.10.10");
- dnsRequest.setHostname(name.relativize(Name.root).toString());
-
- Map<String, DeliveryService> map = new HashMap<>();
-
- ObjectNode node = JsonNodeFactory.instance.objectNode();
- ArrayNode domainNode = node.putArray("domains");
- domainNode.add("example.com");
- node.put("routingName","edge");
- node.put("coverageZoneOnly", false);
- DeliveryService ds = new DeliveryService("example", node);
-
- map.put("edge.example.com", ds);
- map.put("_.example.com", ds);
- cacheRegister.setFQDNToDeliveryServiceMap(map);
-
- DeliveryService answer =
cacheRegister.getDeliveryService(dnsRequest);
- assertThat("FQDNToDeliveryServiceMap was expected to have the
key edge.example.com",
-
cacheRegister.getFQDNToDeliveryServiceMap().containsKey("edge.example.com"));
- assertThat("Returned Delivery Service was expected to have the
ID example",
- answer.getId().equals("example"));
-
- final Name underscoreName = Name.fromString("_.example.com");
- dnsRequest = new DNSRequest("example.com", underscoreName,
Type.A);
- dnsRequest.setClientIP("10.10.10.10");
- dnsRequest.setHostname(name.relativize(Name.root).toString());
- answer = cacheRegister.getDeliveryService(dnsRequest);
- assertThat("FQDNToDeliveryServiceMap was expected to have the
key _.example.com",
-
cacheRegister.getFQDNToDeliveryServiceMap().containsKey("_.example.com"));
- assertThat("Returned Delivery Service was expected to have the
ID example",
- answer.getId().equals("example"));
- }
}