Currently the GC-cause _last_ditch_collection is used for 2 types of full-collections clearing all soft refereces:
1. Last resort when out of metaspace memory
2. WhiteBox initiated full GC
These have not much in common and the GC-cause is strangely named when looking at it meaning. This cause also comes with an unwanted side-effect, it will expand the heap if possible and this is strange since it is not cause by a failed heap-allocation. My proposal is to remove the _last_ditch_collection cause and instead create _wb_full_gc for the WhiteBox-case and _metadata_GC_clear_soft_refs for the out of metaspace case. The idea is that thet will work similar to _last_ditch_collection in every way except for growing the heap.
1. Last resort when out of metaspace memory
2. WhiteBox initiated full GC
These have not much in common and the GC-cause is strangely named when looking at it meaning. This cause also comes with an unwanted side-effect, it will expand the heap if possible and this is strange since it is not cause by a failed heap-allocation. My proposal is to remove the _last_ditch_collection cause and instead create _wb_full_gc for the WhiteBox-case and _metadata_GC_clear_soft_refs for the out of metaspace case. The idea is that thet will work similar to _last_ditch_collection in every way except for growing the heap.
- relates to
-
JDK-7012980 PSOldGen is increased if there is no space in Metaspace
-
- Resolved
-