-
Notifications
You must be signed in to change notification settings - Fork 18k
x/tools/gopls: tests leave behind a lot of data in .cache/gopls
#57900
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
Comments
Ah, this appears to be the problem: CC @adonovan, in case this is related to gopls file caching. |
Independently, we should double-check the |
If this is fixed in the builder, we can repurpose this issue for following up on cache usage. @bcmills thank you for investigating. |
I think you're right. I suspect that because it takes so long (over a minute) just to walk the directory tree at full speed, at least on some machines, none of the test processes ever even starts sweeping garbage before it is terminated. And filecache (intentionally) scans about 25x slower than full speed. |
Change https://go.dev/cl/462597 mentions this issue: |
Found new dashboard test flakes for:
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestLSP (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestCapabilities (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestBasics (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestConcurrency (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestIPC (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestSource (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestRegenerateCgo (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestGCDetails_Toggle (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/completion.TestUndownloadedModule (log)
2023-01-17 23:21 aix-ppc64 tools@f3e53e5c go@7e740f91 x/tools/gopls/internal/regtest/inlayhints (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestLSP (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestCapabilities (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestBasics (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestConcurrency (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestIPC (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestSource (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestRegenerateCgo (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/codelens.TestGCDetails_Toggle (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/internal/regtest/completion (log)
2023-01-18 15:15 aix-ppc64 tools@2fa6ca1e go@7026a8a1 x/tools/gopls/test.TestMissingPatternDiagnostic (log)
|
Found new dashboard test flakes for:
2023-04-04 16:15 aix-ppc64 tools@4d205d81 go@3e8f5457 x/tools/gopls/internal/regtest/misc.Test_Issue38211 (log)
2023-04-04 16:15 aix-ppc64 tools@4d205d81 go@3e8f5457 x/tools/gopls/internal/regtest/misc.TestNewModule_Issue38207 (log)
2023-04-04 16:15 aix-ppc64 tools@4d205d81 go@3e8f5457 x/tools/gopls/internal/regtest/misc.TestManuallyCreatingXTest (log)
2023-04-04 16:15 aix-ppc64 tools@4d205d81 go@a156e02c x/tools/gopls/internal/regtest/workspace.TestLSP (log)
2023-04-04 16:15 aix-ppc64 tools@4d205d81 go@a156e02c x/tools/gopls/internal/regtest/workspace.TestCapabilities (log)
2023-04-04 16:15 aix-ppc64 tools@4d205d81 go@a156e02c x/tools/gopls/internal/regtest/workspace.TestFix (log)
|
Change https://go.dev/cl/482823 mentions this issue: |
Found new dashboard test flakes for:
2023-04-18 19:06 aix-ppc64 tools@641e4d7e go@130a7f8e x/tools/gopls/internal/lsp/cmd/test.TestFix (log)
|
That flake is #59475, which I'm looking at. |
I just cleared off many GiB of |
Change https://go.dev/cl/494297 mentions this issue: |
Ordinarily, gopls processes live such long and idle lives that the internal garbage collector for gopls' file-based cache can easily keep up with the churn rate and maintain the shared cache at a reasonable size. But tests burn twice as bright and half as long and, despite various efforts, have tended to fill the cache volume; see the attached Go issues. This change causes the buildlet to set GOPLSCACHE to a fresh subdirectory of the work dir for each builder run so that each is cleaned up at the end of the run. This does mean that the tests don't exercise the shared cache behavior, but the problems our tests hitherto uncovered were not particularly representative of production. Updates golang/go#57900 Updates golang/go#57902 Change-Id: I63e91dd873897eb3619929530bc3a75a16b96095 Reviewed-on: https://go-review.googlesource.com/c/build/+/494297 Run-TryBot: Alan Donovan <adonovan@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org> Reviewed-by: Robert Findley <rfindley@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
Starting last night, the aix-ppc64 builder started failing frequently on both the main repo and x/tools. (I noticed because watchflakes filed ~30 flakes for x/tools tests related to aix-ppc64).
CC @golang/release
The text was updated successfully, but these errors were encountered: