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 2008/09/21 18:19:31 UTC
svn commit: r697534 - in /tomcat/connectors/trunk/jk/native/common:
jk_ajp_common.c jk_util.c jk_util.h
Author: mturk
Date: Sun Sep 21 09:19:31 2008
New Revision: 697534
URL: http://svn.apache.org/viewvc?rev=697534&view=rev
Log:
Add ping_timeout that is used for connection_keepalive and as default value for connect and prepost timeouts if boolean values are used for them
Modified:
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
tomcat/connectors/trunk/jk/native/common/jk_util.c
tomcat/connectors/trunk/jk/native/common/jk_util.h
Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c?rev=697534&r1=697533&r2=697534&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sun Sep 21 09:19:31 2008
@@ -2476,18 +2476,21 @@
jk_get_worker_cache_timeout(props, p->name,
AJP_DEF_CACHE_TIMEOUT);
+ p->ping_timeout =
+ jk_get_worker_ping_timeout(props, p->name, 0);
+
p->connect_timeout =
jk_get_worker_connect_timeout(props, p->name,
- AJP_DEF_CONNECT_TIMEOUT);
+ p->ping_timeout);
+
+ p->prepost_timeout =
+ jk_get_worker_prepost_timeout(props, p->name,
+ p->ping_timeout);
p->reply_timeout =
jk_get_worker_reply_timeout(props, p->name,
AJP_DEF_REPLY_TIMEOUT);
- p->prepost_timeout =
- jk_get_worker_prepost_timeout(props, p->name,
- AJP_DEF_PREPOST_TIMEOUT);
-
p->connection_keepalive =
jk_get_worker_connection_keepalive(props, p->name, 0);
@@ -2543,6 +2546,10 @@
p->cache_timeout);
jk_log(l, JK_LOG_DEBUG,
+ "ping timeout: %d",
+ p->ping_timeout);
+
+ jk_log(l, JK_LOG_DEBUG,
"connect timeout: %d",
p->connect_timeout);
@@ -2880,7 +2887,7 @@
}
}
/* Handle worker connection keepalive */
- if (aw->connection_keepalive > 0 && aw->prepost_timeout > 0) {
+ if (aw->connection_keepalive > 0 && aw->ping_timeout > 0) {
for (i = (int)aw->ep_cache_sz - 1; i >= 0; i--) {
/* Skip the closed sockets */
if (aw->ep_cache[i] && IS_VALID_SOCKET(aw->ep_cache[i]->sd)) {
@@ -2890,7 +2897,7 @@
/* handle cping/cpong.
*/
if (ajp_handle_cping_cpong(aw->ep_cache[i],
- aw->prepost_timeout, l) == JK_FALSE) {
+ aw->ping_timeout, l) == JK_FALSE) {
jk_log(l, JK_LOG_INFO,
"(%s) failed sending request, "
"socket %d keepalive cping/cpong "
Modified: tomcat/connectors/trunk/jk/native/common/jk_util.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_util.c?rev=697534&r1=697533&r2=697534&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_util.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_util.c Sun Sep 21 09:19:31 2008
@@ -57,6 +57,7 @@
#define PREPOST_TIMEOUT_OF_WORKER ("prepost_timeout")
#define REPLY_TIMEOUT_OF_WORKER ("reply_timeout")
#define SOCKET_TIMEOUT_OF_WORKER ("socket_timeout")
+#define PING_TIMEOUT_OF_WORKER ("ping_timeout")
#define SOCKET_BUFFER_OF_WORKER ("socket_buffer")
#define SOCKET_KEEPALIVE_OF_WORKER ("socket_keepalive")
#define CONNECTION_KEEPALIVE_OF_WORKER ("connection_keepalive")
@@ -170,6 +171,7 @@
RECOVERY_OPTS_OF_WORKER,
CONNECT_TIMEOUT_OF_WORKER,
PREPOST_TIMEOUT_OF_WORKER,
+ PING_TIMEOUT_OF_WORKER,
REPLY_TIMEOUT_OF_WORKER,
SOCKET_TIMEOUT_OF_WORKER,
SOCKET_BUFFER_OF_WORKER,
@@ -254,6 +256,7 @@
RECOVERY_OPTS_OF_WORKER,
CONNECT_TIMEOUT_OF_WORKER,
PREPOST_TIMEOUT_OF_WORKER,
+ PING_TIMEOUT_OF_WORKER,
REPLY_TIMEOUT_OF_WORKER,
SOCKET_TIMEOUT_OF_WORKER,
SOCKET_BUFFER_OF_WORKER,
@@ -983,19 +986,23 @@
int jk_get_worker_connect_timeout(jk_map_t *m, const char *wname, int def)
{
char buf[1024];
+ int rv;
if (!m || !wname) {
return -1;
}
MAKE_WORKER_PARAM(CONNECT_TIMEOUT_OF_WORKER);
-
- return jk_map_get_int(m, buf, def);
+ if ((rv = jk_map_get_bool(m, buf, -1)) == -1)
+ return jk_map_get_int(m, buf, AJP_DEF_CONNECT_TIMEOUT);
+ else
+ return def;
}
int jk_get_worker_prepost_timeout(jk_map_t *m, const char *wname, int def)
{
char buf[1024];
+ int rv;
if (!m || !wname) {
return -1;
@@ -1003,6 +1010,22 @@
MAKE_WORKER_PARAM(PREPOST_TIMEOUT_OF_WORKER);
+ if ((rv = jk_map_get_bool(m, buf, -1)) == -1)
+ return jk_map_get_int(m, buf, AJP_DEF_PREPOST_TIMEOUT);
+ else
+ return def;
+}
+
+int jk_get_worker_ping_timeout(jk_map_t *m, const char *wname, int def)
+{
+ char buf[1024];
+
+ if (!m || !wname) {
+ return -1;
+ }
+
+ MAKE_WORKER_PARAM(PING_TIMEOUT_OF_WORKER);
+
return jk_map_get_int(m, buf, def);
}
Modified: tomcat/connectors/trunk/jk/native/common/jk_util.h
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_util.h?rev=697534&r1=697533&r2=697534&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_util.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_util.h Sun Sep 21 09:19:31 2008
@@ -86,6 +86,8 @@
int jk_get_worker_prepost_timeout(jk_map_t *m, const char *wname, int def);
+int jk_get_worker_ping_timeout(jk_map_t *m, const char *wname, int def);
+
int jk_get_worker_recycle_timeout(jk_map_t *m, const char *wname, int def);
int jk_get_worker_recover_timeout(jk_map_t *m, const char *wname, int def);
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org