tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject Re: Deadlock in Tomcat 5.5.20
Date Fri, 09 Feb 2007 17:50:05 GMT
So where's the deadlock in this stack dump?

Bryan Basham wrote:
> Hi all,
> 
> This might not be the right forum for this.  Let em know if
> I should post this to the tomcat-dev alias.
> 
> THE PROBLEM
> 
> The problem we are experience is that occasionally Tomcat (5.5.20)
> is deadlocking; see the attached output from a kill -3 on the tomcat
> process.
> 
> Has anyone seen this happen?  Did you discover why this is happening?
> And most importantly: How did you fix it?
> 
> THE BACKGROUND
> 
> I am working on a project in which our architecture requires
> "pluggable" modules.  In the first two iterations, we avoided that
> requirement by building all modules into a single ROOT.war
> webapp.  Now in this iteration we are "teasing apart" these into
> separately loaded moduleXYZ.war files.
> 
> This has caused lots of headaches; especially around getting
> JSF to handle cross-context (cross-webapp) navigation and
> bean management.  We have pretty much solved the JSF issues,
> some fixes required doing things like performing cross-context
> dispatching and merging of JSF's RuntimeConfig objects from
> each webapp ServletContext.  However, I don't see how any
> of these changes would cause the deadlock.
> 
> Sincere thanks,
> Bryan
> 
> 
> ------------------------------------------------------------------------
> 
> "Java2D Disposer" daemon prio=1 tid=0x08af2f10 nid=0xf1d in Object.wait() [0x9bda3000..0x9bda40d0]
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0xa03bf8a8> (a java.lang.ref.ReferenceQueue$Lock)
> 	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
> 	- locked <0xa03bf8a8> (a java.lang.ref.ReferenceQueue$Lock)
> 	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
> 	at sun.java2d.Disposer.run(Disposer.java:107)
> 	at java.lang.Thread.run(Thread.java:595)
> 
> "Timer-3" daemon prio=1 tid=0x083667f8 nid=0xe9c in Object.wait() [0x9be41000..0x9be42150]
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x9ff8d648> (a java.util.TaskQueue)
> 	at java.util.TimerThread.mainLoop(Timer.java:509)
> 	- locked <0x9ff8d648> (a java.util.TaskQueue)
> 	at java.util.TimerThread.run(Timer.java:462)
> 
> "TP-Monitor" daemon prio=1 tid=0x0837ab30 nid=0xe9b in Object.wait() [0x9bec2000..0x9bec2ed0]
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x9ff8d688> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)
> 	at org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable.run(ThreadPool.java:559)
> 	- locked <0x9ff8d688> (a org.apache.tomcat.util.threads.ThreadPool$MonitorRunnable)
> 	at java.lang.Thread.run(Thread.java:595)
> 
> "TP-Processor4" daemon prio=1 tid=0x083615e8 nid=0xe9a runnable [0x9bf43000..0x9bf43e50]
> 	at java.net.PlainSocketImpl.socketAccept(Native Method)
> 	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
> 	- locked <0x9ff8d6b0> (a java.net.SocksSocketImpl)
> 	at java.net.ServerSocket.implAccept(ServerSocket.java:450)
> 	at java.net.ServerSocket.accept(ServerSocket.java:421)
> 	at org.apache.jk.common.ChannelSocket.accept(ChannelSocket.java:306)
> 	at org.apache.jk.common.ChannelSocket.acceptConnections(ChannelSocket.java:660)
> 	at org.apache.jk.common.ChannelSocket$SocketAcceptor.runIt(ChannelSocket.java:870)
> 	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> 	at java.lang.Thread.run(Thread.java:595)
> 
> "TP-Processor3" daemon prio=1 tid=0x083603d0 nid=0xe99 in Object.wait() [0x9bfc4000..0x9bfc4fd0]
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x9ff8d8d8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
> 	at java.lang.Object.wait(Object.java:474)
> 	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)
> 	- locked <0x9ff8d8d8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
> 	at java.lang.Thread.run(Thread.java:595)
> 
> "TP-Processor2" daemon prio=1 tid=0x0835f288 nid=0xe98 in Object.wait() [0x9c045000..0x9c045f50]
> 	at java.lang.Object.wait(Native Method)
> 	- waiting on <0x9ff8d8f8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
> 	at java.lang.Object.wait(Object.java:474)
> 	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:656)
> 	- locked <0x9ff8d8f8> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable)
> 	at java.lang.Thread.run(Thread.java:595)
> 
> 

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message