From: Jim Jagielski Date: Fri, 8 Dec 2006 21:26:40 +0000 (+0000) Subject: Log when the lock fails. X-Git-Tag: 2.3.0~1981 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=792dfe200b49b039032cb8a81f572213f32cd3a5;p=thirdparty%2Fapache%2Fhttpd.git Log when the lock fails. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@484787 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/proxy/mod_proxy_balancer.c b/modules/proxy/mod_proxy_balancer.c index 64f79ba547d..d7b1e629846 100644 --- a/modules/proxy/mod_proxy_balancer.c +++ b/modules/proxy/mod_proxy_balancer.c @@ -287,9 +287,13 @@ static proxy_worker *find_best_worker(proxy_balancer *balancer, request_rec *r) { proxy_worker *candidate = NULL; + apr_status_t rv; - if (PROXY_THREAD_LOCK(balancer) != APR_SUCCESS) + if ((rv = PROXY_THREAD_LOCK(balancer)) != APR_SUCCESS) { + ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server, + "proxy: BALANCER: (%s). Lock failed for find_best_worker()", balancer->name); return NULL; + } candidate = (*balancer->lbmethod->finder)(balancer, r); @@ -413,7 +417,7 @@ static int proxy_balancer_pre_request(proxy_worker **worker, */ if ((rv = PROXY_THREAD_LOCK(*balancer)) != APR_SUCCESS) { ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server, - "proxy: BALANCER: (%s). Lock", + "proxy: BALANCER: (%s). Lock failed for pre_request", (*balancer)->name); return DECLINED; } @@ -523,7 +527,8 @@ static int proxy_balancer_post_request(proxy_worker *worker, if ((rv = PROXY_THREAD_LOCK(balancer)) != APR_SUCCESS) { ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server, - "proxy: BALANCER: lock"); + "proxy: BALANCER: (%s). Lock failed for post_request", + balancer->name); return HTTP_INTERNAL_SERVER_ERROR; } /* TODO: calculate the bytes transferred