Possible race condition in SubprocessFactory.finished() #11720
Labels
P2
We'll consider working on this in future. (Assignee optional)
stale
Issues or PRs that are stale (no activity for 30 days)
team-Local-Exec
Issues and PRs for the Execution (Local) team
type: bug
Description of the problem / feature request:
In SubprocessFactory.finished(), there's a check for exceeding the deadline, which may call process.destroy(). process.destroy() might not destroy the process, or process.isAlive() might return true for a bit longer.
Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
I haven't yet tried reproducing.
What operating system are you running Bazel on?
This potentially applies to all non-Windows OSes, but depends a lot on how process.destroy() actually works.
What's the output of
bazel info release
?Code has been there since 0.14.0 (d3de5cc)
If
bazel info release
returns "development version" or "(@Non-Git)", tell us how you built Bazel.N/A
What's the output of
git remote get-url origin ; git rev-parse master ; git rev-parse HEAD
?N/A
Have you found anything relevant by searching the web?
#6860 is somewhat related.
Any other information, logs, or outputs that you want to share?
Probably need to do a waitFor() to prevent the race.
It's unclear if this actually affects anything, philwo@ probably knows best.
The text was updated successfully, but these errors were encountered: