XML-RPC server deadlocks under heavy load
-----------------------------------------

                 Key: XMLRPC-168
                 URL: https://issues.apache.org/jira/browse/XMLRPC-168
             Project: XML-RPC
          Issue Type: Bug
          Components: Source
    Affects Versions: 3.1.2
         Environment: Soalris
            Reporter: Alan Burlison


When running a XML-RPC server under heavu load, it eventually deadlocks inside 
the thread pool that manages the 'worker' threads which handle the individual 
XML-RPC requests - the classes involved are org.apache.xmlrpc.util.ThreadPool 
and org.apache.xmlrpc.util.ThreadPool$Poolable.  jstack on the hung process 
shows:

----------
Found one Java-level deadlock:
=============================
"XML-RPC-13":
  waiting to lock monitor 0x08d10bec (object 0xbb6959c0, a 
org.apache.xmlrpc.util.ThreadPool),
  which is held by "XML-RPC Weblistener"
"XML-RPC Weblistener":
  waiting to lock monitor 0x08d1186c (object 0xbd2ed340, a 
org.apache.xmlrpc.util.ThreadPool$Poolable$1),
  which is held by "XML-RPC-2"
"XML-RPC-2":
  waiting to lock monitor 0x08d112f4 (object 0xbd2ed570, a 
org.apache.xmlrpc.util.ThreadPool$Poolable),
  which is held by "XML-RPC Weblistener"

Java stack information for the threads listed above:
===================================================
"XML-RPC-13":
        at org.apache.xmlrpc.util.ThreadPool.repool(Unknown Source)
        - waiting to lock <0xbb6959c0> (a org.apache.xmlrpc.util.ThreadPool)
        at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(Unknown Source)
"XML-RPC Weblistener":
        at org.apache.xmlrpc.util.ThreadPool$Poolable.start(Unknown Source)
        - waiting to lock <0xbd2ed340> (a 
org.apache.xmlrpc.util.ThreadPool$Poolable$1)
        - locked <0xbd2ed570> (a org.apache.xmlrpc.util.ThreadPool$Poolable)
        at org.apache.xmlrpc.util.ThreadPool.startTask(Unknown Source)
        - locked <0xbb6959c0> (a org.apache.xmlrpc.util.ThreadPool)
        at org.apache.xmlrpc.webserver.WebServer.run(Unknown Source)
        at java.lang.Thread.run(Thread.java:619)
"XML-RPC-2":
        at org.apache.xmlrpc.util.ThreadPool$Poolable.isShuttingDown(Unknown 
Source)
        - waiting to lock <0xbd2ed570> (a 
org.apache.xmlrpc.util.ThreadPool$Poolable)
        at org.apache.xmlrpc.util.ThreadPool$Poolable.access$000(Unknown Source)
        at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(Unknown Source)
        - locked <0xbd2ed340> (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

Found 1 deadlock.
----------

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to