hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sam Crawford <samcrawf...@gmail.com>
Subject Re: 4.1.2 http client Thread in WAITING state on getEntryBlocking
Date Mon, 26 Sep 2011 21:03:32 GMT
Yes, absolutely.

Thanks,

Sam


On 26 September 2011 21:57, Mohit Anchlia <mohitanchlia@gmail.com> wrote:
> Thanks! should it be read on http errors too? for eg: http code 400, 500 etc.
>
> On Mon, Sep 26, 2011 at 1:43 PM, Sam Crawford <samcrawford@gmail.com> wrote:
>> That's correct. You have to consume the entity before the connection
>> is released. See the documentation (section 1.1.5) at
>> http://hc.apache.org/httpcomponents-client-ga/tutorial/html/fundamentals.html#d4e72
>>
>>
>> On 26 September 2011 20:19, Mohit Anchlia <mohitanchlia@gmail.com> wrote:
>>> On Mon, Sep 26, 2011 at 12:06 PM, Oleg Kalnichevski <olegk@apache.org>
wrote:
>>>> On Mon, 2011-09-26 at 09:04 -0700, Mohit Anchlia wrote:
>>>>> I am using 4.1.2 and trying to figure out why my threads are all
>>>>> waiting on this block. I have this code:
>>>>>
>>>>
>>>> That's because your code is leaking connections.
>>>
>>> I just added this line and it resolved the issue.                  
                    \
>>> EntityUtils.toString(entity);
>>>
>>> Wondering if it's necessary to read from the entity otherwise it holds
>>> on to the connection.
>>>
>>>>
>>>> Oleg
>>>>
>>>>> Can someone please help?
>>>>>
>>>>>       static {
>>>>>               cm.setMaxTotal(NO_CONN*2);
>>>>>               cm.setDefaultMaxPerRoute(NO_CONN);
>>>>>       }
>>>>>
>>>>>       private static ThreadSafeClientConnManager cm = new
>>>>> ThreadSafeClientConnManager();
>>>>>
>>>>>       private static HttpClient httpclient = new DefaultHttpClient(cm);
>>>>>
>>>>>
>>>>>                       StringEntity stringEntity = new StringEntity(data,
HTTP.UTF_8);
>>>>>
>>>>>                       httpput.setEntity(stringEntity);
>>>>>
>>>>>                       HttpResponse response = httpclient.execute(httpput);
>>>>>
>>>>>
>>>>> "pool-1-thread-24" prio=10 tid=0x00002aaab4018000 nid=0x20df waiting
>>>>> on condition [0x00000000446f7000]
>>>>>    java.lang.Thread.State: WAITING (parking)
>>>>>         at sun.misc.Unsafe.park(Native Method)
>>>>>         - parking to wait for  <0x000000061d5866f0> (a
>>>>> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>>>>>         at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
>>>>>         at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987)
>>>>>         at org.apache.http.impl.conn.tsccm.WaitingThread.await(WaitingThread.java:158)
>>>>>         at org.apache.http.impl.conn.tsccm.ConnPoolByRoute.getEntryBlocking(ConnPoolByRoute.java:403)
>>>>>         at org.apache.http.impl.conn.tsccm.ConnPoolByRoute$1.getPoolEntry(ConnPoolByRoute.java:300)
>>>>>         at org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager$1.getConnection(ThreadSafeClientConnManager.java:224)
>>>>>         at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:401)
>>>>>         at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
>>>>>         at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:754)
>>>>>         at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:732)
>>>>>         at com.intuit.gluster.stress.ClientPost.doPut(ClientPost.java:135)
>>>>>         at com.intuit.gluster.stress.InsertHttpCommand.call(InsertHttpCommand.java:142)
>>>>>         at com.intuit.gluster.stress.InsertHttpCommand.call(InsertHttpCommand.java:1)
>>>>>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
>>>>>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>>>>>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>>>>>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>>>>>         at java.lang.Thread.run(Thread.java:662)
>>>>>
>>>>>
>>>>> jars in my classpath:
>>>>>
>>>>>
>>>>> ls -ltr jars
>>>>> total 1572
>>>>> -rwx------ 1 root root  60686 Jan 21  2011 commons-logging-1.1.1.jar
>>>>> -rwx------ 1 root root  58160 Jan 21  2011 commons-codec-1.4.jar
>>>>> -rwx------ 1 root root 181200 Jul 10 12:02 httpcore-4.1.2.jar
>>>>> -rwx------ 1 root root 261809 Jul 21 11:58 commons-lang-2.4.jar
>>>>> -rwx------ 1 root root  25496 Jul 21 11:58 slf4j-api-1.6.1.jar
>>>>> -rwx------ 1 root root 481535 Jul 21 11:58 log4j-1.2.16.jar
>>>>> -rwx------ 1 root root   9753 Jul 21 11:58 slf4j-log4j12-1.6.1.jar
>>>>> -rwx------ 1 root root 105799 Jul 29 22:54 httpclient-cache-4.1.2.jar
>>>>> -rwx------ 1 root root 352254 Jul 29 22:54 httpclient-4.1.2.jar
>>>>> -rwx------ 1 root root  26890 Jul 29 22:54 httpmime-4.1.2.jar
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>>
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
>> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
> For additional commands, e-mail: httpclient-users-help@hc.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-users-unsubscribe@hc.apache.org
For additional commands, e-mail: httpclient-users-help@hc.apache.org


Mime
View raw message