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

SA should try to find classes.jsa from ${JAVA_HOME}

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Open
    • Priority: P4
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: tbd
    • Component/s: hotspot

      Description

      When using SA to debug a core file created on a different host, sometimes we don't have the classes.jsa at the exact directory when the core file is created:

      libsaproc DEBUG: looking for /System/Volumes/xxx/macosx-x64-debug.jdk/jdk-19/fastdebug/lib/server/classes.jsa
      libsaproc DEBUG: can't open /System/Volumes/xxx/macosx-x64-debug.jdk/jdk-19/fastdebug/lib/server/classes.jsa
      libsaproc DEBUG: can't open /System/Volumes/xxx/macosx-x64-debug.jdk/jdk-19/fastdebug/lib/server/classes.jsa!
      ERROR: failed to workaround classshareing
      Unable to open core file
      /Users/xxx/Downloads/core.36983:

      The work around is to create a local directory with the exact path as recorded in the core file.

      To make it easier to use SA with CDS, we can do two things:

      [1] If the core file loads a default CDS archive, SA should try to find the classes.jsa under ${JAVA_HOME}

      [2] Maybe we can also provide a way to override the location of the CDS archive. Something like this??

      jhsdb -J-Doverride.cds.archive=/foo/bar/classes.jsa clhsdb --exe /java/home/bin/java --core core.12345

        Attachments

          Activity

            People

            Assignee:
            ccheung Calvin Cheung
            Reporter:
            iklam Ioi Lam
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated: