You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by mt...@apache.org on 2005/05/14 12:08:23 UTC
cvs commit: jakarta-tomcat-connectors/jk/native/apache-2.0 mod_jk.c
mturk 2005/05/14 03:08:23
Modified: jk/native/apache-1.3 mod_jk.c
jk/native/apache-2.0 mod_jk.c
Log:
Call endpoint->done after endpoint->service, because reading dummy
data might block and enpoint is unavailable althought it should.
Revision Changes Path
1.81 +3 -2 jakarta-tomcat-connectors/jk/native/apache-1.3/mod_jk.c
Index: mod_jk.c
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/apache-1.3/mod_jk.c,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -r1.80 -r1.81
--- mod_jk.c 7 May 2005 08:15:47 -0000 1.80
+++ mod_jk.c 14 May 2005 10:08:23 -0000 1.81
@@ -1756,6 +1756,7 @@
jk_endpoint_t *end = NULL;
if (worker->get_endpoint(worker, &end, l)) {
rc = end->service(end, &s, l, &is_error);
+ end->done(&end, l);
if (s.content_read < s.content_length ||
(s.is_chunked && !s.no_more_chunks)) {
@@ -1773,7 +1774,6 @@
}
}
}
- end->done(&end, l);
}
#ifndef NO_GETTIMEOFDAY
if (conf->format != NULL) {
@@ -1797,6 +1797,7 @@
jk_log(l, JK_LOG_ERROR, "Could not init service"
" for worker=%s",
worker_name);
+ jk_close_pool(&private_data.p);
JK_TRACE_EXIT(l);
return is_error;
}
1.144 +3 -3 jakarta-tomcat-connectors/jk/native/apache-2.0/mod_jk.c
Index: mod_jk.c
===================================================================
RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/apache-2.0/mod_jk.c,v
retrieving revision 1.143
retrieving revision 1.144
diff -u -r1.143 -r1.144
--- mod_jk.c 7 May 2005 08:15:47 -0000 1.143
+++ mod_jk.c 14 May 2005 10:08:23 -0000 1.144
@@ -1895,7 +1895,7 @@
if (worker->get_endpoint(worker, &end, xconf->log)) {
rc = end->service(end, &s, xconf->log,
&is_error);
-
+ end->done(&end, xconf->log);
if (s.content_read < s.content_length ||
(s.is_chunked && !s.no_more_chunks)) {
@@ -1913,7 +1913,6 @@
}
}
}
- end->done(&end, xconf->log);
}
else { /* this means we couldn't get an endpoint */
jk_log(xconf->log, JK_LOG_ERROR, "Could not get endpoint"
@@ -1926,6 +1925,7 @@
jk_log(xconf->log, JK_LOG_ERROR, "Could not init service"
" for worker=%s",
worker_name);
+ jk_close_pool(&private_data.p);
JK_TRACE_EXIT(xconf->log);
return HTTP_INTERNAL_SERVER_ERROR;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org