RFR: 8373297: Test com/sun/jdi/AfterThreadDeathTest.java failed with unexpected ObjectCollectedException

Chris Plummer cjplummer at openjdk.org
Wed Dec 10 01:28:55 UTC 2025


The thread object for the main thread is getting unexpectedly collected. This results in an ObjectCollectedException during the test's handling of the ThreadDeath event. It tries enabling a SingleStepRequest on the thread, but the thread an already been collected by this time since the ThreadDeath event is using the SUSPEND_NONE policy, allowing the thread to exit.

This fix is to simply call ObjectReference.disableCollection() on the main thread. It will never be collected after this point. No need to ever call enableCollection(), because the debuggee is just going to exit anyway.

Testing
- Tier1 CI
- Tier5 CI pruned to just run svc tests

-------------

Commit messages:
 - prevent thread from getting collected

Changes: https://git.openjdk.org/jdk/pull/28730/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=28730&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8373297
  Stats: 9 lines in 1 file changed: 8 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/28730.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/28730/head:pull/28730

PR: https://git.openjdk.org/jdk/pull/28730


More information about the serviceability-dev mailing list