-XX:+TraceClassUnloading enabled w/ -Xloggc ?

Bengt Rutisson bengt.rutisson at oracle.com
Thu Nov 1 09:39:30 UTC 2012


Hi Bernd,

On 2012-10-31 16:50, Bernd Eckenfels wrote:
> Hello,
>
> This was changed in 7040420/2209834

Ah, thanks for finding this. (But I think the original bug id is 7040410.)

> The New bugtracker does not really allow me to see the versions but it was around 6.0U22

I tried to dig around in the bug system and the repositories. I seems to 
me that the original bug was fixed in the JDK 7 release:

http://bugs.sun.com/view_bug.do?bug_id=7040410

The strange thing is that the backport bug is also reporting JDK 7 as 
its fix version.

http://bugs.sun.com/view_bug.do?bug_id=2209834

I could not find any traces of 7040410 or 2209834 in the JDK 6 
repositories. So, my guess is that this was only fixed in 7.

Bengt

>
> Bernd
>
> Am 31.10.2012 um 16:41 schrieb Bengt Rutisson <bengt.rutisson at oracle.com>:
>
>> Charlie,
>>
>> I don't see any code that enables TraceClassUnloading when -Xloggc is used. Are you sure that this happens?
>>
>> When I run it also doesn't look like it gets enabled.
>>
>>> java -Xloggc:log.txt -XX:+PrintFlagsFinal -version | grep TraceClassUnloading
>>      bool TraceClassUnloading                       = false           {product rw}
>> java version "1.8.0-ea"
>> Java(TM) SE Runtime Environment (build 1.8.0-ea-b60)
>> Java HotSpot(TM) Client VM (build 25.0-b04, mixed mode)
>>
>> We do enable PrintGC and PrintGCDetails when -Xloggc is enabled:
>>
>>     if (match_option(option, "-Xloggc:", &tail)) {
>>       // Redirect GC output to the file. -Xloggc:<filename>
>>       // ostream_init_log(), when called will use this filename
>>       // to initialize a fileStream.
>>       _gc_log_filename = strdup(tail);
>>       FLAG_SET_CMDLINE(bool, PrintGC, true);
>>       FLAG_SET_CMDLINE(bool, PrintGCTimeStamps, true);
>>
>>     // JNI hooks
>>     }
>>
>> Bengt
>>
>>
>> On 2012-10-29 16:06, Charlie Hunt wrote:
>>> We stumbled across this last week ... and now curious.
>>>
>>> With -Xloggc, -XX:+TraceClassUnloading is also enabled.  But, with other GC related command line options such as; -XX:+PrintGCDetails, -XX:+PrintGC, -XX:+PrintHeapAtGC, etc. -XX:-TraceClassUnloading remains disabled by default.
>>>
>>> Anyone know the history that led to the decision to only enable +TraceClassUnloading with -Xloggc, and not with say +PrintGCDetails?
>>>
>>> thanks,
>>>
>>> charlie ...




More information about the hotspot-gc-dev mailing list