Uploaded image for project: 'Java Mission Control'
  1. Java Mission Control
  2. JMC-6886

Agent ASM components are constructed with the wrong version of Opcodes

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 8.0.0
    • Component/s: Mission Control Core
    • Labels:
      None

      Description

      Currently several of the agent ASM components are being constructed with Opcodes.ASM5, this causes problems now that we've bumped the version of ASM up to 8.0.1, as some calls are now enforcing a minimum opcodes version, leading to crashes like

      SEVERE: Failed to instrument instrumentMe()V
      java.lang.UnsupportedOperationException: This feature requires ASM7
      at org.openjdk.jmc.internal.org.objectweb.asm.ClassVisitor.visitNestMember(ClassVisitor.java:249)
      at org.openjdk.jmc.internal.org.objectweb.asm.ClassReader.accept(ClassReader.java:670)
      at org.openjdk.jmc.internal.org.objectweb.asm.ClassReader.accept(ClassReader.java:401)
      at org.openjdk.jmc.agent.Transformer.doJFRLogging(Transformer.java:111)
      at org.openjdk.jmc.agent.Transformer.doTransform(Transformer.java:91)
      at org.openjdk.jmc.agent.Transformer.doTransforms(Transformer.java:80)
      at org.openjdk.jmc.agent.Transformer.transform(Transformer.java:69)
      at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:246)
      at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188)
      at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:563)
      at java.base/java.lang.ClassLoader.defineClass1(Native Method)
      at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
      at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
      at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:802)
      at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:700)
      at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:623)
      at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
      at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
      at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
      at java.base/java.lang.Class.forName0(Native Method)
      at java.base/java.lang.Class.forName(Class.java:398)
      at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:760)
      at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:655)
       

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              jmatsuoka Joshua Matsuoka
              Reporter:
              jmatsuoka Joshua Matsuoka
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: