$ time systemd-resolve -p dns not-a-real-hostname not-a-real-hostname: resolve call failed: No appropriate name servers or networks for name found
real 0m0.003s user 0m0.000s sys 0m0.004s $ time systemd-resolve -p llmnr not-a-real-hostname not-a-real-hostname: resolve call failed: All attempts to contact name servers or networks failed real 0m0.850s user 0m0.000s sys 0m0.004s $ time systemd-resolve -p llmnr-ipv4 not-a-real-hostname not-a-real-hostname: resolve call failed: All attempts to contact name servers or networks failed real 0m0.820s user 0m0.000s sys 0m0.000s $ time systemd-resolve -p llmnr-ipv6 not-a-real-hostname not-a-real-hostname: resolve call failed: All attempts to contact name servers or networks failed real 0m0.750s user 0m0.000s sys 0m0.000s $ time systemd-resolve not-a-real-hostname not-a-real-hostname: resolve call failed: All attempts to contact name servers or networks failed real 0m0.712s user 0m0.004s sys 0m0.000s The dns resolution from systemd-resolve is fast; the llmnr one is not. We currently have llmnr resolution enabled by default. ...it's a feature?! What is the usecase of resolving things that do not exist? Surely we optimise for the fact that most resolutions will succeed, from performance point of view. The first result retrieved, is returned back. -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1739672 Title: Regression in getaddrinfo(): calls block for much longer on Bionic (compared to Xenial) Status in glibc package in Ubuntu: Invalid Status in linux package in Ubuntu: Invalid Status in systemd package in Ubuntu: Confirmed Bug description: When testing MAAS on Bionic, we noticed sluggish performance that we could not immediately explain. After comparing the results from a run of the test suite on Xenial to a run on Bionic, we determined that the slowdowns had to do with DNS lookups. In particular, if MAAS attempts to resolve a hostname using getaddrinfo() and the call fails, on Xenial the negative result is returned in a fraction of a second. On Bionic, the negative result is returned in ~1.6 seconds, according to some measures. ### To run the test ### git clone https://github.com/mpontillo/test-getaddrinfo cd test-getaddrinfo make ### Results on Xenial ### $ time ./test not-a-real-hostname Trying to resolve: not-a-real-hostname getaddrinfo errno: Success getaddrinfo() return value: -2 (Name or service not known) real 0m0.015s user 0m0.000s sys 0m0.000s ### Results on Bionic ### $ time ./test not-a-real-hostname Trying to resolve: not-a-real-hostname getaddrinfo errno: Resource temporarily unavailable getaddrinfo() return value: -3 (Temporary failure in name resolution) real 0m1.609s user 0m0.004s sys 0m0.000s To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1739672/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp