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
cmd/go: TestExecutableGOROOT occasionally fails with "text file busy" #37306
Comments
Hm, the only change we made to this test is adding the t.Parallel() call. I'll see if I can figure out what the problem is. |
I vaguely recall that a few years ago several of us undertook an effort to speed up all.bash. That included sprinkling a bunch of t.Parallel calls. Several of those had to get backed out, particularly in the runtime and cmd/go, because they caused flakiness. In some cases it was scheduling delays, in others assumptions that no one else shared resources we were tracking (fds), in others it was mutating global testing state like hooks. Which doesn’t shed much light in this case; it is just to say “just adding t.Parallel” is known to be a common cause of flakiness. :) |
Yup, that gives me more confidence that it was the right call to convert tests to the script framework rather than put in t.Parallel. I'll remove this particular t.Parallel at if I can't figure out what's going on by EOD. |
A hypothesis: perhaps the filesystem can't keep up during the parallel portion of the test, and certain kernels fail with I would be inclined to add a |
Change https://golang.org/cl/220317 mentions this issue: |
Okay, let's see if it helps. Sent a CL to add the Sync in. |
An experiment to see if this helps flakiness go away in TestExecutableGOROOT. Updates #37306 Change-Id: I2f4f63bdb507359ca07267d86cdb41fe4968f151 Reviewed-on: https://go-review.googlesource.com/c/go/+/220317 Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
Well, there goes that theory: At least the negative signal was immediate! 😅 |
Oh, sweet! This is a symptom of #22315. |
Actually, it's not. That issue is talking about a bug that occurs despite |
alright, another CL on its way! |
Reading #22315 in more detail, I suspect that it will still apply. A more extreme solution might be to have A less extreme solution might be to move the I think we can ditch the |
I've decided to go for the most extreme solution: to just convert the test to the script framework. |
Change https://golang.org/cl/220319 mentions this issue: |
I wonder whether that will even work — I don't think the |
Noticed on the build dashboard today:
https://build.golang.org/log/b1c4550d9629753e0fc2909f97f5610c385b0846
@matloob
The text was updated successfully, but these errors were encountered: