RFR: 8264644: Add PrintClassLoaderDataGraphAtExit to print the detailed CLD graph [v3]

Coleen Phillimore coleenp at openjdk.java.net
Tue Apr 6 14:58:34 UTC 2021


On Tue, 6 Apr 2021 06:38:53 GMT, Yi Yang <yyang at openjdk.org> wrote:

>> Trivial chanage to make debugging happy, now cld->print() would be:
>> 
>> ClassLoaderData(0x00007ff17432b670)
>>  - name                'platform'
>>  - holder              WeakHandle: 0x00000007fef56678
>>  - class loader        0x7ff17432b828
>>  - metaspace           0x7ff17468a0b0
>>  - unloading           false
>>  - class mirror holder false
>>  - modified oops       true
>>  - keep alive          0
>>  - claim               strong
>>  - handles             43
>>  - dependency count    0
>>  - klasses             {java.sql.SQLFeatureNotSupportedException,java.sql.SQLNonTransientException,java.sql.SQLException,sun.util.resources.provider.NonBaseLocaleDataMetaInfo,org.ietf.jgss.GSSException,javax.sql.DataSource,java.sql.Wrapper,javax.sql.CommonDataSource,java.sql.Time,java.sql.Date,java.sql.Timestamp,sun.util.resources.cldr.provider.CLDRLocaleDataMetaInfo, }
>>  - packages            0x7ff17432bc20
>>  - module              0x7ff17432c520
>>  - unnamed module      0x7ff17432c3d0
>>  - dictionary          0x7ff17432c470
>>  - deallocate list     0x7ff0a4023bd0
>
> Yi Yang has updated the pull request incrementally with two additional commits since the last revision:
> 
>  - add CLDG_lock
>  - use PTR_FORMAT

Marked as reviewed by coleenp (Reviewer).

src/hotspot/share/classfile/classLoaderData.cpp line 978:

> 976:   if (_jmethod_ids != NULL) {
> 977:     out->print   (" - jmethod count       ");
> 978:     Method::print_jmethod_ids_counts(this, out);

Yes, this is good. It was interesting at one point (to me) how many jmethodIds were in each CLD.

-------------

PR: https://git.openjdk.java.net/jdk/pull/3323


More information about the hotspot-dev mailing list