comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp @ 595:3698e8f47799

6804746: G1: guarantee(variance() > -1.0,"variance should be >= 0") (due to evacuation failure) Summary: Under certain circumstances (evacuation failure) the pause time is not communicated to the policy and, as a result, the pause time field is not initialized properly. Reviewed-by: jmasa
author tonyp
date Tue, 24 Feb 2009 15:50:23 -0500
parents 05c6d52fa7a9
children d8c7fa77a6dc 4f360ec815ba
comparison
equal deleted inserted replaced
582:a0576ae7045f 595:3698e8f47799
2624 #if SCAN_ONLY_VERBOSE 2624 #if SCAN_ONLY_VERBOSE
2625 _young_list->print(); 2625 _young_list->print();
2626 #endif // SCAN_ONLY_VERBOSE 2626 #endif // SCAN_ONLY_VERBOSE
2627 2627
2628 double end_time_sec = os::elapsedTime(); 2628 double end_time_sec = os::elapsedTime();
2629 if (!evacuation_failed()) { 2629 double pause_time_ms = (end_time_sec - start_time_sec) * MILLIUNITS;
2630 g1_policy()->record_pause_time((end_time_sec - start_time_sec)*1000.0); 2630 g1_policy()->record_pause_time_ms(pause_time_ms);
2631 }
2632 GCOverheadReporter::recordSTWEnd(end_time_sec); 2631 GCOverheadReporter::recordSTWEnd(end_time_sec);
2633 g1_policy()->record_collection_pause_end(popular_region != NULL, 2632 g1_policy()->record_collection_pause_end(popular_region != NULL,
2634 abandoned); 2633 abandoned);
2635 2634
2636 assert(regions_accounted_for(), "Region leakage."); 2635 assert(regions_accounted_for(), "Region leakage.");