RFR(S) 8246181: Avoid walking SymbolTable during -Xshare:dump

Ioi Lam ioi.lam at oracle.com
Tue Jun 23 22:45:09 UTC 2020

Hi Yumin,

The changes look good.

I updated the bug description to the following:

     Walking the symbol table during static dump time is
     problematic (see JDK-8245264). Since all Symbols are marked
     as permanent during static dumping, we can just save all of
     them in a global array as they are created, and walk this
     array during the dump process.

I moved the original proposal into a comment in JDK-8246181. That proposal
should be implemented as part of JDK-8234693 (Consolidate CDS static and
dynamic archive dumping code)

- Ioi

On 6/23/20 2:44 PM, Yumin Qi wrote:
> Hi, Please review
> Bug: https://bugs.openjdk.java.net/browse/JDK-8246181
> Webrev:http://cr.openjdk.java.net/~minqi/2020/8246181/webrev-00/
> Summary: This is a little different from the bug suggested 
> implementation. To avoid working the SymbolTable during dump, the 
> symbol is added to a global array when it is created, 
> SymbolTable::do_add_if_needed. The symbol only created once during its 
> lifetime. There is just little performance overhead for runtime.
> Tests: local jtreg on runtime/cds/appcds for debug/release.
> mach5: tier1,tier2,tier4
> Thanks
> Yumin

More information about the hotspot-runtime-dev mailing list