Line
Link Here
|
0 |
-- mod_proxy.c.orig Mon Feb 15 16:06:14 2016 |
0 |
++ mod_proxy.c Mon Feb 15 16:07:46 2016 |
Lines 1185-1190
Link Here
|
1185 |
worker->s->error_time = apr_time_now(); |
1185 |
worker->s->error_time = apr_time_now(); |
1186 |
} |
1186 |
} |
1187 |
} |
1187 |
} |
|
|
1188 |
else if (access_status == HTTP_GATEWAY_TIME_OUT) { |
1189 |
if (balancer && balancer->failontimeout) { |
1190 |
worker->s->status |= PROXY_WORKER_IN_ERROR; |
1191 |
worker->s->error_time = apr_time_now(); |
1192 |
} |
1193 |
} |
1188 |
else { |
1194 |
else { |
1189 |
/* Unrecoverable error. |
1195 |
/* Unrecoverable error. |
1190 |
* Return the origin status code to the client. |
1196 |
* Return the origin status code to the client. |
1191 |
-- mod_proxy_ajp.c.orig Mon Feb 15 15:04:10 2016 |
1197 |
++ mod_proxy_ajp.c Mon Feb 15 16:05:18 2016 |
Lines 193-198
Link Here
|
193 |
apr_off_t content_length = 0; |
193 |
apr_off_t content_length = 0; |
194 |
int original_status = r->status; |
194 |
int original_status = r->status; |
195 |
const char *original_status_line = r->status_line; |
195 |
const char *original_status_line = r->status_line; |
|
|
196 |
int is_timeout = 0; |
196 |
|
197 |
|
197 |
if (psf->io_buffer_size_set) |
198 |
if (psf->io_buffer_size_set) |
198 |
maxsize = psf->io_buffer_size; |
199 |
maxsize = psf->io_buffer_size; |
Lines 590-595
Link Here
|
590 |
status = ajp_read_header(conn->sock, r, maxsize, |
591 |
status = ajp_read_header(conn->sock, r, maxsize, |
591 |
(ajp_msg_t **)&(conn->data)); |
592 |
(ajp_msg_t **)&(conn->data)); |
592 |
if (status != APR_SUCCESS) { |
593 |
if (status != APR_SUCCESS) { |
|
|
594 |
if (APR_STATUS_IS_TIMEUP(status)) { |
595 |
is_timeout = 1; |
596 |
} |
593 |
backend_failed = 1; |
597 |
backend_failed = 1; |
594 |
ap_log_rerror(APLOG_MARK, APLOG_DEBUG, status, r, APLOGNO(00889) |
598 |
ap_log_rerror(APLOG_MARK, APLOG_DEBUG, status, r, APLOGNO(00889) |
595 |
"ajp_read_header failed"); |
599 |
"ajp_read_header failed"); |
Lines 675-681
Link Here
|
675 |
*/ |
679 |
*/ |
676 |
rv = HTTP_SERVICE_UNAVAILABLE; |
680 |
rv = HTTP_SERVICE_UNAVAILABLE; |
677 |
} else { |
681 |
} else { |
678 |
rv = HTTP_INTERNAL_SERVER_ERROR; |
682 |
if (is_timeout == 1) { |
|
|
683 |
rv = HTTP_GATEWAY_TIME_OUT; |
684 |
} else { |
685 |
rv = HTTP_INTERNAL_SERVER_ERROR; |
686 |
} |
679 |
} |
687 |
} |
680 |
} |
688 |
} |
681 |
else if (client_failed) { |
689 |
else if (client_failed) { |