http3 upstream connection stalls
Cydox opened this issue · comments
When using an HTTP3 upstream (tested with h3://dns.google/dns-query
) sometimes the dns proxy stops responding to queries.
The proxy starts working again after dns.google
closes the connection due to max connection age being reached. At that point the proxy restarts a new connection to dns.google
using 0-RTT.
This is happening just using this proxy as the DNS for my local machine. So far I have not been able to create a scenario for reliably reproducing the issue, but it'll usually start occurring after some time (maybe at least 20 minutes).
From the verbose logs I can see that the proxy gets stuck at:
Line 223 in f661fdc
@Cydox, hello and thanks for the report. Could you please collect the verbose log and goroutines profile for us? You can send both to devteam@adguard.com with the issue number in subject.
To collect the goroutines profile, enable the profiling first. This may be done either with --pprof
CLI option, or by setting pprof: true
within the YAML configuration file. After that, when the problem occur again, using the same host machine, request:
curl "http://127.0.0.1:6060/debug/pprof/goroutine?debug=1" > profile.txt
The same is available via any web browser.