Integrated: 8377944: LowMemoryTest2.java#id1 intermittent fails OOME: Metaspace
SendaoYan
syan at openjdk.org
Tue Feb 24 12:16:31 UTC 2026
On Sun, 15 Feb 2026 13:17:06 GMT, SendaoYan <syan at openjdk.org> wrote:
> Hi all,
>
> Test java/lang/management/MemoryMXBean/LowMemoryTest2.java#id1 intermittent fails "java.lang.OutOfMemoryError: Metaspace". The test log shows that MemoryPoolMXBean.isUsageThresholdExceeded() always return true but MemoryPoolMXBean.getUsageThresholdCount() always return zero. The comment in this test says that "UsageThresholdCount is only updated during GC.", so it seems that the System.gc() do not trigger GC actually, so test always allocate new classes and then throw OOME in metaspace.
>
> This PR use `WhiteBox.getWhiteBox().fullGC()` instead of `System.gc()` to make sure the GC to be trigger all the time. Change has been verified locally on linux-aarch64 and linux-x64.
This pull request has now been integrated.
Changeset: 0ed34913
Author: SendaoYan <syan at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/0ed34913bac44f3f0895cd9ab15d4e7ff2d5f5c2
Stats: 16 lines in 1 file changed: 2 ins; 4 del; 10 mod
8377944: LowMemoryTest2.java#id1 intermittent fails OOME: Metaspace
Reviewed-by: dholmes, cjplummer
-------------
PR: https://git.openjdk.org/jdk/pull/29729
More information about the serviceability-dev
mailing list