Mantis - Resin
Viewing Issue Advanced Details
5295 major sometimes 11-30-12 16:41 01-16-13 10:19
thihy  
ferg  
normal  
closed 4.0.30  
fixed  
none    
none 4.0.33  
0005295: Deadlock when writing accesslog
Today, the resin 4.0.30 stops responding to requests. I dump the thead stack, and find these locks. A lot of threads are waiting on AtomicBoolean.


"resin-port-8080-10" daemon prio=10 tid=0x00002aad4077b000 nid=0x602c in Object.wait() [0x0000000067f48000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at com.caucho.env.thread.ActorQueue.waitForQueue(ActorQueue.java:307)
    - locked <0x00002aaaf4099bd8> (a java.util.concurrent.atomic.AtomicBoolean)
    at com.caucho.env.thread.ActorQueue.startOffer(ActorQueue.java:227)
    at com.caucho.env.thread.ValueActorQueue.offer(ValueActorQueue.java:69)
    at com.caucho.env.thread.AbstractWorkerQueue.offer(AbstractWorkerQueue.java:58)
    at com.caucho.server.log.AccessLogWriter.writeBuffer(AccessLogWriter.java:119)
    at com.caucho.server.log.AccessLog.log(AccessLog.java:389)
    at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:107)
    at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:289)
    at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:838)

"resin-port-8080-12" daemon prio=10 tid=0x00002aad40778000 nid=0x602b in Object.wait() [0x0000000067f07000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at com.caucho.env.thread.ActorQueue.waitForQueue(ActorQueue.java:307)
    - locked <0x00002aaaf4099bd8> (a java.util.concurrent.atomic.AtomicBoolean)
    at com.caucho.env.thread.ActorQueue.startOffer(ActorQueue.java:227)
    at com.caucho.env.thread.ValueActorQueue.offer(ValueActorQueue.java:69)
    at com.caucho.env.thread.AbstractWorkerQueue.offer(AbstractWorkerQueue.java:58)
    at com.caucho.server.log.AccessLogWriter.writeBuffer(AccessLogWriter.java:119)
    at com.caucho.server.log.AccessLog.log(AccessLog.java:389)
    at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:107)
    at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:289)
    at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:838)

There are no notes attached to this issue.