RFR: 8376185: NoSuchFieldError thrown after a record with type annotation retransformed [v4]
Jean-Philippe Bempel
jpbempel at openjdk.org
Thu Feb 12 10:21:25 UTC 2026
> …retransformed
>
> Fix a retransform error when retransforming a record with type annotation. processing the record type annotation was done by calling the wrong method and using the one to process regular annotation. Regular annotations have not the same structure and decoding was therefore incorrect. The decoding methods detect a problem but this error was not propagated correctly outside of VM_RedfineClass::load_new_class_versions method, swallowing the error and leaving the retransformed class in bad state.
>
> Here we have fixed the call to the right method for decoding the type annotations but also propagated the error when rewriting the constant pool as an JVMTI_ERROR_INTERNAL
Jean-Philippe Bempel has updated the pull request incrementally with one additional commit since the last revision:
replace shell script with class running asmtools
include output directory for asmtools and jcoder command
Add comments
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/29445/files
- new: https://git.openjdk.org/jdk/pull/29445/files/f0ee21fd..d11590b7
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=29445&range=03
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=29445&range=02-03
Stats: 134 lines in 4 files changed: 104 ins; 29 del; 1 mod
Patch: https://git.openjdk.org/jdk/pull/29445.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/29445/head:pull/29445
PR: https://git.openjdk.org/jdk/pull/29445
More information about the serviceability-dev
mailing list