APAR status
Closed as program error.
Error description
Error Message: Deadlock between URL handler and Class loader . Stack Trace: 1LKDEADLOCK Deadlock detected !!! NULL --------------------- NULL 2LKDEADLOCKTHR Thread 'Non-deferrable Alarm : 0' (0x00000000012B8A00) 3LKDEADLOCKWTR is waiting for: 4LKDEADLOCKMON sys_mon_t:0x0000040014088C00 infl_mon_t: 0x0000040014088C78: 4LKDEADLOCKOBJ com/ibm/ws/bootstrap/ExtClassLoader@0x0000000010A7F940/0x0000000 010A7F944: 3LKDEADLOCKOWN which is owned by: 2LKDEADLOCKTHR Thread 'PluginConfigService : 0' (0x0000000002229100) 3LKDEADLOCKWTR which is waiting for: 4LKDEADLOCKMON sys_mon_t:0x0000040014CD0588 infl_mon_t: 0x0000040014CD0600: 4LKDEADLOCKOBJ java/lang/Object@0x0000000010121CE0/0x0000000010121CE4: 3LKDEADLOCKOWN which is owned by: 2LKDEADLOCKTHR Thread 'Non-deferrable Alarm : 0' (0x00000000012B8A00) 3XMTHREADINFO 'Non-deferrable Alarm : 0' J9VMThread:0x00000000012B8A00, j9thread_t:0x00000400064427E0, java/lang/Thread:0x00000000115A6F90, state:B, prio=5 3XMTHREADINFO1 (native thread ID:0x612, native priority:0x5, native policy:UNKNOWN) 3XMTHREADINFO2 (native stack address range from:0x0000040011EC0000, to:0x0000040011F00000, size:0x40000) 3XMTHREADINFO3 Java callstack: 4XESTACKTRACE at java/lang/ClassLoader.loadClass(ClassLoader.java:630(Compiled Code)) 4XESTACKTRACE at com/ibm/ws/bootstrap/ExtClassLoader.loadClass(ExtClassLoader.jav a:113(Compiled Code)) 4XESTACKTRACE at java/lang/ClassLoader.loadClass(ClassLoader.java:612(Compiled Code)) 4XESTACKTRACE at com/ibm/ws/eba/internal/framework/EBAClassLoader.loadClass(EBACl assLoader.java:86(Compiled Code)) 4XESTACKTRACE at org/eclipse/osgi/launch/EquinoxFWClassLoader.loadClass(EquinoxFW ClassLoader.java:46(Compiled Code)) 4XESTACKTRACE at java/lang/ClassLoader.loadClass(ClassLoader.java:638(Compiled Code)) 4XESTACKTRACE at java/lang/ClassLoader.loadClass(ClassLoader.java:612(Compiled Code)) 4XESTACKTRACE at sun/reflect/DelegatingClassLoader.loadClass(DelegatingClassLoade r.java:51) 4XESTACKTRACE at sun/misc/Unsafe.defineClass(Native Method) 4XESTACKTRACE at sun/reflect/ClassDefiner.defineClass(ClassDefiner.java:57) 4XESTACKTRACE at sun/reflect/MethodAccessorGenerator$1.run(MethodAccessorGenerato r.java:437) 4XESTACKTRACE at java/security/AccessController.doPrivileged(AccessController.jav a:203(Compiled Code)) 4XESTACKTRACE at sun/reflect/MethodAccessorGenerator.generate(MethodAccessorGener ator.java:433) 4XESTACKTRACE at sun/reflect/MethodAccessorGenerator.generateMethod(MethodAccesso rGenerator.java:85(Compiled Code)) 4XESTACKTRACE at sun/reflect/NativeMethodAccessorImpl.invoke(NativeMethodAccessor Impl.java:54(Compiled Code)) 4XESTACKTRACE at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethod AccessorImpl.java:37(Compiled Code)) 4XESTACKTRACE at java/lang/reflect/Method.invoke(Method.java:611(Compiled Code)) 4XESTACKTRACE at org/eclipse/osgi/framework/internal/protocol/MultiplexingFactory .findAuthorizedFactory (MultiplexingFactory.java:128) 4XESTACKTRACE at org/eclipse/osgi/framework/internal/protocol/StreamHandlerFactor y.findAuthorizedURLStreamHandler (StreamHandlerFactory.java:194) 4XESTACKTRACE at org/eclipse/osgi/framework/internal/protocol/StreamHandlerFactor y.createURLStreamHandler (StreamHandlerFactory.java:112) 4XESTACKTRACE at java/net/URL.getURLStreamHandler(URL.java:1184(Compiled Code)) 4XESTACKTRACE at java/net/URL.<init>(URL.java:405(Compiled Code)) 4XESTACKTRACE at java/net/URL.<init>(URL.java:295(Compiled Code)) 4XESTACKTRACE at java/security/CodeSource.getDecodedURL(CodeSource.java:344(Compi led Code)) 4XESTACKTRACE at java/security/CodeSource.implies(CodeSource.java:357(Compiled Code)) 3XMTHREADINFO 'PluginConfigService : 0' J9VMThread:0x0000000002229100, j9thread_t:0x0000040011697280, java/lang/Thread:0x000000001514E678, state:B, prio=5 3XMTHREADINFO1 (native thread ID:0xD88, native priority:0x5, native policy:UNKNOWN) 3XMTHREADINFO2 (native stack address range from:0x00000400126E0000, to:0x0000040012720000, size:0x40000) 3XMTHREADINFO3 Java callstack: 4XESTACKTRACE at java/net/URL.getURLStreamHandler(URL.java:1169(Compiled Code)) 4XESTACKTRACE at java/net/URL.<init>(URL.java:405(Compiled Code)) 4XESTACKTRACE at java/net/URL.<init>(URL.java:295(Compiled Code)) 4XESTACKTRACE at java/security/CodeSource.getDecodedURL(CodeSource.java:344(Compi led Code)) 4XESTACKTRACE at java/security/CodeSource.implies(CodeSource.java:358(Compiled Code)) 4XESTACKTRACE at com/ibm/ws/security/policy/WSDynamicPolicy.getPermissions_s(WSDy namicPolicy.java:274(Compiled Code)) .
Local fix
Problem summary
The synchronized block which loads classes and get called while a class is being loaded may end up in a deadlock situation.
Problem conclusion
This defect will be fixed in: 6.0.0 SR11 6.0.1 SR2 . The JDK has been updated to minimize the synchronization to avoid the deadlock situation as sysnchronization is not required during class loading. The problem did not exist in JDK 7 as parallel class loading is allowed in JDK 7.
Temporary fix
Comments
APAR Information
APAR number
IV16500
Reported component name
JAVA CLASS LIBS
Reported component ID
620700130
Reported release
600
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-03-03
Closed date
2013-10-04
Last modified date
2013-10-04
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
JAVA CLASS LIBS
Fixed component ID
620700130
Applicable component levels
R600 PSY
UP
[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCVQ3Y","label":"Java Class Libraries"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.0","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
04 October 2013