RFR(XXS) 8241244 CDS dynamic dump asserts in ArchivePtrBitmapCleaner::do_bit

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Mon Mar 23 12:53:17 UTC 2020


Ioi, This looks good and reasonable.

Coleen



On 3/22/20 11:49 PM, Ioi Lam wrote:
> https://bugs.openjdk.java.net/browse/JDK-8241244
> http://cr.openjdk.java.net/~iklam/jdk15/8241244-dynamic-cds-redefined-class.v01/ 
>
>
> In the failing test case, some classes in the base archive (e.g., 
> java.lang.Throwable) are redefined by JFR before the dynamic archive 
> is dumped. The assert happens when java/lang/InternalError is destined 
> for the dynamic archive, but its vtable contains a redefined method of 
> the Throwable class. This method is neither in the base archive, nor 
> in the dynamic archive, causing the assert to fail.
>
> The fix is: if a class (or any of its super-types) has been redefined, 
> do not dump this class into the dynamic CDS archive.
>
> Note - this fix is not needed for the static archive dumping (java 
> -Xshare:dump), as class redefinition cannot happen.
>
> Thanks
> - Ioi
>
>
>



More information about the hotspot-runtime-dev mailing list