Re: Problem with XmlRpcClient.execute()

2009-05-09 Thread Lars Schnoor

Hi Alan
Now I have been able to recreate the problem and can post the stack 
traces. I have actually one client and one server on each machine, but 
in the example below the call from the client to the server does not return.

*On the client side:*

/XML-RPC-1 prio=6 tid=0x02bf1c00 nid=0xd70 in Object.wait() 
[0x03a7f000..0x03a7fd14]

  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x22f506b8 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

XML-RPC-0 prio=6 tid=0x02c8a400 nid=0xb00 in Object.wait() 
[0x036df000..0x036dfb14]

  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x22f42870 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

XML-RPC Weblistener prio=6 tid=0x03008800 nid=0x798 runnable 
[0x037df000..0x037dfb94]

  java.lang.Thread.State: RUNNABLE
   at java.net.PlainSocketImpl.socketAccept(Native Method)
   at java.net.PlainSocketImpl.accept(Unknown Source)
   - locked 0x22f13ec8 (a java.net.SocksSocketImpl)
   at java.net.ServerSocket.implAccept(Unknown Source)
   at java.net.ServerSocket.accept(Unknown Source)
   at org.apache.xmlrpc.webserver.WebServer.run(WebServer.java:326)
   at java.lang.Thread.run(Unknown Source)

  Locked ownable synchronizers:
   - None/

*On the server side:*

/XML-RPC-2 prio=6 tid=0x030e9400 nid=0xe64 waiting for monitor entry 
[0x035af000..0x035afa94]

  java.lang.Thread.State: BLOCKED (on object monitor)
   at 
org.apache.xmlrpc.util.ThreadPool$Poolable.getTask(ThreadPool.java:99)
   - waiting to lock 0x09293ac0 (a 
org.apache.xmlrpc.util.ThreadPool$Poolable)
   at 
org.apache.xmlrpc.util.ThreadPool$Poolable.access$100(ThreadPool.java:47)

   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:59)
   - locked 0x09293a50 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

XML-RPC-1 prio=6 tid=0x02d2f000 nid=0x26c in Object.wait() 
[0x03baf000..0x03bafb14]

  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   - waiting on 0x0928f800 (a 
org.apache.xmlrpc.util.ThreadPool$Poolable$1)

   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x0928f800 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

XML-RPC-0 prio=6 tid=0x02d3c800 nid=0x3d0 in Object.wait() 
[0x03b5f000..0x03b5fb94]

  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   - waiting on 0x0928e1e0 (a 
org.apache.xmlrpc.util.ThreadPool$Poolable$1)

   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x0928e1e0 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

XML-RPC Weblistener prio=6 tid=0x0309b400 nid=0x584 waiting for 
monitor entry [0x0340f000..0x0340fb94]

  java.lang.Thread.State: BLOCKED (on object monitor)
   at org.apache.xmlrpc.util.ThreadPool$Poolable.start(ThreadPool.java:107)
   - waiting to lock 0x09293a50 (a 
org.apache.xmlrpc.util.ThreadPool$Poolable$1)

   - locked 0x09293ac0 (a org.apache.xmlrpc.util.ThreadPool$Poolable)
   at org.apache.xmlrpc.util.ThreadPool.startTask(ThreadPool.java:168)
   - locked 0x091a3c60 (a org.apache.xmlrpc.util.ThreadPool)
   at org.apache.xmlrpc.webserver.WebServer.run(WebServer.java:338)
   at java.lang.Thread.run(Unknown Source)

  Locked ownable synchronizers:
   - None


Found one Java-level deadlock:
=
XML-RPC-2:
 waiting to lock monitor 0x030fd5bc (object 0x09293ac0, a 
org.apache.xmlrpc.util.ThreadPool$Poolable),

 which is held by XML-RPC Weblistener
XML-RPC Weblistener:
 waiting to lock monitor 0x030a6134 (object 0x09293a50, a 
org.apache.xmlrpc.util.ThreadPool$Poolable$1),

 which is held by XML-RPC-2

Java stack information for the threads listed above:
===
XML-RPC-2:
   at 
org.apache.xmlrpc.util.ThreadPool$Poolable.getTask(ThreadPool.java:99)
   - waiting to lock 0x09293ac0 (a 
org.apache.xmlrpc.util.ThreadPool$Poolable)
   at 
org.apache.xmlrpc.util.ThreadPool$Poolable.access$100(ThreadPool.java:47)

   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:59)
   - locked 0x09293a50 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)
XML-RPC Weblistener:
   at org.apache.xmlrpc.util.ThreadPool$Poolable.start(ThreadPool.java:107)
   - waiting to lock 0x09293a50 (a 
org.apache.xmlrpc.util.ThreadPool$Poolable$1)

   - locked 0x09293ac0 (a 

Re: Problem with XmlRpcClient.execute()

2009-05-09 Thread Jochen Wiedmann
Funny, looks like https://issues.apache.org/jira/browse/XMLRPC-168

Checkout and build the latest version from SVN.


On Sat, May 9, 2009 at 11:21 PM, Lars Schnoor lars.schn...@ifad.dk wrote:
 Hi Alan
 Now I have been able to recreate the problem and can post the stack traces.
 I have actually one client and one server on each machine, but in the
 example below the call from the client to the server does not return.
 *On the client side:*

 /XML-RPC-1 prio=6 tid=0x02bf1c00 nid=0xd70 in Object.wait()
 [0x03a7f000..0x03a7fd14]
  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x22f506b8 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

 XML-RPC-0 prio=6 tid=0x02c8a400 nid=0xb00 in Object.wait()
 [0x036df000..0x036dfb14]
  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x22f42870 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

 XML-RPC Weblistener prio=6 tid=0x03008800 nid=0x798 runnable
 [0x037df000..0x037dfb94]
  java.lang.Thread.State: RUNNABLE
   at java.net.PlainSocketImpl.socketAccept(Native Method)
   at java.net.PlainSocketImpl.accept(Unknown Source)
   - locked 0x22f13ec8 (a java.net.SocksSocketImpl)
   at java.net.ServerSocket.implAccept(Unknown Source)
   at java.net.ServerSocket.accept(Unknown Source)
   at org.apache.xmlrpc.webserver.WebServer.run(WebServer.java:326)
   at java.lang.Thread.run(Unknown Source)

  Locked ownable synchronizers:
   - None/

 *On the server side:*

 /XML-RPC-2 prio=6 tid=0x030e9400 nid=0xe64 waiting for monitor entry
 [0x035af000..0x035afa94]
  java.lang.Thread.State: BLOCKED (on object monitor)
   at org.apache.xmlrpc.util.ThreadPool$Poolable.getTask(ThreadPool.java:99)
   - waiting to lock 0x09293ac0 (a
 org.apache.xmlrpc.util.ThreadPool$Poolable)
   at
 org.apache.xmlrpc.util.ThreadPool$Poolable.access$100(ThreadPool.java:47)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:59)
   - locked 0x09293a50 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

 XML-RPC-1 prio=6 tid=0x02d2f000 nid=0x26c in Object.wait()
 [0x03baf000..0x03bafb14]
  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   - waiting on 0x0928f800 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)
   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x0928f800 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

 XML-RPC-0 prio=6 tid=0x02d3c800 nid=0x3d0 in Object.wait()
 [0x03b5f000..0x03b5fb94]
  java.lang.Thread.State: WAITING (on object monitor)
   at java.lang.Object.wait(Native Method)
   - waiting on 0x0928e1e0 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)
   at java.lang.Object.wait(Object.java:485)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:60)
   - locked 0x0928e1e0 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)

  Locked ownable synchronizers:
   - None

 XML-RPC Weblistener prio=6 tid=0x0309b400 nid=0x584 waiting for monitor
 entry [0x0340f000..0x0340fb94]
  java.lang.Thread.State: BLOCKED (on object monitor)
   at org.apache.xmlrpc.util.ThreadPool$Poolable.start(ThreadPool.java:107)
   - waiting to lock 0x09293a50 (a
 org.apache.xmlrpc.util.ThreadPool$Poolable$1)
   - locked 0x09293ac0 (a org.apache.xmlrpc.util.ThreadPool$Poolable)
   at org.apache.xmlrpc.util.ThreadPool.startTask(ThreadPool.java:168)
   - locked 0x091a3c60 (a org.apache.xmlrpc.util.ThreadPool)
   at org.apache.xmlrpc.webserver.WebServer.run(WebServer.java:338)
   at java.lang.Thread.run(Unknown Source)

  Locked ownable synchronizers:
   - None


 Found one Java-level deadlock:
 =
 XML-RPC-2:
  waiting to lock monitor 0x030fd5bc (object 0x09293ac0, a
 org.apache.xmlrpc.util.ThreadPool$Poolable),
  which is held by XML-RPC Weblistener
 XML-RPC Weblistener:
  waiting to lock monitor 0x030a6134 (object 0x09293a50, a
 org.apache.xmlrpc.util.ThreadPool$Poolable$1),
  which is held by XML-RPC-2

 Java stack information for the threads listed above:
 ===
 XML-RPC-2:
   at org.apache.xmlrpc.util.ThreadPool$Poolable.getTask(ThreadPool.java:99)
   - waiting to lock 0x09293ac0 (a
 org.apache.xmlrpc.util.ThreadPool$Poolable)
   at
 org.apache.xmlrpc.util.ThreadPool$Poolable.access$100(ThreadPool.java:47)
   at org.apache.xmlrpc.util.ThreadPool$Poolable$1.run(ThreadPool.java:59)
   - locked 0x09293a50 (a org.apache.xmlrpc.util.ThreadPool$Poolable$1)
 XML-RPC 

Re: Problem with XmlRpcClient.execute()

2009-05-09 Thread Alan Burlison

Jochen Wiedmann wrote:


Funny, looks like https://issues.apache.org/jira/browse/XMLRPC-168


Yes, the symptoms looked kinda similar, which I why I asked for the 
jstack output :-)


--
Alan Burlison
--