RFR: 8350214: Test gtest/AsyncLogGtest.java fails after JDK-8349755
Johan Sjölen
jsjolen at openjdk.org
Wed Feb 19 14:10:30 UTC 2025
Hi,
[8349755](https://bugs.openjdk.org/browse/JDK-8349755) introduced a bug in debug builds when running with -Xlog:async -Xlog:all=debug. Specifically, this will cause UL to select for deathtest and deathtest2, which should only be selected when explicitly asked for.
In order to fix this, I've added some develop-only globals. We now only log if either of the testing globals are set, and we only crash on recursive logging if `TestingAsyncLoggingDeathTestNoCrash` is set to `false`.
Let's go through the cases:
-Xlog:all=debug => deathtest isn't logged because the globals aren't set => Only non-deathtest recursive logs crash (as it should be)
-Xlog:all=debug + TestingAsyncLoggingDeathTestNoCrash => deathtest is logged, but TestingAsyncLoggingDeathTestNoCrash is true so the ShouldNotReachHere branch isn't taken
-Xlog:all=debug + TestingAsyncLoggingDeathTest => deathtest is logged, and it crashes
-------------
Commit messages:
- Simplify again
- Simplify the testing strategy for async logging
Changes: https://git.openjdk.org/jdk/pull/23695/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=23695&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8350214
Stats: 35 lines in 6 files changed: 18 ins; 9 del; 8 mod
Patch: https://git.openjdk.org/jdk/pull/23695.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/23695/head:pull/23695
PR: https://git.openjdk.org/jdk/pull/23695
More information about the hotspot-runtime-dev
mailing list