httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject PR 53420 (Proxy plus EOS handling when calling ap_discard_request_body)
Date Fri, 01 Aug 2014 08:37:45 GMT
I investigated PR53420 
(https://issues.apache.org/bugzilla/show_bug.cgi?id=53420), see my last 
reply there.

Using proxy in combination with ProxyErrorOverride shows a hang until 
the proxy timeout fires.

The hang happens, when the proxy calls ap_discard_request_body to 
discard the origin server *response* body.

For 2.2 the call to ap_discard_request_body immediately gets a brigade 
with two buckets. The first bucket is the origin server response body, 
the second an EOS. For 2.4/trunk the call gets a brigade with one bucket 
- the origin server response body - then reads a second brigade, which 
times out and only then returns the EOS bucket.

Any hints how to proceed?

Reproduction for 2.4 and trunk is trivial:

Listen 8080
Listen 8081
<VirtualHost *:8080>
ProxyErrorOverride on
ProxyPass / http://localhost:8081/ connectiontimeout=5
</VirtualHost>

and retrieve http://localhost/8080/notexist

Regards,

Rainer

Mime
View raw message