Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

net: go1.5beta1 net tests timeout on OS X 10.10.4, apparently in getaddrinfo #11665

calmh opened this issue Jul 11, 2015 · 4 comments

net: go1.5beta1 net tests timeout on OS X 10.10.4, apparently in getaddrinfo #11665

calmh opened this issue Jul 11, 2015 · 4 comments


Copy link

@calmh calmh commented Jul 11, 2015

The net package tests time out, apparently in getaddrinfo. This is not affected by having or not having a working internet connection, although even the "working" variant is a bit flaky for me at the moment (airport). Latest OS X (Yosemite 10.10.4), bootstrapping from official 1.4.2 package. Full log in

jb@syno:/usr/local/go1.5/src $ ./all.bash 
ok      mime/multipart  0.138s
ok      mime/quotedprintable    0.200s
panic: test timed out after 2m0s

goroutine 268 [running]:
    /usr/local/go1.5/src/testing/testing.go:702 +0x132
created by time.goFunc
    /usr/local/go1.5/src/time/sleep.go:129 +0x3a

goroutine 1 [chan receive]:
testing.RunTests(0x37daf8, 0x46eb60, 0x95, 0x95, 0x2ba601)
    /usr/local/go1.5/src/testing/testing.go:561 +0x8ad
testing.(*M).Run(0xc820061ef8, 0x5725e8)
    /usr/local/go1.5/src/testing/testing.go:493 +0x70
    /usr/local/go1.5/src/net/main_test.go:50 +0x2b
    net/_test/_testmain.go:396 +0x113

goroutine 17 [syscall, locked to thread]:
    /usr/local/go1.5/src/runtime/asm_amd64.s:1696 +0x1

goroutine 267 [syscall, locked to thread]:
net._C2func_getaddrinfo(0x12001b0, 0x0, 0xc8202d9d10, 0xc820268300, 0x0, 0x0, 0x0)
    ??:0 +0x4d
net.cgoLookupIPCNAME(0x307fb0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x37e400)
    /usr/local/go1.5/src/net/cgo_unix.go:111 +0x1ac
net.cgoLookupIP(0x307fb0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x100000002)
    /usr/local/go1.5/src/net/cgo_unix.go:163 +0x56
net.lookupIP(0x307fb0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go1.5/src/net/lookup_unix.go:67 +0x94
net.glob.func15(0x37e498, 0x307fb0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go1.5/src/net/hook.go:10 +0x4d
net.lookupIPMerge.func1(0x0, 0x0, 0x0, 0x0)
    /usr/local/go1.5/src/net/lookup.go:68 +0x71
internal/singleflight.(*Group).doCall(0x46fdd0, 0xc8202b6d70, 0x307fb0, 0x4, 0xc820233b98)
    /usr/local/go1.5/src/internal/singleflight/singleflight.go:93 +0x2c
internal/singleflight.(*Group).Do(0x46fdd0, 0x307fb0, 0x4, 0xc820233b98, 0x0, 0x0, 0x0, 0x0, 0x10)
    /usr/local/go1.5/src/internal/singleflight/singleflight.go:63 +0x284
net.lookupIPMerge(0x307fb0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go1.5/src/net/lookup.go:69 +0x9b
net.LookupIP(0x307fb0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0)
    /usr/local/go1.5/src/net/lookup.go:50 +0x2d2
    /usr/local/go1.5/src/net/ip_test.go:82 +0x2fa
testing.tRunner(0xc8202e4bd0, 0x46f058)
    /usr/local/go1.5/src/testing/testing.go:455 +0x98
created by testing.RunTests
    /usr/local/go1.5/src/testing/testing.go:560 +0x86d
FAIL    net 120.024s
ok      net/http    5.048s
2015/07/11 14:18:14 Failed: exit status 1
jb@syno:/usr/local/go1.5/src $ git describe
fatal: No annotated tags can describe 'b6ead9f171742cd5b519a22ecc690354b0d1ce27'.
However, there were unannotated tags: try --tags.
jb@syno:/usr/local/go1.5/src $ git describe --tags
jb@syno:/usr/local/go1.5/src $ uname -a
Darwin syno 14.4.0 Darwin Kernel Version 14.4.0: Thu May 28 11:35:04 PDT 2015; root:xnu-2782.30.5~1/RELEASE_X86_64 x86_64
jb@syno:/usr/local/go1.5/src $ 

(should go1.5beta1 maybe have been an annotated tag?)

@ianlancetaylor ianlancetaylor added this to the Go1.5 milestone Jul 11, 2015
Copy link

@ianlancetaylor ianlancetaylor commented Jul 11, 2015

@ianlancetaylor ianlancetaylor changed the title go1.5beta1 net tests timeout on OS X 10.10.4, apparently in getaddrinfo net: go1.5beta1 net tests timeout on OS X 10.10.4, apparently in getaddrinfo Jul 11, 2015
Copy link

@bradfitz bradfitz commented Jul 13, 2015

I can't reproduce. I'm using the same OS X version.

Do you have any antivirus or firewall software running? Or VPN? Somehow your DNS requests are taking a different turn inside libc/kernel.

Copy link
Contributor Author

@calmh calmh commented Jul 14, 2015

No weird stuff (OS X firewall turned off, no VPN, no odd apps to track internet usage). However I do have a slightly unusual DNS setup; I have an /etc/resolver/<internal-company-domain> with a search path and an internal DNS server in it, that is not reachable unless I'm on the required network. This does mean unqualified names that don't actually exist in any of the earlier search paths get tried in that direction, and that takes a long time since the DNS server in question is not reachable.

I get a lot of this in tcpdump when running the test in question:

13:08:33.797045 IP > 40700+ A? abc.<internal-company-domain>. (34)
13:08:33.797045 IP > 11779+ AAAA? abc.<internal-company-domain>. (34)
13:08:50.590418 IP > 51924+ A? 123:.<internal-company-domain>. (35)
13:08:50.590484 IP > 8017+ AAAA? 123:.<internal-company-domain>. (35)

Those never get an answer. Perhaps timeout of resolving unqualified names should not really be a test failure? I get that my setup could be considered broken (although it works for me and does what I asked of it), but depending on the build hosts DNS setup seems a little fragile.

Copy link

@gopherbot gopherbot commented Jul 22, 2015

CL mentions this issue.

@rsc rsc closed this in 5201bf7 Jul 22, 2015
@golang golang locked and limited conversation to collaborators Aug 5, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants