You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Eric Covener <co...@gmail.com> on 2008/09/02 03:29:25 UTC
Re: svn commit: r684351 - in /httpd/httpd/trunk: CHANGES modules/proxy/mod_proxy_http.c modules/proxy/proxy_util.c
On Sat, Aug 9, 2008 at 5:33 PM, <rp...@apache.org> wrote:
>
> + /*
> + * In the case that we are handling a reverse proxy connection and this
> + * is not a request that is coming over an already kept alive connection
> + * with the client, do NOT reuse the connection to the backend, because
> + * we cannot forward a failure to the client in this case as the client
> + * does NOT expects this in this situation.
> + * Yes, this creates a performance penalty.
> + */
> + if ((r->proxyreq == PROXYREQ_REVERSE) && (!c->keepalives)
> + && (apr_table_get(r->subprocess_env, "proxy-initial-not-pooled"))) {
> + backend->close = 1;
> + }
> +
Reviewing backport at a high level, am I following correctly?
"forward a failure" here is closing the TCP connection to the client
in response to a presumed keepalive timeout (or crash) at the origin
server, and the browser doesn't go into the same recovery if we do
this on the initial request.
--
Eric Covener
covener@gmail.com
Re: svn commit: r684351 - in /httpd/httpd/trunk: CHANGES modules/proxy/mod_proxy_http.c
modules/proxy/proxy_util.c
Posted by Ruediger Pluem <rp...@apache.org>.
On 09/02/2008 03:29 AM, Eric Covener wrote:
> On Sat, Aug 9, 2008 at 5:33 PM, <rp...@apache.org> wrote:
>> + /*
>> + * In the case that we are handling a reverse proxy connection and this
>> + * is not a request that is coming over an already kept alive connection
>> + * with the client, do NOT reuse the connection to the backend, because
>> + * we cannot forward a failure to the client in this case as the client
>> + * does NOT expects this in this situation.
>> + * Yes, this creates a performance penalty.
>> + */
>> + if ((r->proxyreq == PROXYREQ_REVERSE) && (!c->keepalives)
>> + && (apr_table_get(r->subprocess_env, "proxy-initial-not-pooled"))) {
>> + backend->close = 1;
>> + }
>> +
>
> Reviewing backport at a high level, am I following correctly?
> "forward a failure" here is closing the TCP connection to the client
> in response to a presumed keepalive timeout (or crash) at the origin
> server, and the browser doesn't go into the same recovery if we do
> this on the initial request.
>
Correct.
Regards
RĂ¼diger