United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6898857 [Regression] -XX:NewRatio with -XX:+UseConcMarkSweepGC causes fatal error
JDK-6898857 : [Regression] -XX:NewRatio with -XX:+UseConcMarkSweepGC causes fatal error

Details
Type:
Bug
Submit Date:
2009-11-06
Status:
Closed
Updated Date:
2011-03-08
Project Name:
JDK
Resolved Date:
2011-03-08
Component:
hotspot
OS:
linux
Sub-Component:
gc
CPU:
x86
Priority:
P3
Resolution:
Fixed
Affected Versions:
6u18
Fixed Versions:
hs17 (b06)

Related Reports
Backport:
Backport:
Backport:
Backport:
Relates:

Sub Tasks

Description
FULL PRODUCT VERSION :
java version "1.6.0_18-ea"
Java(TM) SE Runtime Environment (build 1.6.0_18-ea-b04)
Java HotSpot(TM) 64-Bit Server VM (build 16.0-b11, mixed mode)

FULL OS VERSION :
Fedora 11, output of uname -a:

Linux mac 2.6.30.9-90.fc11.x86_64 #1 SMP Sat Oct 17 11:25:35 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

A DESCRIPTION OF THE PROBLEM :
Execute java -XX:NewRatio=6 -XX:+UseConcMarkSweepGC. With JDK6u16, the Usage help text is shown. With JDK6u18b04, the output is:

#
# A fatal error has been detected by the Java Runtime Environment:
#
# java.lang.OutOfMemoryError: requested 14411518807585536 bytes for HeapWord* in /BUILD_AREA/jdk6_18/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp. Out of swap space?
#
#  Internal Error (allocation.inline.hpp:39), pid=17403, tid=139739792140560
#  Error: HeapWord* in /BUILD_AREA/jdk6_18/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
#
# JRE version: 6.0_18-b04
# Java VM: Java HotSpot(TM) 64-Bit Server VM (16.0-b11 mixed mode linux-amd64 )
# An error report file with more information is saved as:
# /home/ijuma/Download/jdk/hs_err_pid17403.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
zsh: abort      java -XX:NewRatio=6 -XX:+UseConcMarkSweepGC

THE PROBLEM WAS REPRODUCIBLE WITH -Xint FLAG: Yes

THE PROBLEM WAS REPRODUCIBLE WITH -server FLAG: Yes

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Execute java -XX:NewRatio=6 -XX:+UseConcMarkSweepGC (or any application with -XX:NewRatio and -XX:UseConcMarkSweepGC)

EXPECTED VERSUS ACTUAL BEHAVIOR :
Expected the usage help output to be shown, as it is with JDK6u16.

ERROR MESSAGES/STACK TRACES THAT OCCUR :
Attached seperatly

REPRODUCIBILITY :
This bug can be reproduced always.

CUSTOMER SUBMITTED WORKAROUND :
Do not use -XX:NewRatio when using -XX:+UseConcMarkSweepGC.

Release Regression From : 6u16
The above release value was the last known release where this 
bug was not reproducible. Since then there has been a regression.

                                    

Comments
EVALUATION

In set_cms_and_parnew_gc_flags() MaxNewSize has to be reset if it
has its default value (set to max_uintx in globals.hpp).
                                     
2009-11-06
EVALUATION

This regression is cause by the fix for 6862534.
                                     
2009-11-06
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/0e2d7ae2bc67
                                     
2009-11-11
EVALUATION

http://hg.openjdk.java.net/hsx/hsx16/baseline/rev/dba6aafa42ff
                                     
2009-11-13
EVALUATION

http://hg.openjdk.java.net/hsx/hsx16/master/rev/dba6aafa42ff
                                     
2009-11-13



Hardware and Software, Engineered to Work Together