Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-11451

Classloading issues on IBM JDK 8 when JProfiler agent is enabled

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • 14.0.1.Final
    • Logging
    • None
    • Hide
      1. Edit standalone.conf:
        • set JAVA_HOME to point to IBM JDK 8 home
        • set JPROFILER_HOME to point to local JProfiler installation
        • add "-agentpath:$JPROFILER_HOME/bin/linux-x64/libjprofilerti.so=port=6766 -Xshareclasses:none" to JAVA_OPTS
      2. start server
      3. attach JProfiler to a remote process at localhost:6766
      Show
      Edit standalone.conf : set JAVA_HOME to point to IBM JDK 8 home set JPROFILER_HOME to point to local JProfiler installation add " -agentpath:$JPROFILER_HOME/bin/linux-x64/libjprofilerti.so=port=6766 -Xshareclasses:none " to JAVA_OPTS start server attach JProfiler to a remote process at localhost:6766

    Description

      When I enable JProfiler agent for the server running on IBM JDK 8 the server doesn't start, throwing classloading exceptions.

      =========================================================================
      
        JBoss Bootstrap Environment
      
        JBOSS_HOME: /home/tkyjovsk/workspace/KEYCLOAK-8983/wildfly-14.0.1.Final
      
        JAVA: /home/tkyjovsk/software/java/ibm-java-80/bin/java
      
        JAVA_OPTS:  -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -agentpath:/home/tkyjovsk/software/tools/jprofiler9/bin/linux-x64/libjprofilerti.so=port=6766 -Xshareclasses:none 
      
      =========================================================================
      
      JProfiler> Protocol version 55
      JProfiler> Using JVMTI
      JProfiler> Thread status info workaround enabled.
      JProfiler> Restricted JVMTI version 1.1 detected.
      JProfiler> 64-bit library
      JProfiler> Listening on port: 6766.
      JProfiler> Instrumenting native methods.
      JProfiler> Native library initialized
      JProfiler> VM initialized
      JProfiler> Waiting for a connection from the JProfiler GUI ...
      JProfiler> Using dynamic instrumentation
      JProfiler> Time measurement: elapsed time
      JProfiler> CPU profiling enabled
      WARNING: Failed to load the specified log manager class org.jboss.logmanager.LogManager
      Nov 30, 2018 1:48:31 PM org.jboss.msc.service.ServiceContainerImpl <clinit>
      INFO: JBoss MSC version 1.4.3.Final
      Nov 30, 2018 1:48:31 PM org.jboss.threads.Version <clinit>
      INFO: JBoss Threads version 2.3.2.Final
      Nov 30, 2018 1:48:31 PM org.jboss.as.server.BootstrapImpl internalBootstrap
      WARN: WFLYSRV0071: The operating system has limited the number of open files to 1024 for this process; a value of at least 4096 is recommended
      Nov 30, 2018 1:48:31 PM org.jboss.as.server.ApplicationServerService start
      INFO: WFLYSRV0049: WildFly Full 14.0.1.Final (WildFly Core 6.0.2.Final) starting
      Nov 30, 2018 1:48:33 PM org.wildfly.security.Version <clinit>
      INFO: ELY00001: WildFly Elytron version 1.6.0.Final
      Nov 30, 2018 1:48:34 PM org.jboss.as.controller.AbstractOperationContext executeStep
      ERROR: WFLYCTL0013: Operation ("parallel-extension-add") failed - address: ([])
      java.lang.RuntimeException: WFLYCTL0079: Failed initializing module org.jboss.as.logging
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$1.execute(ParallelExtensionAddHandler.java:115)
      	at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:999)
      	at org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:743)
      	at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:467)
      	at org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1411)
      	at org.jboss.as.controller.ModelControllerImpl.boot(ModelControllerImpl.java:495)
      	at org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:470)
      	at org.jboss.as.controller.AbstractControllerService.boot(AbstractControllerService.java:432)
      	at org.jboss.as.server.ServerService.boot(ServerService.java:427)
      	at org.jboss.as.server.ServerService.boot(ServerService.java:386)
      	at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:372)
      	at java.lang.Thread.run(Thread.java:812)
      Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: WFLYLOG0078: The logging subsystem requires the log manager to be org.jboss.logmanager.LogManager. The subsystem has not be initialized and cannot be used. To use JBoss Log Manager you must add the system property "java.util.logging.manager" and set it to "org.jboss.logmanager.LogManager"
      	at java.util.concurrent.FutureTask.report(FutureTask.java:133)
      	at java.util.concurrent.FutureTask.get(FutureTask.java:203)
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$1.execute(ParallelExtensionAddHandler.java:107)
      	... 11 more
      Caused by: java.lang.IllegalStateException: WFLYLOG0078: The logging subsystem requires the log manager to be org.jboss.logmanager.LogManager. The subsystem has not be initialized and cannot be used. To use JBoss Log Manager you must add the system property "java.util.logging.manager" and set it to "org.jboss.logmanager.LogManager"
      	at org.jboss.as.logging.LoggingExtension.initialize(LoggingExtension.java:194)
      	at org.jboss.as.controller.extension.ExtensionAddHandler.initializeExtension(ExtensionAddHandler.java:131)
      	at org.jboss.as.controller.extension.ExtensionAddHandler.initializeExtension(ExtensionAddHandler.java:104)
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$ExtensionInitializeTask.call(ParallelExtensionAddHandler.java:144)
      	at org.jboss.as.controller.extension.ParallelExtensionAddHandler$ExtensionInitializeTask.call(ParallelExtensionAddHandler.java:127)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:277)
      	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
      	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
      	at java.lang.Thread.run(Thread.java:812)
      	at org.jboss.threads.JBossThread.run(JBossThread.java:485)
      
      Nov 30, 2018 1:48:34 PM org.jboss.as.server.ServerService$4 logExit
      FATAL: WFLYSRV0056: Server boot has failed in an unrecoverable manner; exiting. See previous messages for details.
      

      I tried to work around this by adding "org.jboss.logmanager" to JBOSS_MODULES_SYSTEM_PKGS and adding "-Djava.util.logging.manager=org.jboss.logmanager.LogManager -Xbootclasspath/p:..." in JAVA_OPTS but that just results in another class-loading error:

      =========================================================================
      
        JBoss Bootstrap Environment
      
        JBOSS_HOME: /home/tkyjovsk/workspace/KEYCLOAK-8983/wildfly-14.0.1.Final
      
        JAVA: /home/tkyjovsk/software/java/ibm-java-80/bin/java
      
        JAVA_OPTS:  -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman,org.jboss.logmanager -Djava.awt.headless=true -agentpath:/home/tkyjovsk/software/tools/jprofiler9/bin/linux-x64/libjprofilerti.so=port=6766 -Xshareclasses:none -Djava.util.logging.manager=org.jboss.logmanager.LogManager -Xbootclasspath/p:/home/tkyjovsk/workspace/KEYCLOAK-8983/wildfly-14.0.1.Final/modules/system/layers/base/org/jboss/logmanager/main/jboss-logmanager-2.1.4.Final.jar 
      
      =========================================================================
      
      JProfiler> Protocol version 55
      JProfiler> Using JVMTI
      JProfiler> Thread status info workaround enabled.
      JProfiler> Restricted JVMTI version 1.1 detected.
      JProfiler> 64-bit library
      JProfiler> Listening on port: 6766.
      JProfiler> Instrumenting native methods.
      JProfiler> Native library initialized
      JProfiler> VM initialized
      JProfiler> Waiting for a connection from the JProfiler GUI ...
      JProfiler> Using dynamic instrumentation
      JProfiler> Time measurement: elapsed time
      JProfiler> CPU profiling enabled
      java.lang.NoClassDefFoundError: org/wildfly/common/net/HostName
      	at org.jboss.logmanager.ExtLogRecord.<init>(ExtLogRecord.java:87)
      	at org.jboss.logmanager.Logger.log(Logger.java:796)
      	at org.jboss.logging.JBossLogManagerLogger.doLogf(JBossLogManagerLogger.java:53)
      	at org.jboss.logging.Logger.logf(Logger.java:2398)
      	at org.jboss.msc.service.ServiceLogger_$logger.greeting(ServiceLogger_$logger.java:40)
      	at org.jboss.msc.service.ServiceContainerImpl.<clinit>(ServiceContainerImpl.java:91)
      	at org.jboss.msc.service.ServiceContainer$Factory.create(ServiceContainer.java:250)
      	at org.jboss.as.server.BootstrapImpl$ShutdownHook.register(BootstrapImpl.java:229)
      	at org.jboss.as.server.BootstrapImpl$ShutdownHook.access$100(BootstrapImpl.java:219)
      	at org.jboss.as.server.BootstrapImpl.<init>(BootstrapImpl.java:70)
      	at org.jboss.as.server.Bootstrap$Factory.newInstance(Bootstrap.java:278)
      	at org.jboss.as.server.Main.main(Main.java:106)
      	at org.jboss.modules.Module.run(Module.java:352)
      	at org.jboss.modules.Module.run(Module.java:320)
      	at org.jboss.modules.Main.main(Main.java:593)
      

      Attachments

        Activity

          People

            jperkins-rhn James Perkins
            tkyjovsk@redhat.com Tomas Kyjovsky
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: