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: TestDialTimeout failures with WSAECONNREFUSED #62359

Closed
gopherbot opened this issue Aug 29, 2023 · 4 comments
Closed

net: TestDialTimeout failures with WSAECONNREFUSED #62359

gopherbot opened this issue Aug 29, 2023 · 4 comments
Assignees
Labels
arch-arm64 NeedsFix The path to resolution is known, but the work has not been done. OS-Windows Testing An issue that has been verified to require only test changes, not just a test failure.
Milestone

Comments

@gopherbot
Copy link

gopherbot commented Aug 29, 2023

#!watchflakes
default <- pkg == "net" && test == "TestDialTimeout" && `No connection could be made because the target machine actively refused it\.`

Issue created automatically to collect these failures.

Example (log):

--- FAIL: TestDialTimeout (0.09s)
    --- FAIL: TestDialTimeout/1ms/0s (0.07s)
        timeout_test.go:121: Dial returned after 455.4µs; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:53192: connectex: No connection could be made because the target machine actively refused it., want timeout
    --- FAIL: TestDialTimeout/0s/1ms (0.00s)
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:53192: connectex: No connection could be made because the target machine actively refused it., want timeout
    --- FAIL: TestDialTimeout/1ms/5s (0.00s)
        timeout_test.go:121: Dial returned after 300.4µs; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:53192: connectex: No connection could be made because the target machine actively refused it., want timeout
    timeout_test.go:57: ignored 200 spurious connections

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 Aug 29, 2023
@gopherbot
Copy link
Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "net" && test == "TestDialTimeout"
2023-08-29 20:38 windows-arm64-11 go@a9d4b2db net.TestDialTimeout (log)
--- FAIL: TestDialTimeout (0.09s)
    --- FAIL: TestDialTimeout/1ms/0s (0.07s)
        timeout_test.go:121: Dial returned after 455.4µs; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:53192: connectex: No connection could be made because the target machine actively refused it., want timeout
    --- FAIL: TestDialTimeout/0s/1ms (0.00s)
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:53192: connectex: No connection could be made because the target machine actively refused it., want timeout
    --- FAIL: TestDialTimeout/1ms/5s (0.00s)
        timeout_test.go:121: Dial returned after 300.4µs; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:53192: connectex: No connection could be made because the target machine actively refused it., want timeout
    timeout_test.go:57: ignored 200 spurious connections

watchflakes

@bcmills bcmills self-assigned this Aug 30, 2023
@bcmills bcmills added this to the Go1.22 milestone Aug 30, 2023
@bcmills bcmills changed the title net: TestDialTimeout failures net: TestDialTimeout failures with WSAECONNREFUSED Aug 30, 2023
@bcmills bcmills added Testing An issue that has been verified to require only test changes, not just a test failure. OS-Windows NeedsFix The path to resolution is known, but the work has not been done. arch-arm64 labels Aug 30, 2023
@gopherbot gopherbot removed the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Aug 30, 2023
@gopherbot
Copy link
Author

Change https://go.dev/cl/524455 mentions this issue: net: skip TestDialTimeout subtests on Windows if Dial returns WSAECONNREFUSED

@gopherbot
Copy link
Author

Change https://go.dev/cl/524595 mentions this issue: net: retry TestDialTimeout subtests with progressively shorter timeouts

gopherbot pushed a commit that referenced this issue Aug 30, 2023
The LUCI builders seem to show that the failure mode in #62359 is not
specific to windows/arm64, but it occurs to me that we ought to be
able to eventually retry by making the timeout so short that the
remote end can't possibly respond in time (discounting the possibility
that the kernel itself might short-circuit the loopback address).

For #62377.
Updates #62359.
Updates #56876.

Change-Id: I1fb5fa4f2a5d2cfe35465f34248ed9a035f91f4f
Reviewed-on: https://go-review.googlesource.com/c/go/+/524595
Reviewed-by: Damien Neil <dneil@google.com>
Auto-Submit: Bryan Mills <bcmills@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Run-TryBot: Bryan Mills <bcmills@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
@gopherbot
Copy link
Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "net" && test == "TestDialTimeout" && `No connection could be made because the target machine actively refused it\.`
2023-08-29 21:43 windows-arm64-11 go@22eba6a1 net.TestDialTimeout (log)
--- FAIL: TestDialTimeout (0.07s)
    --- FAIL: TestDialTimeout/1ms/5s (0.04s)
        timeout_test.go:121: Dial returned after 0s; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:62061: connectex: No connection could be made because the target machine actively refused it., want timeout
    timeout_test.go:57: ignored 200 spurious connections
2023-08-29 23:22 windows-arm64-11 go@1f8f2ab9 net.TestDialTimeout (log)
--- FAIL: TestDialTimeout (0.09s)
    --- FAIL: TestDialTimeout/1ms/0s (0.06s)
        timeout_test.go:121: Dial returned after 0s; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:59088: connectex: No connection could be made because the target machine actively refused it., want timeout
    --- FAIL: TestDialTimeout/0s/1ms (0.00s)
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:59088: connectex: No connection could be made because the target machine actively refused it., want timeout
    --- FAIL: TestDialTimeout/1ms/5s (0.00s)
        timeout_test.go:121: Dial returned after 0s; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:59088: connectex: No connection could be made because the target machine actively refused it., want timeout
    timeout_test.go:57: ignored 200 spurious connections
2023-08-30 15:15 windows-arm64-11 go@0e02baa5 net.TestDialTimeout (log)
--- FAIL: TestDialTimeout (0.08s)
    --- FAIL: TestDialTimeout/0s/1ms (0.00s)
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:63454: connectex: No connection could be made because the target machine actively refused it., want timeout
    --- FAIL: TestDialTimeout/1ms/5s (0.00s)
        timeout_test.go:121: Dial returned after 0s; want ≥1ms
        timeout_test.go:129: Dial: dial tcp 127.0.0.1:63454: connectex: No connection could be made because the target machine actively refused it., want timeout
    timeout_test.go:57: ignored 200 spurious connections

watchflakes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-arm64 NeedsFix The path to resolution is known, but the work has not been done. OS-Windows Testing An issue that has been verified to require only test changes, not just a test failure.
Projects
Status: Done
Development

No branches or pull requests

2 participants