-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Don't keep the journal of a PersistentMap open #28108
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
base: master
Are you sure you want to change the base?
Conversation
8f2d9c3 to
1c15b83
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request enables the RewindingTest to run on Windows by removing the "no_windows" tag. However, it also includes extensive debugging code that appears to have been used for troubleshooting but should not be merged into production.
- Removes the Windows restriction from RewindingTest in the BUILD file
- Adds multiple debug statements (printStackTrace() and System.err.println()) throughout production code
- Includes a minor whitespace fix in ExecutionTool.java
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
| src/test/java/com/google/devtools/build/lib/skyframe/rewinding/BUILD | Removes "no_windows" tag to enable test on Windows |
| src/main/java/com/google/devtools/build/lib/util/PersistentMap.java | Adds debug printStackTrace() and System.err.println() statements that should be removed |
| src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java | Adds debug output for interrupt handling and action cache operations, plus minor formatting fix |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
Outdated
Show resolved
Hide resolved
src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
Outdated
Show resolved
Hide resolved
src/main/java/com/google/devtools/build/lib/buildtool/ExecutionTool.java
Outdated
Show resolved
Hide resolved
src/main/java/com/google/devtools/build/lib/util/PersistentMap.java
Outdated
Show resolved
Hide resolved
src/main/java/com/google/devtools/build/lib/util/PersistentMap.java
Outdated
Show resolved
Hide resolved
src/main/java/com/google/devtools/build/lib/util/PersistentMap.java
Outdated
Show resolved
Hide resolved
src/main/java/com/google/devtools/build/lib/util/PersistentMap.java
Outdated
Show resolved
Hide resolved
e657af4 to
ce681c4
Compare
This ensures that the journal file is not kept open after a build, which has been observed to cause
RewindingTestto fail on Windows, which disallows deleting open files (in this case during test case cleanup).Since the journal is written out at most every 3 seconds for all current usages of the
PersistentMapclass, the overhead of the additionalopenis negligible.Also include small tweaks to
RewindingTestso that it can be enabled on Windows. In particular, the order ofSymlinkActionandSourceManifestActionbeing rewound doesn't seem to be fixed and can differ on Windows.