Thank you Serguei for the comment. I thought of putting the event log
first but really wanted it to tell which classes were already
redefined. So I decided to improve the error message for printing the
VM_Operation to include the class being redefined.
With the following change, there's a crash during redefinition, the
hs_err_pid file will have:
VM_Operation (0x00007f49a294a400): RedefineClasses, mode: safepoint,
requested by thread 0x00007f499
800e800, redefining class RedefineRunningMethods$B
open webrev at http://cr.openjdk.java.net/~coleenp/8081219.02/
Tested manually with a ShouldNotReachHere in various places.
Thanks,
Coleen
On 6/2/15 6:18 PM, serguei.spit...@oracle.com wrote:
Coleen,
The fix looks good.
But I have a question.
Would it be useful to log the beginning of a redefinition as well so
that it is known what class is currently being redefined?
Thanks,
Serguei
On 6/2/15 12:58 PM, Coleen Phillimore wrote:
Summary: Use the Events::log function to save redefined classes for
output to the hs_err file.
This change adds lines to the hs_err_pid file which names classes
redefined:
Classes redefined (2 events):
Event: 11.867 Thread 0x00007fd378199800 redefined class
name=RedefineRunningMethods$B, count=1
Event: 26.746 Thread 0x00007fd378199800 redefined class
name=RedefineRunningMethods$B, count=2
Tested with intentional crash to see hs_err_pid files, also tested
without intentional crashes vm.redefine.testlist.
open webrev at http://cr.openjdk.java.net/~coleenp/8081219/
bug link https://bugs.openjdk.java.net/browse/JDK-8081219
Thanks,
Coleen