-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: TestSelectStackAdjust "failed to trigger concurrent GC" #44610
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
Tentatively marking as release-blocker for Go 1.17 until we can determine whether this is actually a regression. |
FYI, we had this failure a lot in toward the end of the 2019, starting with 2019-09-04T17:56:17-0607cdd and ending with 2019-12-05T22:08:26-e751af1, mostly on openbsd-arm though also on a smattering of other platforms. The one failure @bcmills linked is the only other time we've seen this. |
There's a new occurrence today. |
Specifically: 2021-04-07T13:24:10-4520da4/windows-amd64-2012 |
@cherrymui @mknyszek Could either of you help investigating this issue? It's a release-blocker for Go 1.17. |
I'll look into it next week unless Cherry gets to it first. |
@mknyszek Friendly ping, as this is marked as a release-blocker. |
Sorry for the delay. :( I've been somewhat busy with other bugs. It's on my list. |
I haven't been able to reproduce yet, but this test seems rather unstable to me. I don't think there's necessarily a GC pacing bug, there's a lot that could be going wrong here. For instance, if a test runs just before this with a large-ish heap (we have some tests that do this, O(100 MiB), but 50 MiB will do), and doesn't clean up by running But more fundamentally, if the goal of the test is to just trigger a concurrent GC, why try to do so indirectly? We have I think what I want to do here is just switch the test to calling |
Just for fun, I came up with a proof of concept: if you get unlucky and the last test to run had a big heap goal and a lot of runway left behind, it's not too hard to induce the failure. |
Change https://golang.org/cl/313109 mentions this issue: |
2021-02-25T04:55:35-666ad85/windows-amd64-2012
This is the exact same failure mode as in #34693, which was believed to be fixed in December 2019. This is the first such failure in the logs since CL 210217, which suggests either a recent regression in the runtime (perhaps the GC pacer?) or a lingering very-low-probability flake in the test.
CC @mknyszek @aclements @ianlancetaylor
The text was updated successfully, but these errors were encountered: