Bug 45445 - Connection Timeout vs. Request Timeout in reverse balanced proxies
Summary: Connection Timeout vs. Request Timeout in reverse balanced proxies
Status: RESOLVED FIXED
Alias: None
Product: Apache httpd-2
Classification: Unclassified
Component: mod_proxy_balancer (show other bugs)
Version: 2.2.6
Hardware: PC Linux
: P2 regression with 1 vote (vote)
Target Milestone: ---
Assignee: Apache HTTPD Bugs Mailing List
URL:
Keywords: FixedInTrunk
: 44882 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-07-21 02:57 UTC by Federico Mennite
Modified: 2018-02-25 21:06 UTC (History)
1 user (show)



Attachments
Allow request timeout to be set separate from connection timeout for proxies (1.61 KB, patch)
2008-07-25 08:28 UTC, rahul
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Federico Mennite 2008-07-21 02:57:54 UTC
Up to the release of apache 2.2.4 the 'timeout' parameter of the BalancerMember directive would affect only the connection timeout to the backend servers. This allowed to set reasonably small timeout values(let's say 1 or 2 seconds) in a scenario where the balancer and the backends would sit in the same LAN.
Starting from apache 2.2.6, it seems that the timeout value also affects the backend request completion timeout.

Unfortunately some of our backend requests may take up to 10s to complete.
Increasing the timeout value to 15 seconds causes an annoying 'stall' behavior when one of the backend servers becomes completely unreachable (e.g: power failure).

I think it definitively makes sense to have both timeouts configurable separately.
Comment 1 rahul 2008-07-25 08:28:02 UTC
Created attachment 22318 [details]
Allow request timeout to be set separate from connection timeout for proxies

This is used thus

ProxySet timeout=30 requesttimeout=5

the connection timeout is set to 30, and the timeout for socket io is set to 5
Comment 2 Ruediger Pluem 2008-08-09 13:57:22 UTC
Committed a slightly modified version of the patch as r684341 (http://svn.apache.org/viewvc?rev=684341&view=rev) to trunk. It introduces a 'connectiontimeout' that sets the timeout for the connect call with 'timeout' being the default.
Comment 3 Federico Mennite 2008-08-19 05:09:34 UTC
I successfully tested the changes from trunk on 2.2.9 in my environment.
Nice!


Comment 4 Ruediger Pluem 2008-10-15 12:58:11 UTC
Backported to 2.2.10
Comment 5 Michael Haas 2009-10-28 14:17:57 UTC
*** Bug 44882 has been marked as a duplicate of this bug. ***
Comment 6 Rainer Jung 2018-02-25 21:06:19 UTC
Undo spam change