On Mon, 9 Apr 2001, Graham Leggett wrote:
> Hi all,
>
> The HTTP proxy uses the HTTP_IN filter to read from the network. The
> proxy code seems to be working fine, however about 10% to 20% of
> requests fail with this error:
>
> [error] (9)Bad file descriptor: apr_bucket_read
>
> The error occurs part of the way through a read from the remote server,
> and sometimes results in a partially loaded graphic or page, or
> sometimes no graphic or page at all.
>
> The error is generated by this piece of code in ap_http_filter():
>
> e = APR_BRIGADE_FIRST(ctx->b);
> if ((rv = apr_bucket_read(e, &ignore, &len, mode)) != APR_SUCCESS) {
> /* probably APR_IS_EAGAIN(rv); socket state isn't correct;
> * remove log once we get this squared away */
> ap_log_error(APLOG_MARK, APLOG_ERR, rv, f->c->base_server,
> "apr_bucket_read");
> return rv;
> }
>
> The HTTP_IN filter is normally used for reading client requests off of
> the network. In theory, if this error exists in HTTP_IN it means that
> about 10% to 20% of client POST requests are likely to fail.
>
> Does this error ring any bells with anyone?
Sounds like your apr_socket_t is created with the wrong pool. If you are
dealing with keepalives, then you need to be sure that the socket is
created with the correct pool.
Ryan
_______________________________________________________________________________
Ryan Bloom [EMAIL PROTECTED]
406 29th St.
San Francisco, CA 94131
-------------------------------------------------------------------------------