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

Obsolete error reporter

XMLWordPrintable

    • Icon: CSR CSR
    • Resolution: Approved
    • Icon: P4 P4
    • 12
    • hotspot
    • None
    • behavioral
    • minimal
    • The functionality is effectively a no-op in product/GA builds, and the two flags are not believed to be used anywhere outside of the jtreg tests.
    • add/remove/modify command line option
    • Implementation

      Summary

      Obsolete the error reporter functionality, and the TransmitErrorReport and ErrorReportServer flags.

      Problem

      The error reporter functionality in hotspot allows for plugging in code which gets run on a crash. The code can for example post process the crash information and upload some useful details to a server. It is meant to be used in the development phase, not enabled in GA builds.

      The functionality is not used, so it should be removed. There are two flags which control the behavior of the error reporter which need to be obsoleted:

      -XX:[+|-]TransmitErrorReport controls whether the error reporter should transmit a report to the server -XX:ErrorReportServer= controls the server to send the data to

      Solution

      • The error reporter (stub) code will be removed
      • The flags will be obsoleted
      • (jtreg) Tests which pass in the TransmitErrorReport flag explicitly need to be updated

      Specification

      The error reporter code in src/hotspot/share/utilities/errorReporter.[ch]pp and any references to it from other hotspot code will be removed.

      The two flags will be obsoleted by adding the flags to the special flags table in arguments.cpp:

      --- old/src/hotspot/share/runtime/arguments.cpp 2018-08-21 15:40:18.934207253 -0700
      +++ new/src/hotspot/share/runtime/arguments.cpp 2018-08-21 15:40:18.730207260 -0700
      @@ -572,6 +572,8 @@
         { "PrintSafepointStatistics",      JDK_Version::jdk(11),     JDK_Version::jdk(12), JDK_Version::jdk(13) },
         { "PrintSafepointStatisticsTimeout",JDK_Version::jdk(11),    JDK_Version::jdk(12), JDK_Version::jdk(13) },
         { "PrintSafepointStatisticsCount", JDK_Version::jdk(11),     JDK_Version::jdk(12), JDK_Version::jdk(13) },
      +  { "TransmitErrorReport",           JDK_Version::undefined(), JDK_Version::jdk(12), JDK_Version::jdk(13) },
      +  { "ErrorReportServer",             JDK_Version::undefined(), JDK_Version::jdk(12), JDK_Version::jdk(13) },
      
      #ifdef TEST_VERIFY_SPECIAL_JVM_FLAGS
      { "dep > obs",                    JDK_Version::jdk(9), JDK_Version::jdk(8), JDK_Version::undefined() },

      The jtreg tests (a handful or so) which explicitly disable the error reporter by passing in -XX:-TransmitErrorReport will be updated by simply removing the flag from the command line.

            mikael Mikael Vidstedt
            mikael Mikael Vidstedt
            Harold Seigel (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: