return NULL;
*/
- PROXY_THREAD_UNLOCK(balancer);
+ if ((rv = PROXY_THREAD_UNLOCK(balancer)) != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
+ "proxy: BALANCER: (%s). Unlock failed for find_best_worker()", balancer->name);
+ }
if (candidate == NULL) {
/* All the workers are in error state or disabled.
ap_log_error(APLOG_MARK, APLOG_ERR, 0, r->server,
"proxy: BALANCER: (%s). All workers are in error state for route (%s)",
(*balancer)->name, route);
- PROXY_THREAD_UNLOCK(*balancer);
+ if ((rv = PROXY_THREAD_UNLOCK(*balancer)) != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
+ "proxy: BALANCER: (%s). Unlock failed for pre_request",
+ (*balancer)->name);
+ }
return HTTP_SERVICE_UNAVAILABLE;
}
- PROXY_THREAD_UNLOCK(*balancer);
+ if ((rv = PROXY_THREAD_UNLOCK(*balancer)) != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
+ "proxy: BALANCER: (%s). Unlock failed for pre_request",
+ (*balancer)->name);
+ }
if (!*worker) {
runtime = find_best_worker(*balancer, r);
if (!runtime) {
/* TODO: placeholder for post_request actions
*/
- PROXY_THREAD_UNLOCK(balancer);
+ if ((rv = PROXY_THREAD_UNLOCK(balancer)) != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, rv, r->server,
+ "proxy: BALANCER: (%s). Unlock failed for post_request",
+ balancer->name);
+ }
ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, r->server,
"proxy_balancer_post_request for (%s)", balancer->name);
address_pool);
if (worker->is_address_reusable && !worker->cp->addr) {
worker->cp->addr = connect_addr;
- PROXY_THREAD_UNLOCK(worker);
+ if ((err = PROXY_THREAD_UNLOCK(worker)) != APR_SUCCESS) {
+ ap_log_error(APLOG_MARK, APLOG_ERR, err, r->server,
+ "proxy: FTP: unlock");
+ }
}
/*
* get all the possible IP addresses for the destname and loop through