bryancall opened a new pull request, #13894:
URL: https://github.com/apache/trafficserver/pull/13894

   The `xdebug_headers` and `x_remap` replays send a request with `Host: none`, 
which matches no remap rule, and expect the `500 Cannot find server` that ATS 
returns when the name does not resolve. ATS looked that name up through the CI 
host's resolver. When the answer took more than five seconds, the Proxy 
Verifier client stopped waiting first, and the test failed with `Poll timed out 
waiting for content` on the `none` transaction. That happened on [build 
45762](https://ci.trafficserver.apache.org/job/Github_Builds/job/autest/45762/) 
for #13827, [build 
45768](https://ci.trafficserver.apache.org/job/Github_Builds/job/autest/45768/) 
for #13842 and [build 
45787](https://ci.trafficserver.apache.org/job/Github_Builds/job/autest/45787/) 
for #13733, none of which touch xdebug. In 45762 the client waited its full 
5000 ms for `none` while the three requests after it were answered at once. The 
AuTest versions made the same lookup, but their client had no five-second limit.
   
   This gives both tests a local microDNS server with no default address, so 
`none` gets NXDOMAIN at once and the result no longer depends on the host's 
DNS. Every other host in these tests maps to 127.0.0.1, so nothing else changes.
   
   Testing, natively on a Fedora 44 host whose resolver answers in a few 
milliseconds: master passed these tests 5 of 5 times. With ATS pointed at a 
nameserver that never answers, master failed all three tests 5 of 5 times, each 
with the CI's `Poll timed out` on the `none` transaction. With this change they 
passed 20 of 20 times, and 9 of 10 times with every core busy. That one failure 
was microDNS unable to bind its TCP port, which was still in TIME_WAIT from my 
previous run seconds earlier, because each of my short runs restarts the port 
counter. It did not happen once in the other replay tests that already start a 
DNS server, across 154 full-suite runs. Giving the server the usual `127.0.0.1` 
default instead turns the expected 500 into a 502, which is why the default is 
empty.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to