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?

Regards,
Graham
-- 
-----------------------------------------
[EMAIL PROTECTED]                "There's a moon
                                        over Bourbon Street
                                                tonight..."

Reply via email to