svn commit: r705882 - in /tomcat/connectors/trunk/jk/native/common: jk_ajp_common.c jk_msg_buff.c
Author: mturk Date: Sat Oct 18 06:35:57 2008 New Revision: 705882 URL: http://svn.apache.org/viewvc?rev=705882&view=rev Log: Make sure the message reply buffer is always reset before sending request. Do a real reset by clearing the message to zero, not just marking it's size Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c tomcat/connectors/trunk/jk/native/common/jk_msg_buff.c 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=705882&r1=705881&r2=705882&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sat Oct 18 06:35:57 2008 @@ -2159,7 +2159,6 @@ JK_TRACE_EXIT(l); return JK_SERVER_ERROR; } -jk_b_reset(op->reply); op->post = jk_b_new(&(p->pool)); if (!op->post) { @@ -2211,6 +2210,9 @@ aw->s->max_busy = aw->s->busy; retry_interval = p->worker->retry_interval; for (i = 0; i < aw->retries; i++) { +/* Reset reply message buffer for each retry */ +jk_b_reset(op->reply); + /* * ajp_send_request() already locally handles * reconnecting and broken connection detection. Modified: tomcat/connectors/trunk/jk/native/common/jk_msg_buff.c URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_msg_buff.c?rev=705882&r1=705881&r2=705882&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_msg_buff.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_msg_buff.c Sat Oct 18 06:35:57 2008 @@ -40,6 +40,10 @@ { msg->len = 4; msg->pos = 4; +if (msg->buf && msg->maxlen) { +/* Clear the message buffer */ +memset(msg->buf, 0, msg->maxlen); +} } int jk_b_append_long(jk_msg_buf_t *msg, unsigned long val) @@ -105,7 +109,7 @@ if (!msg) { return NULL; } - +memset(msg, 0, sizeof(jk_msg_buf_t)); msg->pool = p; return msg; - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r705888 - /tomcat/connectors/trunk/jk/native/common/jk_connect.c
Author: mturk Date: Sat Oct 18 07:40:10 2008 New Revision: 705888 URL: http://svn.apache.org/viewvc?rev=705888&view=rev Log: Can we have socket error, and errno==0?. Well OS is unknown and strange territory Modified: tomcat/connectors/trunk/jk/native/common/jk_connect.c Modified: tomcat/connectors/trunk/jk/native/common/jk_connect.c URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_connect.c?rev=705888&r1=705887&r2=705888&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_connect.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_connect.c Sat Oct 18 07:40:10 2008 @@ -809,7 +809,8 @@ if (JK_IS_SOCKET_ERROR(rd)) { jk_shutdown_socket(sd, l); JK_TRACE_EXIT(l); -return (errno > 0) ? -errno : errno; +rd = (errno > 0) ? -errno : errno +return (rd == 0) ? JK_SOCKET_EOF : rd; } else if (rd == 0) { jk_shutdown_socket(sd, l); - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r705889 - /tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
Author: mturk Date: Sat Oct 18 08:08:22 2008 New Revision: 705889 URL: http://svn.apache.org/viewvc?rev=705889&view=rev Log: Check if backend send AJP13_SEND_HEADERS more then once. Mark that as protocol error Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c 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=705889&r1=705888&r2=705889&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sat Oct 18 08:08:22 2008 @@ -1958,7 +1958,19 @@ return JK_TRUE; } else if (JK_AJP13_SEND_HEADERS == rc) { -headeratclient = JK_TRUE; +if (headeratclient == JK_FALSE) +headeratclient = JK_TRUE; +else { +/* Backend send headers twice? + * This is protocol violation + */ +jk_log(l, JK_LOG_ERROR, + "(%s) Tomcat already send headers", +p->worker->name); +op->recoverable = JK_FALSE; +JK_TRACE_EXIT(l); +return JK_FALSE; +} } else if (JK_STATUS_ERROR == rc || JK_STATUS_FATAL_ERROR == rc) { jk_log(l, JK_LOG_INFO, - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
[g...@vmgump]: Project jakarta-tomcat-jk-native (in module jakarta-tomcat-connectors) failed
To whom it may engage... This is an automated request, but not an unsolicited one. For more information please visit http://gump.apache.org/nagged.html, and/or contact the folk at [EMAIL PROTECTED] Project jakarta-tomcat-jk-native has an issue affecting its community integration. This issue affects 1 projects. The current state of this project is 'Failed', with reason 'Build Failed'. For reference only, the following projects are affected by this: - jakarta-tomcat-jk-native : Connectors to various web servers Full details are available at: http://vmgump.apache.org/gump/public/jakarta-tomcat-connectors/jakarta-tomcat-jk-native/index.html That said, some information snippets are provided here. The following annotations (debug/informational/warning/error messages) were provided: -INFO- Failed with reason build failed The following work was performed: http://vmgump.apache.org/gump/public/jakarta-tomcat-connectors/jakarta-tomcat-jk-native/gump_work/build_jakarta-tomcat-connectors_jakarta-tomcat-jk-native.html Work Name: build_jakarta-tomcat-connectors_jakarta-tomcat-jk-native (Type: Build) Work ended in a state of : Failed Elapsed: 3 secs Command Line: make [Working Directory: /srv/gump/public/workspace/jakarta-tomcat-connectors/jk/native] - Making all in common make[1]: Entering directory `/srv/gump/public/workspace/jakarta-tomcat-connectors/jk/native/common' /srv/gump/public/workspace/apr/dest-18102008/build-1/libtool --silent --mode=compile ccache gcc -I/srv/gump/public/workspace/apache-httpd/dest-18102008/include -g -O2 -g -O2 -pthread -DHAVE_APR -I/srv/gump/public/workspace/apr/dest-18102008/include/apr-1 -I/srv/gump/public/workspace/apr-util/dest-18102008/include/apr-1 -g -O2 -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I /usr/lib/jvm/java-1.5.0-sun/include -I /usr/lib/jvm/java-1.5.0-sun/include/ -c jk_ajp12_worker.c -o jk_ajp12_worker.lo /srv/gump/public/workspace/apr/dest-18102008/build-1/libtool --silent --mode=compile ccache gcc -I/srv/gump/public/workspace/apache-httpd/dest-18102008/include -g -O2 -g -O2 -pthread -DHAVE_APR -I/srv/gump/public/workspace/apr/dest-18102008/include/apr-1 -I/srv/gump/public/workspace/apr-util/dest-18102008/include/apr-1 -g -O2 -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I /usr/lib/jvm/java-1.5.0-sun/include -I /usr/lib/jvm/java-1.5.0-sun/include/ -c jk_connect.c -o jk_connect.lo jk_connect.c: In function 'jk_tcp_socket_recvfull': jk_connect.c:813: error: expected ';' before 'return' make[1]: *** [jk_connect.lo] Error 1 make[1]: Leaving directory `/srv/gump/public/workspace/jakarta-tomcat-connectors/jk/native/common' make: *** [all-recursive] Error 1 - To subscribe to this information via syndicated feeds: - RSS: http://vmgump.apache.org/gump/public/jakarta-tomcat-connectors/jakarta-tomcat-jk-native/rss.xml - Atom: http://vmgump.apache.org/gump/public/jakarta-tomcat-connectors/jakarta-tomcat-jk-native/atom.xml == Gump Tracking Only === Produced by Gump version 2.3. Gump Run 11001618102008, vmgump:vmgump-public:11001618102008 Gump E-mail Identifier (unique within run) #2. -- Apache Gump http://gump.apache.org/ [Instance: vmgump] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r705959 - /tomcat/connectors/trunk/jk/native/common/jk_connect.c
Author: mturk Date: Sat Oct 18 22:35:54 2008 New Revision: 705959 URL: http://svn.apache.org/viewvc?rev=705959&view=rev Log: Fix typo Modified: tomcat/connectors/trunk/jk/native/common/jk_connect.c Modified: tomcat/connectors/trunk/jk/native/common/jk_connect.c URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_connect.c?rev=705959&r1=705958&r2=705959&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_connect.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_connect.c Sat Oct 18 22:35:54 2008 @@ -809,7 +809,7 @@ if (JK_IS_SOCKET_ERROR(rd)) { jk_shutdown_socket(sd, l); JK_TRACE_EXIT(l); -rd = (errno > 0) ? -errno : errno +rd = (errno > 0) ? -errno : errno; return (rd == 0) ? JK_SOCKET_EOF : rd; } else if (rd == 0) { - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r705963 - /tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
Author: mturk Date: Sat Oct 18 23:24:37 2008 New Revision: 705963 URL: http://svn.apache.org/viewvc?rev=705963&view=rev Log: Don't put the worker in error state in case of client errors. Although the backend connection can be closed and no more connections exist, the worker is not in error state. It should be able to reconnect on next request Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c 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=705963&r1=705962&r2=705963&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sat Oct 18 23:24:37 2008 @@ -2060,13 +2060,14 @@ aw->s->transferred += e->wr; if (aw->s->busy) aw->s->busy--; -if (rc != JK_TRUE) { +if (rc == JK_TRUE || rc == JK_CLIENT_ERROR) { +aw->s->state = JK_AJP_STATE_OK; +} +else { aw->s->state = JK_AJP_STATE_ERROR; aw->s->errors++; aw->s->error_time = time(NULL); } -else -aw->s->state = JK_AJP_STATE_OK; } /* @@ -2396,8 +2397,6 @@ "(%s) connecting to tomcat failed.", aw->name); -/* XXX: Do we need to fix rc or is_error before returning? */ - ajp_update_stats(e, aw, rc, l); JK_TRACE_EXIT(l); return rc; - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
svn commit: r705964 - /tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
Author: mturk Date: Sat Oct 18 23:29:07 2008 New Revision: 705964 URL: http://svn.apache.org/viewvc?rev=705964&view=rev Log: Also update client_errors counter in case of client errors Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c 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=705964&r1=705963&r2=705964&view=diff == --- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original) +++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sat Oct 18 23:29:07 2008 @@ -2060,9 +2060,13 @@ aw->s->transferred += e->wr; if (aw->s->busy) aw->s->busy--; -if (rc == JK_TRUE || rc == JK_CLIENT_ERROR) { +if (rc == JK_TRUE) { aw->s->state = JK_AJP_STATE_OK; } +else if (rc == JK_CLIENT_ERROR) { +aw->s->state = JK_AJP_STATE_OK; +aw->s->client_errors++; +} else { aw->s->state = JK_AJP_STATE_ERROR; aw->s->errors++; - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]