> 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 with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision: - Merge branch 'master' into 8352001-exclude-injected-classes-from-builtin-loaders - @calvinccheung review - @matias9927 comment - Merge branch 'master' into 8352001-exclude-injected-classes-from-builtin-loaders - 8352001: AOT cache should not contain classes injected into built-in class loaders ------------- Changes: - all: https://git.openjdk.org/jdk/pull/24046/files - new: https://git.openjdk.org/jdk/pull/24046/files/23327c27..b5d20c5c Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=24046&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=24046&range=01-02 Stats: 173980 lines in 248 files changed: 6834 ins; 166625 del; 521 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