-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Windows remote test error: failed: java.io.IOException: test.err (Permission denied) #20741
Comments
If this test is marked as Can you check whether the |
The target isn't flaky (well.. it's not marked as I dumped the server log and found the stack below. It looks like the error is coming from
|
Thanks for the stacktrace! I can now reproduce this issue on a Windows machine. Working on the fix. |
Unfortuantely, there isn't an easy way to add integration test for this specific edge case on Windows. Fixes bazelbuild#20741. Closes bazelbuild#20752. PiperOrigin-RevId: 596547046 Change-Id: I4f517b161c03793329d5a4e21ec8ac4a5b53abb0
Unfortuantely, there isn't an easy way to add integration test for this specific edge case on Windows. Fixes #20741. Closes #20752. Commit 958e0c4 PiperOrigin-RevId: 596547046 Change-Id: I4f517b161c03793329d5a4e21ec8ac4a5b53abb0 Co-authored-by: Chi Wawng <[email protected]>
A fix for this issue has been included in Bazel 7.1.0 RC1. Please test out the release candidate and report any issues as soon as possible. Thanks! |
Description of the bug:
I apologize in advance, I've found another weird Windows remote execution bug.
When using Windows remote execution, I'm seeing
bazel test
invocations fail with messages like:The test is actually failing remotely, but Bazel shouldn't crash. It also fails to complete its BES stream, which is frustrating but not the main issue.
From the message, I'd guess Bazel is opening the file, then attempting to delete it.
The
test.err
file exists, is owned byBUILTIN/Administrators
, and has no special ACLs. No other processes have it open afterbazel test
exits. It can be deleted manually. I think the path comes fromTestRunnerAction.java
. Its purpose seems to be to hold stderr from tests, however, that's not what's happening here.The thing that triggers this is a new remote execution feature where we populate the
ExecuteResponse.message
field. The contents of thetest.err
file match the string that the server puts in that field.Which category does this issue belong to?
Remote Execution
What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
ExecuteResponse.message
field.(Sorry I realize this isn't going to be easy for anyone else. It reproduces 100% for me though, so if you have code pointers or debugging suggestions, I'll help as much as I can).
Which operating system are you running Bazel on?
Windows Server 2022 / x86_64
What is the output of
bazel info release
?release 8.0.0-pre.20231030.2
If
bazel info release
returnsdevelopment 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
?Is this a regression? If yes, please try to identify the Bazel commit where the bug was introduced.
No
Have you found anything relevant by searching the web?
No
Any other information, logs, or outputs that you want to share?
n/a
The text was updated successfully, but these errors were encountered: