Hi

Our Tomcat Servlet engine locked up running a little click web app of ours 
(which ran w/o problems for about a week).
The thread dump shows one thread has locked a semaphore for logging to the 
console while all the others are waiting on it.
Any idea why the initial locking thread is not returning to release the 
semaphore? Click is running in debug mode.

One of the waiting threads:

"http-8443-2" daemon prio=6 tid=0x02f5a400 nid=0x220 waiting for monitor entry 
[0x0396f000]

java.lang.Thread.State: BLOCKED (on object monitor)

at java.io.PrintStream.println(Unknown Source)

- waiting to lock <0x245128a8> (a java.io.PrintStream)

at 
org.apache.tomcat.util.log.SystemLogHandler.println(SystemLogHandler.java:238)

at org.apache.click.service.ConsoleLogService.log(ConsoleLogService.java:241)

at org.apache.click.service.ConsoleLogService.debug(ConsoleLogService.java:98)

at org.apache.click.ClickServlet.handleRequest(ClickServlet.java:331)

at org.apache.click.ClickServlet.doPost(ClickServlet.java:294)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)

at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)

at java.lang.Thread.run(Unknown Source)

Locked ownable synchronizers:

- None



The blocking thread:

"http-8443-1" daemon prio=6 tid=0x0319b400 nid=0x1ef0 runnable [0x0382f000]

java.lang.Thread.State: RUNNABLE

at java.io.FileOutputStream.writeBytes(Native Method)

at java.io.FileOutputStream.write(Unknown Source)

at java.io.BufferedOutputStream.flushBuffer(Unknown Source)

at java.io.BufferedOutputStream.flush(Unknown Source)

- locked <0x2451c8d0> (a java.io.BufferedOutputStream)

at java.io.PrintStream.write(Unknown Source)

- locked <0x245128a8> (a java.io.PrintStream)

at sun.nio.cs.StreamEncoder.writeBytes(Unknown Source)

at sun.nio.cs.StreamEncoder.implFlushBuffer(Unknown Source)

at sun.nio.cs.StreamEncoder.flushBuffer(Unknown Source)

- locked <0x2451c910> (a java.io.OutputStreamWriter)

at java.io.OutputStreamWriter.flushBuffer(Unknown Source)

at java.io.PrintStream.write(Unknown Source)

- locked <0x245128a8> (a java.io.PrintStream)

at java.io.PrintStream.print(Unknown Source)

at java.io.PrintStream.println(Unknown Source)

- locked <0x245128a8> (a java.io.PrintStream)

at 
org.apache.tomcat.util.log.SystemLogHandler.println(SystemLogHandler.java:238)

at org.apache.click.service.ConsoleLogService.log(ConsoleLogService.java:241)

at org.apache.click.service.ConsoleLogService.debug(ConsoleLogService.java:98)

at org.apache.click.ClickServlet.handleRequest(ClickServlet.java:331)

at org.apache.click.ClickServlet.doPost(ClickServlet.java:294)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)

at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)

at java.lang.Thread.run(Unknown Source)

Locked ownable synchronizers:

- None


Regards
Stephan

Reply via email to