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: TestTransportNoReuseAfterEarlyResponse failures #57608

Closed
gopherbot opened this issue Jan 4, 2023 · 6 comments
Closed

net/http: TestTransportNoReuseAfterEarlyResponse failures #57608

gopherbot opened this issue Jan 4, 2023 · 6 comments
Assignees
Labels
FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@gopherbot
Copy link

gopherbot commented Jan 4, 2023

#!watchflakes
post <- pkg == "net/http" && test == "TestTransportNoReuseAfterEarlyResponse" && `timeout waiting for GET request`

Issue created automatically to collect these failures.

Example (log):

--- FAIL: TestTransportNoReuseAfterEarlyResponse (11.09s)
    transport_test.go:3362: Closed server connection
    transport_test.go:3407: timeout waiting for GET request to finish
panic: Fail in goroutine after TestTransportNoReuseAfterEarlyResponse has completed

goroutine 7682 [running]:
panic({0x143b0c0, 0xc0001a5db0})
	/tmp/buildlet/go/src/runtime/panic.go:987 +0x3ba fp=0xc0008fbe90 sp=0xc0008fbdd0 pc=0x1037a1a
testing.(*common).Fail(0xc0001d31e0)
	/tmp/buildlet/go/src/testing/testing.go:824 +0xe5 fp=0xc0008fbef8 sp=0xc0008fbe90 pc=0x10ef285
testing.(*common).Errorf(0xc0001d31e0, {0x14c6528?, 0xc0001c2a20?}, {0xc0003defb8?, 0x12ce09e?, 0xc00042a240?})
	/tmp/buildlet/go/src/testing/testing.go:941 +0x65 fp=0xc0008fbf50 sp=0xc0008fbef8 pc=0x10efe85
net/http_test.TestTransportNoReuseAfterEarlyResponse.func3()
	/tmp/buildlet/go/src/net/http/transport_test.go:3396 +0x139 fp=0xc0008fbfe0 sp=0xc0008fbf50 pc=0x13e2339
runtime.goexit()
	/tmp/buildlet/go/src/runtime/asm_amd64.s:1594 +0x1 fp=0xc0008fbfe8 sp=0xc0008fbfe0 pc=0x106bb41
created by net/http_test.TestTransportNoReuseAfterEarlyResponse
	/tmp/buildlet/go/src/net/http/transport_test.go:3392 +0x4fd

watchflakes

@gopherbot gopherbot added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Jan 4, 2023
@gopherbot
Copy link
Author

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "net/http" && test == "TestTransportNoReuseAfterEarlyResponse"
2022-12-06 19:00 darwin-amd64-12_0 go@618120c1 net/http.TestTransportNoReuseAfterEarlyResponse (log)
--- FAIL: TestTransportNoReuseAfterEarlyResponse (11.09s)
    transport_test.go:3362: Closed server connection
    transport_test.go:3407: timeout waiting for GET request to finish
panic: Fail in goroutine after TestTransportNoReuseAfterEarlyResponse has completed

goroutine 7682 [running]:
panic({0x143b0c0, 0xc0001a5db0})
	/tmp/buildlet/go/src/runtime/panic.go:987 +0x3ba fp=0xc0008fbe90 sp=0xc0008fbdd0 pc=0x1037a1a
testing.(*common).Fail(0xc0001d31e0)
	/tmp/buildlet/go/src/testing/testing.go:824 +0xe5 fp=0xc0008fbef8 sp=0xc0008fbe90 pc=0x10ef285
testing.(*common).Errorf(0xc0001d31e0, {0x14c6528?, 0xc0001c2a20?}, {0xc0003defb8?, 0x12ce09e?, 0xc00042a240?})
	/tmp/buildlet/go/src/testing/testing.go:941 +0x65 fp=0xc0008fbf50 sp=0xc0008fbef8 pc=0x10efe85
net/http_test.TestTransportNoReuseAfterEarlyResponse.func3()
	/tmp/buildlet/go/src/net/http/transport_test.go:3396 +0x139 fp=0xc0008fbfe0 sp=0xc0008fbf50 pc=0x13e2339
runtime.goexit()
	/tmp/buildlet/go/src/runtime/asm_amd64.s:1594 +0x1 fp=0xc0008fbfe8 sp=0xc0008fbfe0 pc=0x106bb41
created by net/http_test.TestTransportNoReuseAfterEarlyResponse
	/tmp/buildlet/go/src/net/http/transport_test.go:3392 +0x4fd
2022-12-09 20:04 darwin-amd64-13 go@c2a2fbab net/http.TestTransportNoReuseAfterEarlyResponse (log)
2022/12/10 01:18:20 httptest.Server blocked in Close after 5 seconds, waiting for connections:
  *net.TCPConn 0xc000682050 127.0.0.1:50433 in state active
--- FAIL: TestTransportNoReuseAfterEarlyResponse (7.06s)
    transport_test.go:3362: Closed server connection
    transport_test.go:3407: timeout waiting for GET request to finish
panic: Fail in goroutine after TestTransportNoReuseAfterEarlyResponse has completed

goroutine 5635 [running]:
panic({0x143b0c0, 0xc00017c060})
	/tmp/buildlet/go/src/runtime/panic.go:987 +0x3ba fp=0xc000319e90 sp=0xc000319dd0 pc=0x1037a1a
testing.(*common).Fail(0xc000158000)
	/tmp/buildlet/go/src/testing/testing.go:824 +0xe5 fp=0xc000319ef8 sp=0xc000319e90 pc=0x10ef285
testing.(*common).Errorf(0xc000158000, {0x14c6528?, 0xc000230000?}, {0xc000319fb8?, 0xc000145380?, 0xc000bbc140?})
	/tmp/buildlet/go/src/testing/testing.go:941 +0x65 fp=0xc000319f50 sp=0xc000319ef8 pc=0x10efe85
net/http_test.TestTransportNoReuseAfterEarlyResponse.func3()
	/tmp/buildlet/go/src/net/http/transport_test.go:3396 +0x139 fp=0xc000319fe0 sp=0xc000319f50 pc=0x13e2339
runtime.goexit()
	/tmp/buildlet/go/src/runtime/asm_amd64.s:1594 +0x1 fp=0xc000319fe8 sp=0xc000319fe0 pc=0x106bb41
created by net/http_test.TestTransportNoReuseAfterEarlyResponse
	/tmp/buildlet/go/src/net/http/transport_test.go:3392 +0x4fd

watchflakes

@bcmills
Copy link
Contributor

bcmills commented Jan 6, 2023

The above two commits are both on release-branch.go1.19.

@neild, is this likely to have been fixed in 1.20?

@bcmills bcmills added the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Jan 6, 2023
@gopherbot
Copy link
Author

Timed out in state WaitingForInfo. Closing.

(I am just a bot, though. Please speak up if this is a mistake or you have the requested information.)

@gopherbot
Copy link
Author

Found new dashboard test flakes for:

#!watchflakes
post <- pkg == "net/http" && test == "TestTransportNoReuseAfterEarlyResponse"
2023-03-14 09:07 darwin-amd64-10_15 go@a54fe8a2 net/http.TestTransportNoReuseAfterEarlyResponse (log)
--- FAIL: TestTransportNoReuseAfterEarlyResponse (0.00s)
    --- FAIL: TestTransportNoReuseAfterEarlyResponse/h1 (7.07s)
        transport_test.go:3414: Closed server connection
        transport_test.go:3458: timeout waiting for GET request to finish
panic: Fail in goroutine after TestTransportNoReuseAfterEarlyResponse has completed

goroutine 4536 [running]:
panic({0x1421ba0?, 0xc00117f1e0?})
	/tmp/buildlet/go/src/runtime/panic.go:1016 +0x3ac fp=0xc0007a7e28 sp=0xc0007a7d78 pc=0x10345ec
testing.(*common).Fail(0xc000218b60)
	/tmp/buildlet/go/src/testing/testing.go:952 +0xdd fp=0xc0007a7e90 sp=0xc0007a7e28 pc=0x10ef51d
testing.(*common).Fail(0xc000316000)
	/tmp/buildlet/go/src/testing/testing.go:946 +0x45 fp=0xc0007a7ef8 sp=0xc0007a7e90 pc=0x10ef485
testing.(*common).Errorf(0xc000316000, {0x14b66e6?, 0xc0005b4600?}, {0xc0014befb8?, 0xc000313520?, 0x300000000000000?})
	/tmp/buildlet/go/src/testing/testing.go:1069 +0x5e fp=0xc0007a7f50 sp=0xc0007a7ef8 pc=0x10f00de
net/http_test.testTransportNoReuseAfterEarlyResponse.func3()
	/tmp/buildlet/go/src/net/http/transport_test.go:3447 +0x12d fp=0xc0007a7fe0 sp=0xc0007a7f50 pc=0x13bcbad
runtime.goexit()
	/tmp/buildlet/go/src/runtime/asm_amd64.s:1619 +0x1 fp=0xc0007a7fe8 sp=0xc0007a7fe0 pc=0x1068e01
created by net/http_test.testTransportNoReuseAfterEarlyResponse in goroutine 1828
	/tmp/buildlet/go/src/net/http/transport_test.go:3443 +0x479

watchflakes

@gopherbot gopherbot reopened this Mar 14, 2023
@bcmills bcmills removed the WaitingForInfo Issue is not actionable because of missing required information, which needs to be provided. label Mar 14, 2023
@bcmills
Copy link
Contributor

bcmills commented Mar 14, 2023

That last one is a recent commit on the main branch.

@bcmills
Copy link
Contributor

bcmills commented Mar 20, 2023

This failure mode is fixed by https://go.dev/cl/477196. (It is possible that the test will still fail due to a deadlock or a default timeout on the transport, but watchflakes can file a new issue for the new failure mode.)

@bcmills bcmills closed this as completed Mar 20, 2023
@bcmills bcmills added this to the Go1.21 milestone Mar 20, 2023
@bcmills bcmills self-assigned this Mar 20, 2023
@golang golang locked and limited conversation to collaborators Mar 19, 2024
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.
Projects
Status: Done
Development

No branches or pull requests

2 participants