7012980: PSOldGen is increased if there is no space in Metaspace

Reviewed-by: tschatzl, tbenson
This commit is contained in:
Jon Masamitsu 2015-04-15 11:30:36 -07:00
parent bd52f0a2ef
commit 48ed80d136
6 changed files with 46 additions and 11 deletions

View file

@ -290,8 +290,7 @@ bool PSScavenge::invoke_no_policy() {
AdaptiveSizePolicyOutput(size_policy, heap->total_collections());
if (!GCCause::is_user_requested_gc(gc_cause) ||
UseAdaptiveSizePolicyWithSystemGC) {
if (AdaptiveSizePolicy::should_update_eden_stats(gc_cause)) {
// Gather the feedback data for eden occupancy.
young_gen->eden_space()->accumulate_statistics();
}
@ -559,9 +558,7 @@ bool PSScavenge::invoke_no_policy() {
// Don't check if the size_policy is ready at this
// level. Let the size_policy check that internally.
if (UseAdaptiveGenerationSizePolicyAtMinorCollection &&
((gc_cause != GCCause::_java_lang_system_gc) ||
UseAdaptiveSizePolicyWithSystemGC)) {
(AdaptiveSizePolicy::should_update_eden_stats(gc_cause))) {
// Calculate optimal free space amounts
assert(young_gen->max_size() >
young_gen->from_space()->capacity_in_bytes() +