On Wed, 2013-08-14 at 03:55 -0700, Rajeshwar Paani wrote:
> One of our applications makes use of Apache Http Client. I am troubleshooting 
> a scalability issue of the application. During a load test, I generated 
> thread dumps and see a lot of threads in the following state. I would like to 
> know if the thread is waiting for a response or if it has received the 
> response and parsing it. I also see that at times these are the long running 
> threads. 
> 
> "[STANDBY] ExecuteThread: '185' for queue: 'weblogic.kernel.Default 
> (self-tuning)'" daemon prio=10 tid=0x00002aaacddf0800 nid=0x5669 runnable 
> [0x0000000070eee000] java.lang.Thread.State: RUNNABLE at 
> java.net.SocketInputStream.socketRead0(Native Method) at 
> java.net.SocketInputStream.read(SocketInputStream.java:150) at 
> java.net.SocketInputStream.read(SocketInputStream.java:121) at 
> org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:166)
>  at 
> org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:90)
>  at 
> org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:281)
>  at 
> org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:92)
>  at 
> org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:62)
>  at 
> org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:254)
>  at
>  
> org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:289)
>  at 
> org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:252)
>  at 
> org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:191)
>  at 
> org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:300)
>  at 
> org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:127)
>  at 
> org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:712)
>  at 
> org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:517)
>  at 
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
>  at 
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
>  at
>  
> org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:784)
> 
> Regards,
> Rajeshwar


"[STANDBY] ExecuteThread: '185' for queue: 'weblogic.kernel.Default
(self-tuning)'" daemon prio=10 tid=0x00002aaacddf0800 nid=0x5669
runnable [0x0000000070eee000] java.lang.Thread.State: RUNNABLE at
java.net.SocketInputStream.socketRead0(Native Method) at
java.net.SocketInputStream.read(SocketInputStream.java:150)

As you see the thread is stuck inside a native method coming from
java.net.SocketInputStream. This basically means the thread is blocked
in an I/O operation awaiting incoming data.

Oleg




---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to