YourKit Profiler 2015.15074 + Mule ESB = False

Questions about YourKit Java Profiler
Post Reply
krizsan
Posts: 2
Joined: Fri Oct 23, 2015 12:31 pm

YourKit Profiler 2015.15074 + Mule ESB = False

Post by krizsan »

Hi!
Trying to profile an instance of the Mule ESB with YJP but get this log when Mule is starting up:

Code: Select all

Java Service Wrapper Standard Edition 64-bit 3.5.26
  Copyright (C) 1999-2014 Tanuki Software, Ltd. All Rights Reserved.
    http://wrapper.tanukisoftware.com
  Licensed to mulesoft.com for Mule ESB Enterprise Edition

Launching a JVM...
[YourKit Java Profiler 9.0.8] Loaded. Log file: /home/xxxx/.yjp/log/22339.log
Exception in thread "main" java.lang.VerifyError: Expecting a stackmap frame at branch target 73
Exception Details:
  Location:
    org/mule/module/reboot/MuleContainerBootstrap.parseCommandLine([Ljava/lang/String;)Lorg/apache/commons/cli/CommandLine; @36: goto
  Reason:
    Expected stackmap frame at this location.
  Bytecode:
    0000000: 02c4 3600 0311 48ef 1100 00b8 0169 bb00
    0000010: ff59 b701 0159 c415 0003 b801 70c4 3600
    0000020: 034c 033d a700 252b b200 2e1c 3203 3212
    0000030: 18b2 002e 1c32 0432 b601 02b2 002e 1c32
    0000040: 0532 b601 0657 8402 011c b200 2ebe a1ff
    0000050: d9bb 010a 59b7 010c 59c4 1500 03b8 0170
    0000060: c436 0003 2b2a 04b6 010d 1148 ef11 0000
    0000070: b801 6cb0                              

	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2615)
	at java.lang.Class.getMethod0(Class.java:2856)
	at java.lang.Class.getMethod(Class.java:1668)
	at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:494)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:486)
JVM exited while loading the application.
Mule ESB is running on Java 7 under Ubuntu. Nothing particular in the YJP logs.
I will probably be able to work around this in some way, just thought you wanted to know.
Best regards,
Ivan
Anton Katilin
Posts: 6172
Joined: Wed Aug 11, 2004 8:37 am

Re: YourKit Profiler 2015.15074 + Mule ESB = False

Post by Anton Katilin »

Hi,
[YourKit Java Profiler 9.0.8] Loaded. Log file: /home/xxxx/.yjp/log/22339.log
It seems you're using extremely old version 9 which is unsupported for years.

Please ensure you use the latest version 2015.

Best regards,
Anton
krizsan
Posts: 2
Joined: Fri Oct 23, 2015 12:31 pm

Re: YourKit Profiler 2015 + Mule ESB = True

Post by krizsan »

Thanks!
I was using the YourKit Profiler libraries bundled with Mule ESB.
For others in the same situation:
- Remove the old library files in the Mule instance's directory $MULE_HOME/lib/native/profiler.
- Copy the files from the appropriate library folder in the YourKit Linux download (libyjpagent.so and yjp_dc in my case) to the $MULE_HOME/lib/native/profiler directory.
- Rename the libyjpagent.so file to match the name of the old library file. If you start Mule with the -profile option and the name of the library is not correct, it will log a message with the correct name of the library to use.

You are now ready to start Mule with the -profile option.
YourKit Profiler 2015 + Mule ESB = True
Anton Katilin
Posts: 6172
Joined: Wed Aug 11, 2004 8:37 am

Re: YourKit Profiler 2015.15074 + Mule ESB = False

Post by Anton Katilin »

Hello Ivan

Thank you for the feedback and for providing such detailed workaround.

Are you using the latest version of Mule ESB? Perhaps we should contact its vendor and ask to update the bundled agent library.

Best regards,
Anton
Post Reply