JFR: Symbol table not setup for early class unloading

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: P4
    • 27
    • Affects Version/s: 26
    • Component/s: hotspot
    • None
    • jfr

      We observe a crash when running a major GC very early, which unloads classes, calling into JFR which is not properly set up for class unloading this early. This can be provoked by running with a particularly small heap, which forces a major collection early on.

      $ mainline-fast/jdk/bin/java -XX:StartFlightRecording -XX:+UseZGC -Xmx10M --version
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (src/hotspot/share/jfr/support/jfrSymbolTable.inline.hpp:53), pid=1726188, tid=1726194
      # assert(table != nullptr) failed: invariant
      #
      # JRE version: Java(TM) SE Runtime Environment (27.0) (fastdebug build 27-internal-opc.open)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 27-internal-opc.open, mixed mode, tiered, compressed class ptrs, z gc, linux-amd64)
      # Problematic frame:
      # V [libjvm.so+0x1206e3c] JfrTypeSet::serialize(JfrCheckpointWriter*, JfrCheckpointWriter*, bool, bool)+0x209c
      #
      [1] 1726188 IOT instruction (core dumped) mainline-fast/jdk/bin/java -XX:StartFlightRecording

            Assignee:
            Joel Sikström
            Reporter:
            Joel Sikström
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: