race condition in GC logs

charlie hunt charlie.hunt at oracle.com
Tue Aug 18 14:08:02 UTC 2015


> On Aug 18, 2015, at 8:44 AM, Thomas Schatzl <thomas.schatzl at oracle.com> wrote:
> 
> Hi,
> 
> On Tue, 2015-08-18 at 08:34 -0500, charlie hunt wrote:
>> Hi Bengt,
>> 
>> Do you know if this change back ported to JDK 8 ?
>> 
>> I see Kirk’s example shows a version string of:
>> Java HotSpot(TM) 64-Bit Server VM (25.51-b03) for linux-amd64 JRE (1.8.0_51-b16)
>> 
>> Also, as Eric (Caspole) observed, there is no # of processed JNI Weak References reported too. That observation is what led us to believe it may be a printing race condition.
> 
> 
> Not sure about the JNI weak reference.
> 
> But I think the change is in 8u51 b16, see
> 
> http://hg.openjdk.java.net/jdk8u/jdk8u60/hotspot/file/4894e24d2edc/src/share/vm/memory/referenceProcessor.cpp
> 
> which has the 8u51-b16 tag:
> 
> http://hg.openjdk.java.net/jdk8u/jdk8u60/hotspot/rev/4894e24d2edc
> 
> (That is, if I understood the repo tagging mechanism)
> 
> Thanks,
>  Thomas


Thanks Thomas!

After looking at the source from the link you mentioned, it does indeed look like this change was back ported to JDK 8, and it also looks like it is indeed in 8u51.

Also, if I am looking at the code correctly, it doesn’t look like we print the number of refs processed on JNI Weak References.

To summarize, in Kirk’s example output, it looks the additional “refs” count in PhantomReferences output is indeed as Bengt described, i.e. “ first count is the ‘real’ phantom references and the second count is the cleaner references”.

charlie


More information about the hotspot-dev mailing list