RFR: 8307824: Clean up Finalizable.java and finalize terminology in vmTestbase/nsk/share

Leonid Mesnik lmesnik at openjdk.org
Fri May 31 18:27:07 UTC 2024


The fix removes finalization cleanup from vmTestbase.
The last to classes that use it are: DebugeeBinder and SocketIOPipe.
The DebugeeBinder is used in jdi and jdwp tests and is always linked with debuggee process. So the DebugeeProcess.waitFor() is the good place to close binder and free all it's resources.
The SocketIOPipe is used directly in AOD tests where it should be closed after test execution.

The OPipe (child of SocketIOPipe) also used in jdi and jdwp tests where it is connected directly in tests. However is also connected with debuggee and could be closed in  DebugeeProcess.waitFor().

The VMOutOfMemoryException001 test is fixed to release some memory after throwing OOME so Sytem.exit() could complete successfully. Previously some memory freed during VM shutdown hook. 

I verified that cleanup printed that corresponding 'close' method has been already called before VM shutdown phase for debugger process. 
Additionally, run all vmTestbase tests to verify there are no failures,

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

Commit messages:
 - removed finalization

Changes: https://git.openjdk.org/jdk/pull/19505/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19505&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8307824
  Stats: 291 lines in 10 files changed: 14 ins; 271 del; 6 mod
  Patch: https://git.openjdk.org/jdk/pull/19505.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19505/head:pull/19505

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


More information about the serviceability-dev mailing list