httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <traw...@attglobal.net>
Subject Re: cvs commit: httpd-2.0/server/mpm/worker worker.c
Date Wed, 19 Sep 2001 19:55:00 GMT
trawick@apache.org writes:


>   +++ worker.c	2001/09/19 18:47:31	1.26
>   @@ -659,7 +659,16 @@
>                    signal_workers();
>                }
>                if (csd != NULL) {
>   -                ap_queue_push(worker_queue, csd, ptrans);
>   +                rv = ap_queue_push(worker_queue, csd, ptrans);
>   +                if (rv) {
>   +                    /* trash the connection; we couldn't queue the connected
>   +                     * socket to a worker 
>   +                     */
>   +                    apr_socket_close(csd);
>   +                    ap_log_error(APLOG_MARK, APLOG_CRIT, 0, ap_server_conf,
>   +                                 "ap_queue_push failed with error code %d",
>   +                                 rv);

While playing with worker today I also had a call to ap_log_error()
for ap_queue_pop() failures, but I was immediately reminded of
experiences with my own similar MPM, which showed that there are false
wake-ups with glibc 2.1 on Linux.

For ap_queue_pop(), we could stand to have a call to ap_log_error()
when it fails with something besides FD_QUEUE_EINTR.

-- 
Jeff Trawick | trawick@attglobal.net | PGP public key at web site:
       http://www.geocities.com/SiliconValley/Park/9289/
             Born in Roswell... married an alien...

Mime
View raw message