-
Notifications
You must be signed in to change notification settings - Fork 18k
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
runtime: TestGCTestIsReachable failures #67204
Comments
Found new dashboard test flakes for:
2024-05-06 11:46 android-amd64-emu go@ff0bc466 runtime.TestGCTestIsReachable (log)
|
It looks like of the 16 test objects, the 15th one is somehow still reachable even though it shouldn't be. It is possible that this test is flaky because of conservative scanning of top stack frames. A value on a random stack frame somewhere (probably a dead pointer) that happens to point to the object in question would keep it alive longer than this test expects. Not sure why it is the 15th object in both cases. Maybe the last In any case, I think this test is kind of fundamentally unsound when conservative scanning exists. Not sure what to do about it. @aclements who wrote the test, @mknyszek who is deep in this kind of stuff. |
Here's a test that demonstrates the "problem", that
(Add this to |
Wow, nice reproducer. Maybe we run the test as a testprog (or have the test binary reinvoke itself) and explicitly disable asynchronous preemption via |
Yes, a reinvoke might work. |
Change https://go.dev/cl/590615 mentions this issue: |
Issue created automatically to collect these failures.
Example (log):
— watchflakes
The text was updated successfully, but these errors were encountered: