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/http: panic: Fail in goroutine after TestIdleConnH2Crash has completed #17838

Closed
mundaym opened this issue Nov 7, 2016 · 4 comments
Closed
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. Testing An issue that has been verified to require only test changes, not just a test failure.
Milestone

Comments

@mundaym
Copy link
Member

mundaym commented Nov 7, 2016

Seen this a few times on the builders/try-bots:

https://storage.googleapis.com/go-build-log/a00e08e6/linux-amd64-race_ddab7f06.log
https://build.golang.org/log/bea93398c6a9b02b43c328ff42ecb46aa68b6e42
https://build.golang.org/log/46e5048ad14411222494a1c0b36460239d09df8b

The TLS handshake error in the log below isn't always reported.

2016/11/05 00:51:18 http: TLS handshake error from 127.0.0.1:48335: read tcp 127.0.0.1:59339->127.0.0.1:48335: use of closed network connection
panic: Fail in goroutine after TestIdleConnH2Crash has completed

goroutine 2711 [running]:
panic(0x810760, 0xc420511040)
	/tmp/workdir/go/src/runtime/panic.go:531 +0x1cf
testing.(*common).Fail(0xc4203da380)
	/tmp/workdir/go/src/testing/testing.go:464 +0x119
testing.(*common).Error(0xc4203da380, 0xc42051d988, 0x1, 0x1)
	/tmp/workdir/go/src/testing/testing.go:531 +0x6f
net/http_test.TestIdleConnH2Crash.func2(0x896c5c, 0x3, 0xc420420b80, 0xf, 0x5, 0xc420420b80, 0xf, 0x8)
	/tmp/workdir/go/src/net/http/transport_test.go:3681 +0x1e1
net/http.(*Transport).dialConn(0xc42062c3c0, 0xa9f6e0, 0xc420372540, 0x0, 0xc42000aac0, 0x5, 0xc420420b80, 0xf, 0x180001, 0x0, ...)
	/tmp/workdir/go/src/net/http/transport.go:976 +0x38f
net/http.(*Transport).getConn.func4(0xc42062c3c0, 0xa9f6e0, 0xc420372540, 0xc42032db00, 0xc420439860)
	/tmp/workdir/go/src/net/http/transport.go:903 +0x78
created by net/http.(*Transport).getConn
	/tmp/workdir/go/src/net/http/transport.go:905 +0x3a3
FAIL	net/http	0.670s
@mundaym
Copy link
Member Author

mundaym commented Nov 7, 2016

/cc @bradfitz

@quentinmit quentinmit added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Nov 8, 2016
@quentinmit quentinmit added this to the Go1.8Maybe milestone Nov 8, 2016
@bradfitz
Copy link
Contributor

bradfitz commented Nov 8, 2016

@aclements, can you run your tool on this? I suspect this is fallout from my parallelizing most the net/http slow tests. But I can't see anything obvious in this test using any shared resources.

@bradfitz bradfitz self-assigned this Nov 8, 2016
@bradfitz bradfitz added the Testing An issue that has been verified to require only test changes, not just a test failure. label Nov 8, 2016
@bradfitz bradfitz modified the milestones: Go1.8, Go1.8Maybe Nov 8, 2016
@aclements
Copy link
Member

$ greplogs -dashboard -E 'Fail in goroutine after TestIdleConnH2Crash has completed' -md -l | tail
2016-11-07T18:54:14-9d139ac/solaris-amd64-smartosbuildlet
2016-11-07T19:32:11-9e4a70e/solaris-amd64-smartosbuildlet
2016-11-07T20:59:49-1a279b3/solaris-amd64-smartosbuildlet
2016-11-07T22:13:18-a9a1d02/solaris-amd64-smartosbuildlet
2016-11-08T00:19:30-de847be/solaris-amd64-smartosbuildlet
2016-11-08T17:50:17-41eb9bb/solaris-amd64-smartosbuildlet
2016-11-08T18:07:17-27a3d30/solaris-amd64-smartosbuildlet
2016-11-08T18:20:57-b990558/solaris-amd64-smartosbuildlet
2016-11-08T19:40:43-247fc4a/solaris-amd64-smartosbuildlet
2016-11-09T00:21:04-5af7553/solaris-amd64-smartosbuildlet

(It's not all solaris, but it mostly is.)

$ greplogs -dashboard -E 'Fail in goroutine after TestIdleConnH2Crash has completed' -l | findflakes -paths
First observed cd670a6 04 Nov 04:28 2016 (63 commits ago)
Last observed  5af7553 09 Nov 00:21 2016 (0 commits ago)
100% chance failure is still happening
40% failure probability (26 of 64 commits)
Likely culprits:
   40% cd670a6 net/http: speed up tests, use t.Parallel when it's safe
   24% 9f58597 cmd/go: fix minor typo in 'go bug'
   14% b5c0470 net/http: fix type name in comment
    9% 3440c7b net/http: tweak the new Client 307/308 redirect behavior a bit
    5% 6e26925 cmd/objdump: speed up tests
Past failures:
  1625da2 26 Oct 21:03 2016 (isolated failure)
  8e92275 15 Sep 14:30 2016 to 964639c 17 Sep 14:21 2016
    1.9% failure probability (2 of 53 commits)

@gopherbot
Copy link

CL https://golang.org/cl/33015 mentions this issue.

@golang golang locked and limited conversation to collaborators Nov 9, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. Testing An issue that has been verified to require only test changes, not just a test failure.
Projects
None yet
Development

No branches or pull requests

5 participants