Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8046136

JEP 146: Improve Fatal Error Logs



    • JEP
    • Resolution: Withdrawn
    • P4
    • None
    • hotspot
    • None
    • Tom Rodriguez
    • Feature
    • Open
    • Implementation
    • hostspot dash dev at openjdk dot java dot net
    • S
    • S
    • 146



      Improve HotSpot's fatal error logs (hs_err files) by including additional historical information and also some context-dependent information.


      Fatal error logs are a critical tool for triaging bugs. Adding more useful information to them may allow bugs to be evaluated more quickly.


      This project has provided a set of classes that are used to store information that is put into the crash dump in the case of a crash.

      EventLog is the base event log dumping class that is registered for dumping at crash time. EventLog is a very generic interface that normally shouldn't be used directly, but rather through its subclasses.

      The EventLogBase is a template subclass of EventLog that provides basic ring buffer functionality. Most event loggers should subclass this, possibly providing a more featureful log function if the existing copy semantics aren't appropriate. The provided name is used as the label of the log when it is dumped during a crash.

      The information that has been added to the crash dump is for instance historical information of recent compilation and GC history. Context-dependent information includes, for example, what bytecode is being processed and what the inline tree looks like when a crash occurs during compilation.

      Two new flags was added to control the event log:

      -XX:LogEvents={true/false} Enable the various ring buffer event logs. Defaults to true.

      -XX:LogEventsBufferEntries=n Set the size of the ring buffer. Defaults to 10.


      Exercising this code will require causing crashes in various contexts, so initially some forced crashing may be required.




            Unassigned Unassigned
            never Tom Rodriguez
            Tom Rodriguez Tom Rodriguez
            Jesper Wilhelmsson
            Mikael Vidstedt
            0 Vote for this issue
            5 Start watching this issue