Justin Erenkrantz wrote:

The problem is that there is no reliable way to determine if there is more data in the input filters without actually invoking a read.

that sucks IMO, but it does sounds like how the code works today. We do socket read() syscalls during the MODE_EATCRLF calls that are almost always unproductive. They could be optimized away. I don't believe 1.3 does these extra read()s.


Connection-level filters like mod_ssl would have to be rewritten to be async.

or to simply report whether they held on to any data.

SPECULATIVE with APR_NONBLOCK_READ will come the closest to achieving the goal though. However, I expect mod_ssl isn't going to work quite right with non-blocking reads.

Perhaps we could disable the use of the event thread when are filters like mod_ssl for now, and see what we can do about true pipelining for non-ssl.


Greg



Reply via email to