RFR(S): 8203364: JFR start failure after AppCDS archive created with JFR StartFlightRecording
Calvin Cheung
calvin.cheung at oracle.com
Wed Jun 20 18:04:07 UTC 2018
bug: https://bugs.openjdk.java.net/browse/JDK-8203664
webrev: http://cr.openjdk.java.net/~ccheung/8203364/webrev.00/
The bug is due to some classes are being redefined during JFR startup.
The proposed change is to handle redefined classes better during dump time.
Summary of changes:
klassFactory.cpp:
Only do the following assert if a class hasn't been redefined:
244 assert(cached_class_file == NULL, "Sanity");
classLoader.cpp:
include JFR classes which are loaded via 'JVM_DefineClass'
dictionary.cpp:
during dumping, exclude classes which have been redefined.
Only very few classes are being redefined with JFR enabled during
dumping:
java/lang/Throwable
java/net/SocketOutputStream
java/net/SocketInputStream
sun/nio/ch/SocketChannelImpl
java/io/FileOutputStream
java/lang/Error
sun/nio/ch/FileChannelImpl
java/io/FileInputStream
java/io/RandomAccessFile
The change passed hs-tier[1,2,3] testing.
thanks,
Calvin
More information about the hotspot-runtime-dev
mailing list