RFR: 8352001: AOT cache should not contain classes injected into built-in class loaders [v4]
Ioi Lam
iklam at openjdk.org
Wed Apr 16 17:12:07 UTC 2025
> During an application's training run, it's possible to inject classes into the built-in platform/app class loaders with reflection calls.
>
> - Before [JDK-8348426](https://bugs.openjdk.org/browse/JDK-8348426), only the names of these classes were recorded in the AOT config file. When the AOT cache is generated, these classes are automatically filtered out.
> - Since [JDK-8348426](https://bugs.openjdk.org/browse/JDK-8348426), these classes are stored as parsed InstanceKlasses in the AOT config file, and will be transferred into the AOT cache. This new behavior may cause some applications to fail, as they may inject bytecodes that have environment dependencies.
>
> For safety, this PR filters out such injected classes from the AOT config file.
Ioi Lam has updated the pull request incrementally with one additional commit since the last revision:
Removed unnecessary include
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/24046/files
- new: https://git.openjdk.org/jdk/pull/24046/files/b5d20c5c..52f53856
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=24046&range=03
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=24046&range=02-03
Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod
Patch: https://git.openjdk.org/jdk/pull/24046.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/24046/head:pull/24046
PR: https://git.openjdk.org/jdk/pull/24046
More information about the core-libs-dev
mailing list