On Tue, 22 Feb 2022 19:54:59 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:
> So you load a class 50 times in separate ClassLoaders, and each load triggers > the ClassPrepare event, and each time that happens you set a breakpoint on > each of the 1000 methods, meaning a total of 5000 breakpoints. Doing this > will eventually trigger calling > CollectorPolicy::satisfy_failed_metadata_allocation(). Previous to the > [8264149](https://bugs.openjdk.java.net/browse/JDK-8264149) fix, this used to > trigger an assert. Am I understanding this properly? Yes. That assert is actually the part of the larger issue: metaspace is full, GC is requested, and VM would probably hang if we allow it to happen, since we cannot easily schedule Full GCs when already at safepoint. ------------- PR: https://git.openjdk.java.net/jdk/pull/7554