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: TestSpuriousWakeupsNeverHangSemasleep failure with file already closed
#52725
Comments
This builder previously had a high failure rate for this test with a different failure mode; see #49727. |
I just got this failure on a linux-amd64-nonunified trybot: https://storage.googleapis.com/go-build-log/00af0613/linux-amd64-nounified_f492a55d.log Re-running greplogs, it looks like it also happened on FreeBSD: 2022-06-02T17:17:19-aae0bef/freebsd-arm-paulzhol |
file already closed
on solaris-amd64-oraclerelfile already closed
This is a bug in the test. Arguably it could also be considered a weakness in either The problem is that the test calls Good case:
Bad case:
FWIW, note that the child sleeps for 1s between (1) and (2), so (4) must be significantly delayed to lose the race. This is rather annoying to work around in the context of the test. The best approach may just be to ignore fs.ErrClosed from |
Change https://go.dev/cl/420597 mentions this issue: |
Just noticed that the fix CL was waiting on a review from me, so +2'd. |
greplogs -l -e 'FAIL: TestSpuriousWakeupsNeverHangSemasleep .*(?:\n .*)* file already closed' --since=2022-01-01
2022-05-04T20:06:32-fd6ef06/solaris-amd64-oraclerel
It isn't clear to me whether this is a bug in the Go runtime or standard library, a bug in the test, or a bug in the Solaris platform. Leaving on the backlog to collect more information.
(CC @golang/runtime @golang/solaris @rorth)
The text was updated successfully, but these errors were encountered: