On Sep 29, 2005, at 9:40 AM, Brian Akins wrote:
Mladen Turk wrote:
if (access_status != OK) {
if (access_status != HTTP_SERVICE_UNAVAILABLE)
return access_status;
else
goto cleanup;
}
I guess that makes sense. I just want to chatch the following cases:
No available workers - all in error or busy
worker failed - ie connect timeout
random weirdness - for whatever reason we are going to return
HTTP_BAD_GATEWAY
The goal is, if possible, in request_status, a developer may try to
"catch" the error so that the end user does not see it. In our
situation, for example, we would rather return a stale page rather
than a BAD GATEWAY.
The rub, as mentioned, is to ensure that when jumping to
cleanup, balancer is never non-NULL with a NULL
worker, so we need to check if that ever happens. I still think
it's safer to, in ap_proxy_pre_request, force *balancer
to NULL if we ever return something other than OK...