Hello Christoph,
As you suggested, I haven't tried.
Nevertheless, I have tried to imagine what the result could have been.
Result: idem. Please find the imaginary dump stack trace.
Cheers,
Alice
> -----Message d'origine-----
> De : [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]De la part de Jung
> , Dr. Christoph
> Envoy� : mercredi, 3 octobre 2001 16:18
> � : Jboss-Development (E-Mail)
> Objet : [JBoss-dev] java.lang.ClassLoader misery. Verify this patch!
>
>
> Hi there,
>
> In order to verify whether our hypothesis about that ugly deadlocking
> behaviour of the RH classloaders is right
>
> (Sascha, Simone and Ole seem to have some serious problems in that
> direction, if I understood their postings right),
>
> could you please NOT try out the following patch.jar (the synchronized
> modifier has been removed at Class
> java.lang.ClassLoader.loadClassInternal(String), which is IMHO a totally
> uncritical) which violates the
> Sun Binary Code License!
>
> Hence, do NOT start jboss using java -Xbootclasspath/p:patch.jar ...
>
> CGJ
>
>
> <<patch.jar>>
>
>
>
Full thread dump Classic VM (1.3.1-b24, native threads):
"UDP mcast receiver" (TID:0x148bd50, sys_thread_t:0x5439f10, state:R, native
ID:0x71c) prio=7
at java.net.PlainDatagramSocketImpl.receive(Native Method)
at java.net.DatagramSocket.receive(DatagramSocket.java:392)
at JavaGroups.JavaStack.Protocols.UDP.run(UDP.java:93)
at java.lang.Thread.run(Thread.java:484)
"UDP.UcastReceiverThread" (TID:0x148bcb8, sys_thread_t:0x5436610, state:R, native
ID:0x718) prio=5
at java.net.PlainDatagramSocketImpl.receive(Native Method)
at java.net.DatagramSocket.receive(DatagramSocket.java:392)
at JavaGroups.JavaStack.Protocols.UDP$UcastReceiver.run(UDP.java:714)
at java.lang.Thread.run(Thread.java:484)
"Scheduler main thread" (TID:0x143b040, sys_thread_t:0x541fc88, state:CW, native
ID:0x714) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Peek(Queue.java:367)
at JavaGroups.Scheduler.run(Scheduler.java:62)
at java.lang.Thread.run(Thread.java:484)
"UpHandler (STATE_TRANSFER)" (TID:0x1448988, sys_thread_t:0x53dc088, state:CW,
native ID:0x710) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (STATE_TRANSFER)" (TID:0x1448860, sys_thread_t:0x4ba96f0, state:CW,
native ID:0x70c) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"UpHandler (GMS)" (TID:0x14487c8, sys_thread_t:0x4ba9580, state:CW, native
ID:0x708) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (GMS)" (TID:0x1448ac0, sys_thread_t:0x4ba9410, state:CW, native
ID:0x704) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"UpHandler (FRAG)" (TID:0x1448a28, sys_thread_t:0x4ba92a0, state:CW, native
ID:0x700) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (FRAG)" (TID:0x1448ce0, sys_thread_t:0x4ba9130, state:CW, native
ID:0x6fc) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"UpHandler (UNICAST)" (TID:0x1448be0, sys_thread_t:0x53ec6d0, state:CW, native
ID:0x6f8) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (UNICAST)" (TID:0x1448b58, sys_thread_t:0x53ec560, state:CW, native
ID:0x6f4) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"UpHandler (NAKACK)" (TID:0x1448df0, sys_thread_t:0x53ec3f0, state:CW, native
ID:0x6f0) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (NAKACK)" (TID:0x1448d68, sys_thread_t:0x53ec280, state:MW, native
ID:0x6ec) prio=5
at org.jboss.system.ServiceLibraries.loadClass(ServiceLibraries.java:268)
at org.jboss.system.URLClassLoader.loadClass(URLClassLoader.java:145)
at org.jboss.system.URLClassLoader.loadClass(URLClassLoader.java:151)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
at java.lang.ClassLoader.resolveClass0(Native Method)
at java.lang.ClassLoader.resolveClass(ClassLoader.java:588)
at java.lang.ClassLoader.loadClass(ClassLoader.java:301)
at org.jboss.system.URLClassLoader.loadClassLocally(URLClassLoader.java:163)
at org.jboss.system.ServiceLibraries.loadClass(ServiceLibraries.java:268)
at org.jboss.system.URLClassLoader.loadClass(URLClassLoader.java:145)
at org.jboss.system.URLClassLoader.loadClass(URLClassLoader.java:151)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
at JavaGroups.NakReceiverWindow.<init>(NakReceiverWindow.java:141)
at JavaGroups.JavaStack.Protocols.pbcast.NAKACK.SetDigest(NAKACK.java:474)
at JavaGroups.JavaStack.Protocols.pbcast.NAKACK.Down(NAKACK.java:95)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:105)
"UpHandler (VERIFY_SUSPECT)" (TID:0x1448ff8, sys_thread_t:0x53ec110, state:CW,
native ID:0x6e8) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (VERIFY_SUSPECT)" (TID:0x1448f50, sys_thread_t:0x53fd578, state:CW,
native ID:0x6e4) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"UpHandler (FD)" (TID:0x1448eb0, sys_thread_t:0x53fd408, state:CW, native
ID:0x6e0) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (FD)" (TID:0x1449018, sys_thread_t:0x53fd298, state:CW, native
ID:0x6dc) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"UpHandler (PING)" (TID:0x1449098, sys_thread_t:0x53fa2d0, state:CW, native
ID:0x6d8) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.UpHandler.run(Protocol.java:37)
"DownHandler (PING)" (TID:0x1449328, sys_thread_t:0x53fa1e8, state:CW, native
ID:0x6d4) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"DownHandler (UDP)" (TID:0x1449278, sys_thread_t:0x53fa100, state:CW, native
ID:0x6d0) prio=5
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at JavaGroups.Queue.Remove(Queue.java:216)
at JavaGroups.JavaStack.DownHandler.run(Protocol.java:93)
"Adaptor:name=html" (TID:0x1464210, sys_thread_t:0x5332500, state:R, native
ID:0x6cc) prio=6
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:421)
at java.net.ServerSocket.implAccept(ServerSocket.java:243)
at java.net.ServerSocket.accept(ServerSocket.java:222)
at com.sun.jdmk.comm.HtmlAdaptorServer.doReceive(HtmlAdaptorServer.java:935)
at com.sun.jdmk.comm.CommunicatorServer.run(CommunicatorServer.java:512)
at java.lang.Thread.run(Thread.java:484)
"JNP Server" (TID:0x147e900, sys_thread_t:0x5307df8, state:R, native ID:0x6c8)
prio=5
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:421)
at java.net.ServerSocket.implAccept(ServerSocket.java:243)
at java.net.ServerSocket.accept(ServerSocket.java:222)
at org.jnp.server.Main.run(Main.java:243)
at java.lang.Thread.run(Thread.java:484)
"GC Daemon" (TID:0x14859d0, sys_thread_t:0x52ee410, state:CW, native ID:0x6c4)
prio=2
at java.lang.Object.wait(Native Method)
at sun.misc.GC$Daemon.run(GC.java:103)
"RMI Reaper" (TID:0x14854c0, sys_thread_t:0x52ebbe8, state:CW, native ID:0x6c0)
prio=5
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:108)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:123)
at sun.rmi.transport.ObjectTable$Reaper.run(ObjectTable.java:284)
at java.lang.Thread.run(Thread.java:484)
"RMI TCP Accept-1" (TID:0x14867e0, sys_thread_t:0x52c9498, state:R, native
ID:0x6bc) prio=5
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:421)
at java.net.ServerSocket.implAccept(ServerSocket.java:243)
at java.net.ServerSocket.accept(ServerSocket.java:222)
at sun.rmi.transport.tcp.TCPTransport.run(TCPTransport.java:331)
at java.lang.Thread.run(Thread.java:484)
"Thread-1" (TID:0x1457ba8, sys_thread_t:0x52976c8, state:R, native ID:0x6b4) prio=5
at java.net.PlainSocketImpl.socketAccept(Native Method)
at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:421)
at java.net.ServerSocket.implAccept(ServerSocket.java:243)
at java.net.ServerSocket.accept(ServerSocket.java:222)
at org.jboss.web.WebServer.run(WebServer.java:244)
at org.jboss.web.ThreadPool$Worker.run(ThreadPool.java:140)
"Thread-0" (TID:0x1475ad0, sys_thread_t:0x4b76088, state:CW, native ID:0x6b8)
prio=5
at java.lang.Thread.sleep(Native Method)
at org.apache.log4j.helpers.FileWatchdog.run(FileWatchdog.java:95)
"Finalizer" (TID:0x1459528, sys_thread_t:0x490a718, state:CW, native ID:0x6ac)
prio=8
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:108)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:123)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:162)
"Reference Handler" (TID:0x1459300, sys_thread_t:0x4907078, state:CW, native
ID:0x684) prio=10
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:110)
"Signal dispatcher" (TID:0x1459330, sys_thread_t:0x48fff60, state:R, native
ID:0x624) prio=5
"main" (TID:0x14591b0, sys_thread_t:0x234478, state:MW, native ID:0x5f8) prio=5
at org.jboss.system.URLClassLoader.loadClassLocally(URLClassLoader.java:163)
at org.jboss.system.ServiceLibraries.loadClass(ServiceLibraries.java:292)
at org.jboss.system.URLClassLoader.loadClass(URLClassLoader.java:145)
at org.jboss.system.URLClassLoader.loadClass(URLClassLoader.java:151)
at sun.rmi.server.RemoteProxy.loadClassFromClass(RemoteProxy.java:194)
at sun.rmi.server.RemoteProxy.getSkeleton(RemoteProxy.java:163)
at sun.rmi.server.UnicastServerRef.setSkeleton(UnicastServerRef.java:148)
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:122)
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:109)
at
java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:278)
at
java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:181)
at
java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:158)
at
org.jboss.ha.framework.server.DistributedReplicantManagerImpl.start(DistributedReplicantManagerImpl.java:59)
at
org.jboss.ha.framework.server.HAPartitionImpl.start(HAPartitionImpl.java:166)
at
org.jboss.ha.framework.server.ClusterPartition.startService(ClusterPartition.java:103)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:118)
at java.lang.reflect.Method.invoke(Native Method)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:678)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:451)
at java.lang.reflect.Method.invoke(Native Method)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at org.jboss.deployment.ServiceDeployer.invoke(ServiceDeployer.java:1004)
at org.jboss.deployment.ServiceDeployer.addMBeans(ServiceDeployer.java:922)
at org.jboss.deployment.ServiceDeployer.deployMBeans(ServiceDeployer.java:344)
at org.jboss.deployment.ServiceDeployer.deploy(ServiceDeployer.java:279)
at
org.jboss.deployment.DeployerMBeanSupport.deploy(DeployerMBeanSupport.java:117)
at java.lang.reflect.Method.invoke(Native Method)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at org.jboss.deployment.AutoDeployer.deploy(AutoDeployer.java:633)
at org.jboss.deployment.AutoDeployer.run(AutoDeployer.java:308)
at org.jboss.deployment.AutoDeployer.startService(AutoDeployer.java:489)
at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:118)
at java.lang.reflect.Method.invoke(Native Method)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:678)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:451)
at java.lang.reflect.Method.invoke(Native Method)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1628)
at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1523)
at org.jboss.deployment.ServiceDeployer.invoke(ServiceDeployer.java:1004)
at org.jboss.deployment.ServiceDeployer.addMBeans(ServiceDeployer.java:922)
at org.jboss.deployment.ServiceDeployer.deployMBeans(ServiceDeployer.java:344)
at org.jboss.deployment.ServiceDeployer.deploy(ServiceDeployer.java:279)
at org.jboss.deployment.ServiceDeployer.postRegister(ServiceDeployer.java:813)
at
com.sun.management.jmx.MBeanServerImpl.postRegisterInvoker(MBeanServerImpl.java:2274)
at com.sun.management.jmx.MBeanServerImpl.createMBean(MBeanServerImpl.java:532)
at org.jboss.Main.<init>(Main.java:200)
at org.jboss.Main$1.run(Main.java:433)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.Main.main(Main.java:428)
Monitor Cache Dump:
java.lang.Object@14823C0/15DCB90: <unowned>
Waiting to be notified:
"UpHandler (FD)" (0x53fd408)
java.lang.Object@147F040/15E4F40: <unowned>
Waiting to be notified:
"UpHandler (VERIFY_SUSPECT)" (0x53ec110)
java.lang.Object@147F090/15E4F68: <unowned>
Waiting to be notified:
"DownHandler (VERIFY_SUSPECT)" (0x53fd578)
org.jboss.system.URLClassLoader@147B4F0/1546058: owner "DownHandler (NAKACK)"
(0x53ec280) 3 entries
Waiting to enter:
"main" (0x234478)
java.net.PlainSocketImpl@1458378/158B7A0: owner "Thread-1" (0x52976c8) 1 entry
java.util.Collections$SynchronizedSet@145EF18/14F34C0: owner "main" (0x234478) 1
entry
Waiting to enter:
"DownHandler (NAKACK)" (0x53ec280)
java.lang.Object@144C618/16E3858: <unowned>
Waiting to be notified:
"Scheduler main thread" (0x541fc88)
java.net.PlainDatagramSocketImpl@1443E90/163C938: owner "UDP mcast receiver"
(0x5439f10) 1 entry
sun.misc.GC$LatencyLock@14856F8/157D2F0: <unowned>
Waiting to be notified:
"GC Daemon" (0x52ee410)
java.net.MulticastSocket@1443E98/163C920: owner "UDP mcast receiver" (0x5439f10) 1
entry
java.net.PlainSocketImpl@147ED60/1581B78: owner "JNP Server" (0x5307df8) 1 entry
java.lang.ref.Reference$Lock@1459310/148EF68: <unowned>
Waiting to be notified:
"Reference Handler" (0x4907078)
java.lang.Class@1453F00/16DAFA0: owner "DownHandler (NAKACK)" (0x53ec280) 1 entry
java.lang.ref.ReferenceQueue$Lock@1486E58/157C420: <unowned>
Waiting to be notified:
"RMI Reaper" (0x52ebbe8)
java.lang.Object@1466868/1608D40: <unowned>
Waiting to be notified:
"UpHandler (FRAG)" (0x4ba92a0)
java.lang.Object@148B548/15D1EF0: <unowned>
Waiting to be notified:
"DownHandler (PING)" (0x53fa1e8)
java.net.PlainDatagramSocketImpl@14439D8/163A100: owner "UDP.UcastReceiverThread"
(0x5436610) 1 entry
java.net.DatagramSocket@14439E0/163A0E8: owner "UDP.UcastReceiverThread"
(0x5436610) 1 entry
java.lang.Object@1476AC8/15FD2B8: <unowned>
Waiting to be notified:
"UpHandler (UNICAST)" (0x53ec6d0)
java.net.DatagramPacket@148B920/16A2EA0: owner "UDP.UcastReceiverThread"
(0x5436610) 1 entry
java.lang.Object@148B520/15D1EC8: <unowned>
Waiting to be notified:
"UpHandler (PING)" (0x53fa2d0)
java.util.HashMap@147DEA0/1532930: owner "main" (0x234478) 1 entry
java.net.DatagramPacket@148B998/166D7B0: owner "UDP mcast receiver" (0x5439f10) 1
entry
java.lang.Object@1457858/162CF90: <unowned>
Waiting to be notified:
"UpHandler (GMS)" (0x4ba9580)
java.lang.Object@1457868/162CFB8: <unowned>
Waiting to be notified:
"DownHandler (GMS)" (0x4ba9410)
java.lang.Object@1449C78/1653BB0: <unowned>
Waiting to be notified:
"DownHandler (STATE_TRANSFER)" (0x4ba96f0)
java.lang.ref.ReferenceQueue$Lock@1459540/148F448: <unowned>
Waiting to be notified:
"Finalizer" (0x490a718)
java.lang.Object@147AF10/15F17C0: <unowned>
Waiting to be notified:
"UpHandler (NAKACK)" (0x53ec3f0)
java.net.PlainSocketImpl@1463E88/15A3468: owner "Adaptor:name=html" (0x5332500) 1
entry
java.lang.Object@1449C38/1653B88: <unowned>
Waiting to be notified:
"UpHandler (STATE_TRANSFER)" (0x53dc088)
java.lang.Object@1466A20/1608D68: <unowned>
Waiting to be notified:
"DownHandler (FRAG)" (0x4ba9130)
java.lang.Object@1476B28/15FD2E0: <unowned>
Waiting to be notified:
"DownHandler (UNICAST)" (0x53ec560)
java.net.PlainSocketImpl@1487048/157C468: owner "RMI TCP Accept-1" (0x52c9498) 1
entry
java.lang.Object@1444C60/15B3920: <unowned>
Waiting to be notified:
"DownHandler (UDP)" (0x53fa100)
java.lang.Object@1482428/15DCBB8: <unowned>
Waiting to be notified:
"DownHandler (FD)" (0x53fd298)
Registered Monitor Dump:
utf8 hash table: <unowned>
JNI pinning lock: <unowned>
JNI global reference lock: <unowned>
BinClass lock: <unowned>
Class linking lock: <unowned>
System class loader lock: <unowned>
Code rewrite lock: <unowned>
Heap lock: <unowned>
Monitor cache lock: owner "Signal dispatcher" (0x48fff60) 1 entry
Thread queue lock: owner "Signal dispatcher" (0x48fff60) 1 entry
Monitor registry: owner "Signal dispatcher" (0x48fff60) 1 entry