RFR: 8308762: Metaspace leak with Instrumentation.retransform

Coleen Phillimore coleenp at openjdk.org
Thu Jul 13 14:38:12 UTC 2023


On Thu, 6 Jul 2023 05:18:01 GMT, Jean-Philippe Bempel <jpbempel at openjdk.org> wrote:

> Fix a small leak in constant pool merging during retransformation of a class. If this class has a catch block with `Throwable`, the class `Throwable` is pre-resolved in the constant pool, while all the other classes are in a unresolved state. So the constant pool merging process was considering the entry with pre-resolved class as different compared to the destination and create a new entry. We now try to consider it as equal specially for Methodref/Fieldref.

Also there is a nice test harness for class redefinition in the test/hotspot/jtreg/serviceability/jvmti/RedefineClasses tests that you might be able to use to add a test for this.

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

PR Comment: https://git.openjdk.org/jdk/pull/14780#issuecomment-1634358162


More information about the serviceability-dev mailing list