Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6804746
Votes 0
Synopsis G1: guarantee(variance() > -1.0,"variance should be >= 0") (due to evacuation failure)
Category hotspot:garbage_collector
Reported Against
Release Fixed hs15(b03), 7(b51) (Bug ID:2174469)
State 10-Fix Delivered, bug
Priority: 3-Medium
Related Bugs 6785211 , 6797754 , 6817608 , 6820321
Submit Date 12-FEB-2009
Description
Nightly testing uncovered this failure:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/tmp/jprt/P2/B/154324.ap159146/source/src/share/vm/utilities/numberSeq.cpp:177), pid=15885, tid=9
#  Error: guarantee(variance() > -1.0,"variance should be >= 0")
#
# JRE version: 7.0-b46
# Java VM: Java HotSpot(TM) 64-Bit Server VM (15.0-b01-2009- customer -10-154324.ap159146.hotspot-g1-allocspec-6700941-fastdebug mixed mode solaris-amd64 )
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
Posted Date : 2009-02-12 14:52:39.0
Work Around
N/A
Evaluation
Even though it looks similar to 6785211 I think the cause is different. The failure in this CR was introduced by 6797754 and in particular this change:

+     if (!evacuation_failed()) {
        g1_policy()->record_pause_time((end_time_sec - start_time_sec)*1000.0);
+     }

So, if there was an evacuation failure, record_pause_time() was not called to notify the policy how long the pause time was. As a result the policy will pick up junk if it reads _last_pause_ms (which is the case here), or pick up an incorrect value (if _last_pause_ms) had been set by a previous pause.
Posted Date : 2009-02-12 14:52:39.0

http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/3698e8f47799
Posted Date : 2009-02-25 06:44:12.0

http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/3698e8f47799
Posted Date : 2009-02-28 05:13:23.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang