You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by bu...@apache.org on 2005/06/16 11:20:42 UTC

DO NOT REPLY [Bug 35383] - HttpMethod abort does not cancel immediately if HttpClient executeMethod hangs on socket opening

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG�
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=35383>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND�
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=35383





------- Additional Comments From bchevill.ml@gmail.com  2005-06-16 11:20 -------
First mail to httpclient-user list
Date: 15 juin 2005 12:08
Objet: Abort HttpMethod hangs due to bad proxy config
Related to File MethodAbortTest.java and MethodAbortTest.log
--------------------------------------------------------------

Hello,

I use HttpClient in my application to download description file. I
work on ensuring that if the application gets closed, everything stop
as fast as possible.

I'm getting problem with this: as many companies network, http request
get out through an http proxy. If I configure correctly the proxy
settings, and if I try to abort a GetMethod, the connection is
immediately stopped, no problem.
Now if I don't configure the proxy settings, the abort method does not
work, and my application hangs until timeout.
As my application will be deployed on many networks on which I cannot
be sure of the correct settings, I cannot accept that the application
hangs until timeout.

For better understanding, here is the unit case I'm using to test it
(source code at the end of this email):
There is two thread:
- The main thread that starts the second one, sleeps for 3 seconds
then aborts the second one.
- The GetMethod thread that execute the GetMethod on a dummy site
(http://test.dyndns.org does not work for me) that do not reply and
timeouts in 10 seconds.

Preliminary for testing:
You must be on a network with a proxy. Configure the proxy settings at
the beginning of the class.

What do the test:
It just gets http://test.dyndns.org

Expected result:
- http://test.dyndns.org does not reply correctly
- so the execute wait for 10 seconds,
- and the main method abort the GetMethod after only 3 seconds
- So the application stops just after the abort and don't wait for 10 seconds.

1st test : with proxy settings.
- uncomment the line "
client.getHostConfiguration().setProxy(PROXY_HOST, PROXY_PORT);"
- Compile and start the class

Result:
- The application stops correctly in 3 seconds (just after the abort).

2nd test : without proxy settings.
- comment the line "
client.getHostConfiguration().setProxy(PROXY_HOST, PROXY_PORT);"
- Compile and start the class

Result:
- the abort method is executed in 3 seconds
- BUT the execute method still hangs until the end of the 10 seconds timeout.

Do anybody can produce the same type of acting?
See below my test class and logs.

Thanks in advance

Benjamin Chevillon
France T�l�com R&D

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

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