Skip to content

x/tools/go/analysis/passes/copylock: Test failures #70426

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

Closed
gopherbot opened this issue Nov 18, 2024 · 14 comments
Closed

x/tools/go/analysis/passes/copylock: Test failures #70426

gopherbot opened this issue Nov 18, 2024 · 14 comments
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. Tools This label describes issues relating to any tools in the x/tools repository.
Milestone

Comments

@gopherbot
Copy link
Contributor

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"

Issue created automatically to collect these failures.

Example (log):

=== RUN   Test
    analysistest.go:550: a/copylock_func.go:14:15: diagnostic "BadFunc2 passes lock by value: sync.Map contains sync.noCopy" does not match pattern `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:550: a/copylock_func.go:21:21: diagnostic "func passes lock by value: sync.Map contains sync.noCopy" does not match pattern `func passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:548: a/copylock_func.go:136:7: unexpected diagnostic: Bad passes lock by value: a.LocalMutex contains sync.noCopy
    analysistest.go:614: a/copylock_func.go:14: no diagnostic was reported matching `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:614: a/copylock_func.go:21: no diagnostic was reported matching `func passes lock by value: sync.Map contains sync.Mutex`
--- FAIL: Test (4.71s)

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 Nov 18, 2024
@gopherbot
Copy link
Contributor Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"
2024-11-18 18:14 x_tools-gotip-darwin-amd64-race tools@a54bd37b go@80344887 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: a/copylock_func.go:14:15: diagnostic "BadFunc2 passes lock by value: sync.Map contains sync.noCopy" does not match pattern `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:550: a/copylock_func.go:21:21: diagnostic "func passes lock by value: sync.Map contains sync.noCopy" does not match pattern `func passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:548: a/copylock_func.go:136:7: unexpected diagnostic: Bad passes lock by value: a.LocalMutex contains sync.noCopy
    analysistest.go:614: a/copylock_func.go:14: no diagnostic was reported matching `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:614: a/copylock_func.go:21: no diagnostic was reported matching `func passes lock by value: sync.Map contains sync.Mutex`
--- FAIL: Test (4.71s)
2024-11-18 19:30 x_tools-gotip-darwin-amd64-nocgo tools@acc2a741 go@5a0f2a7a x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: unfortunate/local_go124.go:15:7: diagnostic "Bad passes lock by value: unfortunate.LocalOnce contains sync/atomic.Uint32 contains sync/atomic.noCopy" does not match pattern `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:614: unfortunate/local_go124.go:15: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:614: unfortunate/local_go124.go:19: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalMutex contains sync.noCopy`
--- FAIL: Test (1.75s)

watchflakes

@gopherbot gopherbot added the Tools This label describes issues relating to any tools in the x/tools repository. label Nov 18, 2024
@gopherbot gopherbot added this to the Unreleased milestone Nov 18, 2024
@timothy-king
Copy link
Contributor

cc @mknyszek

From the log go on master ([commit 5a0f2a7](https://go.googlesource.com/go/+/5a0f2a7a7c5658f4f3065c265cee61ec1bde9691)). That is before https://go.dev/cl/627777 . I think we can wait for the flake to be closed.

@mknyszek
Copy link
Contributor

Agreed. Apologies for the breakage. I'm somewhat surprised there was still potential for breakage here, but I suspect it's as simple as caches in Gerrit (or Gitiles, or something) didn't clear.

@gopherbot
Copy link
Contributor Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"
2024-11-18 18:14 x_tools-gotip-linux-ppc64_power8 tools@a54bd37b go@8f223691 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: a/copylock_func.go:14:15: diagnostic "BadFunc2 passes lock by value: sync.Map contains sync.noCopy" does not match pattern `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:550: a/copylock_func.go:21:21: diagnostic "func passes lock by value: sync.Map contains sync.noCopy" does not match pattern `func passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:548: a/copylock_func.go:136:7: unexpected diagnostic: Bad passes lock by value: a.LocalMutex contains sync.noCopy
    analysistest.go:614: a/copylock_func.go:14: no diagnostic was reported matching `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:614: a/copylock_func.go:21: no diagnostic was reported matching `func passes lock by value: sync.Map contains sync.Mutex`
--- FAIL: Test (1.79s)
2024-11-18 18:14 x_tools-gotip-linux-ppc64le_power8 tools@a54bd37b go@8f223691 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: a/copylock_func.go:14:15: diagnostic "BadFunc2 passes lock by value: sync.Map contains sync.noCopy" does not match pattern `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:550: a/copylock_func.go:21:21: diagnostic "func passes lock by value: sync.Map contains sync.noCopy" does not match pattern `func passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:548: a/copylock_func.go:136:7: unexpected diagnostic: Bad passes lock by value: a.LocalMutex contains sync.noCopy
    analysistest.go:614: a/copylock_func.go:14: no diagnostic was reported matching `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:614: a/copylock_func.go:21: no diagnostic was reported matching `func passes lock by value: sync.Map contains sync.Mutex`
--- FAIL: Test (1.65s)

watchflakes

@adonovan
Copy link
Member

Seems to have calmed down.

@adonovan adonovan closed this as not planned Won't fix, can't repro, duplicate, stale Nov 19, 2024
@gopherbot gopherbot reopened this Nov 21, 2024
@gopherbot
Copy link
Contributor Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"
2024-11-20 19:06 x_tools-gotip-darwin-arm64_11 tools@9dff42e5 go@2779e3a4 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: unfortunate/local_go124.go:15:7: diagnostic "Bad passes lock by value: unfortunate.LocalOnce contains sync/atomic.Uint32 contains sync/atomic.noCopy" does not match pattern `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:614: unfortunate/local_go124.go:15: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:614: unfortunate/local_go124.go:19: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalMutex contains sync.noCopy`
--- FAIL: Test (0.74s)
2024-11-20 19:06 x_tools-gotip-darwin-arm64_13 tools@9dff42e5 go@2779e3a4 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: unfortunate/local_go124.go:15:7: diagnostic "Bad passes lock by value: unfortunate.LocalOnce contains sync/atomic.Uint32 contains sync/atomic.noCopy" does not match pattern `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:614: unfortunate/local_go124.go:15: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:614: unfortunate/local_go124.go:19: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalMutex contains sync.noCopy`
--- FAIL: Test (0.89s)

watchflakes

@github-project-automation github-project-automation bot moved this from Done to Active in Test Flakes Nov 21, 2024
@dmitshur
Copy link
Contributor

dmitshur commented Nov 22, 2024

Happened again in trybots for CL 629635 today (see build 8730612819953883601).

@gopherbot
Copy link
Contributor Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"
2024-11-18 18:14 x_tools-gotip-linux-loong64 tools@a54bd37b go@a8eddaf7 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: a/copylock_func.go:14:15: diagnostic "BadFunc2 passes lock by value: sync.Map contains sync.noCopy" does not match pattern `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:550: a/copylock_func.go:21:21: diagnostic "func passes lock by value: sync.Map contains sync.noCopy" does not match pattern `func passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:548: a/copylock_func.go:136:7: unexpected diagnostic: Bad passes lock by value: a.LocalMutex contains sync.noCopy
    analysistest.go:614: a/copylock_func.go:14: no diagnostic was reported matching `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:614: a/copylock_func.go:21: no diagnostic was reported matching `func passes lock by value: sync.Map contains sync.Mutex`
--- FAIL: Test (2.56s)

watchflakes

@gopherbot
Copy link
Contributor Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"
2024-11-18 18:14 x_tools-gotip-darwin-arm64_12 tools@a54bd37b go@5050e37d x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:550: a/copylock_func.go:14:15: diagnostic "BadFunc2 passes lock by value: sync.Map contains sync.noCopy" does not match pattern `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:550: a/copylock_func.go:21:21: diagnostic "func passes lock by value: sync.Map contains sync.noCopy" does not match pattern `func passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:548: a/copylock_func.go:136:7: unexpected diagnostic: Bad passes lock by value: a.LocalMutex contains sync.noCopy
    analysistest.go:614: a/copylock_func.go:14: no diagnostic was reported matching `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:614: a/copylock_func.go:21: no diagnostic was reported matching `func passes lock by value: sync.Map contains sync.Mutex`
--- FAIL: Test (0.84s)
2024-11-21 19:41 x_tools-gotip-darwin-arm64_12 tools@1e0d4ee6 go@2779e3a4 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:605: unfortunate/local_go124.go:15:7: diagnostic "Bad passes lock by value: unfortunate.LocalOnce contains sync/atomic.Uint32 contains sync/atomic.noCopy" does not match pattern `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:15: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:19: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalMutex contains sync.noCopy`
--- FAIL: Test (0.80s)

watchflakes

@gopherbot
Copy link
Contributor Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"
2024-11-21 19:41 x_tools-gotip-linux-loong64 tools@1e0d4ee6 go@42e2abd1 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:605: unfortunate/local_go124.go:15:7: diagnostic "Bad passes lock by value: unfortunate.LocalOnce contains sync/atomic.Uint32 contains sync/atomic.noCopy" does not match pattern `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:15: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:19: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalMutex contains sync.noCopy`
--- FAIL: Test (2.54s)

watchflakes

@gopherbot
Copy link
Contributor Author

Found new dashboard test flakes for:

#!watchflakes
default <- pkg == "golang.org/x/tools/go/analysis/passes/copylock" && test == "Test"
2024-11-22 23:40 x_tools-gotip-solaris-amd64 tools@51e54e89 go@15b70463 x/tools/go/analysis/passes/copylock.Test (log)
=== RUN   Test
    analysistest.go:605: unfortunate/local_go124.go:15:7: diagnostic "Bad passes lock by value: unfortunate.LocalOnce contains sync/atomic.Uint32 contains sync/atomic.noCopy" does not match pattern `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:15: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:19: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalMutex contains sync.noCopy`
--- FAIL: Test (2.73s)

watchflakes

@timothy-king
Copy link
Contributor

tl;dr The above are flakes mostly caused by running relative to a too old master go version. 2 logs are different and I'll follow up.


https://go.dev/cl/627777 was submitted @ "Mon Nov 18 18:52:54 2024 +0000" . This message is the expected outcome before this CL.

--- FAIL: Test (2.73s)
    analysistest.go:605: unfortunate/local_go124.go:15:7: diagnostic "Bad passes lock by value: unfortunate.LocalOnce contains sync/atomic.Uint32 contains sync/atomic.noCopy" does not match pattern `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:15: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalOnce contains sync.noCopy`
    analysistest.go:662: unfortunate/local_go124.go:19: no diagnostic was reported matching `Bad passes lock by value: unfortunate.LocalMutex contains sync.noCopy`
FAIL

#70426 (comment) is relative to "go on master (commit 15b7046)". That commit was at "Mon Nov 18 16:39:11 2024 +0000". So before https://go.dev/cl/627777.

#70426 (comment) was "Mon Nov 18 16:17:23 2024 +0000". Again before.

#70426 (comment) contains two logs.

  1. "2024-11-18 18:14 x_tools-gotip-darwin-arm64_12 tools@a54bd37b go@5050e37d x/tools/go/analysis/passes/copylock.Test (log)" - Is a different report in "a/copylock_func.go".
  2. "2024-11-21 19:41 x_tools-gotip-darwin-arm64_12 tools@1e0d4ee6 go@2779e3a4 x/tools/go/analysis/passes/copylock.Test (log)" - Is the same relative to "Mon Nov 18 16:18:39 2024 +0000". Again before.

#70426 (comment) is another report about "a/copylock_func.go".

#70426 (comment) looks like it is pointing me to patchset 1 of https://go.dev/cl/629635/1. That is relative to eb1e505 which was on "Tue Nov 12 14:53:50 2024 +0000". That is before this change.

#70426 (comment) has two reports:

  1. "2024-11-20 19:06 x_tools-gotip-darwin-arm64_11 tools@9dff42e5 go@2779e3a4 x/tools/go/analysis/passes/copylock.Test" is at "Mon Nov 18 16:18:39 2024 +0000". Again before.
  2. "2024-11-20 19:06 x_tools-gotip-darwin-arm64_13 tools@9dff42e5 go@2779e3a4 x/tools/go/analysis/passes/copylock.Test (log)" is relative to "Mon Nov 18 16:18:39 2024 +0000". Again before.

@timothy-king
Copy link
Contributor

The other report is:

=== RUN   Test
    analysistest.go:550: a/copylock_func.go:14:15: diagnostic "BadFunc2 passes lock by value: sync.Map contains sync.noCopy" does not match pattern `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:550: a/copylock_func.go:21:21: diagnostic "func passes lock by value: sync.Map contains sync.noCopy" does not match pattern `func passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:548: a/copylock_func.go:136:7: unexpected diagnostic: Bad passes lock by value: a.LocalMutex contains sync.noCopy
    analysistest.go:614: a/copylock_func.go:14: no diagnostic was reported matching `BadFunc2 passes lock by value: sync.Map contains sync.Mutex`
    analysistest.go:614: a/copylock_func.go:21: no diagnostic was reported matching `func passes lock by value: sync.Map contains sync.Mutex`

This is the expected output before https://go.dev/cl/628435. "Mon Nov 18 18:29:39 2024 +0000"

#70426 (comment) is relative to tools at "Mon Nov 18 18:14:20 2024 +0000". So before.

""2024-11-18 18:14 x_tools-gotip-darwin-arm64_12 tools@a54bd37b go@5050e37d x/tools/go/analysis/passes/copylock.Test (log)" is relative to tools at "Mon Nov 18 18:14:20 2024 +0000". So also before.

@timothy-king
Copy link
Contributor

So all we have seen so far are stragglers. Marking this as closed again.

@github-project-automation github-project-automation bot moved this from Active to Done in Test Flakes Nov 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. Tools This label describes issues relating to any tools in the x/tools repository.
Projects
Archived in project
Development

No branches or pull requests

5 participants