ConcurrentLocksDump::dump_at_safepoint() creates a GrowableArray to hold the found AbstractOwnableSynchronizer instances, but if allocation (or growing?) of the array causes an OOM condition then it will abort the VM - vm_exit_out_of_memory.
Diagnostic tools, that may be being used to diagnose excessive memory use should not themselves cause an abort due to OOM.
The code needs to be aware of OOM possibility and deal with it accordingly.
Diagnostic tools, that may be being used to diagnose excessive memory use should not themselves cause an abort due to OOM.
The code needs to be aware of OOM possibility and deal with it accordingly.
- relates to
-
JDK-8203885 ConcurrentLocksDump::dump_at_safepoint() should not allocate array in resource area
- Resolved