httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dimitri Rebrikov <dimitri.rebri...@t-systems.com>
Subject Re: ap_get_client_block blocks in Apache 1.3
Date Wed, 09 Apr 2003 14:37:04 GMT
Glenn wrote:
> I concur: extremely broken.
> 
> Notwithstanding that, mod_jk should be setting ap_hard_timeout()
> (or ap_soft_timeout()) before calling ap_get_client_block(), just
> like mod_cgi does.  Anything that might block indefinitely should
> have an alarm set around it.

After reading Apache-API-Doc i had the opinion that ap_get_client_block
self take care about non-blocking read.

There is a global "Timeout" parameter in httpd.conf for receives
and sends. Would it not be more consequently if ap_get_client_block take
a use of this parameter.

> 
> (But please do not put an alarm in ap_get_client_block();
> I set the socket to nonblocking when the input is not chunked
> and it would really bite to have the unnecessary alarm overhead.)

We have tried to solve our problems with putting a standard check
for nonblocking read (i.e. select...) just before ap_read call
in the buff_read function (buff.c). That works but since we can not
look through the all apache source (f.e. we have seen that in fact
all apache sockets be set in non-blocking mode just after creation
and we had no idea why they nevertheless blocks) we have not sureness
that was accurate and we will not get substantial problems under other
circumstances.

Regards,
Dimitri


Mime
View raw message