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]
