Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
3.1.4, 3.2.7
-
None
-
None
-
Linux, Apache 2.024 and unreleased Apache 2.0.x svn version.
Description
Input filters hang when mod_proxy is in use. Other behavior seen is infinite calls of the input filter function even though the data has already
been processed.
In Apache 2.0.24, this problem seems to be fundamental; I have no way to get rid of the hang, except perhaps in the case of an input filter that
does not change the size of the passed-through data.
In svn Apache, the problem goes away as soon as I remove the filter.flush() in apache.py's FilterDispatch handler. svn Apache does according to its changelog contain a fix to mod_proxy's handling of input filters.
For my application, use of mod_proxy is essential, as mod_python is essentially proxying another web server process.
Output filters do not seem to be affected by the presence of filter.flush(), and in fact filter.flush() is important to make sure memory use remains small when handling large amounts of data being outputted by the server.
All of this is rather hairy and I don't know quite what to blame; part of this seems indeed due to Apache itself, but perhaps not everything.