svn commit: r611588 - /tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 08:16:28 2008
New Revision: 611588

URL: http://svn.apache.org/viewvc?rev=611588&view=rev
Log:
Update changelog.

Modified:
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml

Modified: tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml?rev=611588&r1=611587&r2=611588&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml Sun Jan 13 
08:16:28 2008
@@ -44,6 +44,13 @@
   
 
   
+Status: Only sync shm worker config values of the workers
+for which we changed values. (rjung)
+  
+  
+Status: Set lb_factor instead of distance. (rjung)
+  
+  
 Status: Minor layout changes, use drop down instead of multiple
 text links. (rjung)
   



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611589 - in /tomcat/connectors/trunk/jk: native/common/jk_ajp13_worker.c native/common/jk_ajp14_worker.c native/common/jk_ajp_common.c native/common/jk_ajp_common.h xdocs/miscellaneous/ch

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 08:18:59 2008
New Revision: 611589

URL: http://svn.apache.org/viewvc?rev=611589&view=rev
Log:
Refactor ajp13/ajp14 factories, move common parts into ajp_factory.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_ajp13_worker.c
tomcat/connectors/trunk/jk/native/common/jk_ajp14_worker.c
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.h
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml

Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp13_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp13_worker.c?rev=611589&r1=611588&r2=611589&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp13_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp13_worker.c Sun Jan 13 
08:18:59 2008
@@ -78,38 +78,17 @@
 ajp_worker_t *aw;
 
 JK_TRACE_ENTER(l);
-if (name == NULL || w == NULL) {
-JK_LOG_NULL_PARAMS(l);
-JK_TRACE_EXIT(l);
+if (ajp_worker_factory(w, name, l) == JK_FALSE)
 return 0;
-}
 
-aw = (ajp_worker_t *) calloc(1, sizeof(ajp_worker_t));
-if (!aw) {
-jk_log(l, JK_LOG_ERROR,
-   "malloc of private_data failed");
-JK_TRACE_EXIT(l);
-return 0;
-}
-
-aw->name = name;
+aw = (*w)->worker_private;
 aw->proto = AJP13_PROTO;
-aw->login = NULL;
-
-aw->ep_cache_sz = 0;
-aw->ep_cache = NULL;
-aw->connect_retry_attempts = AJP_DEF_RETRY_ATTEMPTS;
-aw->worker.worker_private = aw;
 
 aw->worker.validate = validate;
 aw->worker.init = init;
 aw->worker.get_endpoint = get_endpoint;
 aw->worker.destroy = destroy;
-aw->worker.maintain = ajp_maintain;
-
-aw->logon = NULL;   /* No Logon on AJP13 */
 
-*w = &aw->worker;
 JK_TRACE_EXIT(l);
 return JK_AJP13_WORKER_TYPE;
 }

Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp14_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp14_worker.c?rev=611589&r1=611588&r2=611589&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp14_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp14_worker.c Sun Jan 13 
08:18:59 2008
@@ -371,31 +371,10 @@
 ajp_worker_t *aw;
 
 JK_TRACE_ENTER(l);
-
-if (name == NULL || w == NULL) {
-JK_LOG_NULL_PARAMS(l);
-JK_TRACE_EXIT(l);
+if (ajp_worker_factory(w, name, l) == JK_FALSE)
 return 0;
-}
-
-aw = (ajp_worker_t *) calloc(1, sizeof(ajp_worker_t));
-if (!aw) {
-jk_log(l, JK_LOG_ERROR,
-   "malloc of private data failed");
-   JK_TRACE_EXIT(l);
-   return 0;
-}
-
-aw->name = strdup(name);
-
-if (!aw->name) {
-free(aw);
-jk_log(l, JK_LOG_ERROR,
-   "malloc failed for name");
-JK_TRACE_EXIT(l);
-return 0;
-}
 
+aw = (*w)->worker_private;
 aw->proto = AJP14_PROTO;
 
 aw->login = (jk_login_service_t *)malloc(sizeof(jk_login_service_t));
@@ -413,19 +392,12 @@
 (AJP14_CONTEXT_INFO_NEG | AJP14_PROTO_SUPPORT_AJP14_NEG);
 aw->login->web_server_name = NULL;  /* must be set in init */
 
-aw->ep_cache_sz = 0;
-aw->ep_cache = NULL;
-aw->connect_retry_attempts = AJP_DEF_RETRY_ATTEMPTS;
-aw->worker.worker_private = aw;
-
 aw->worker.validate = validate;
 aw->worker.init = init;
 aw->worker.get_endpoint = get_endpoint;
 aw->worker.destroy = destroy;
-aw->worker.maintain = ajp_maintain;
 
 aw->logon = logon;  /* LogOn Handler for AJP14 */
-*w = &aw->worker;
 
 JK_TRACE_EXIT(l);
 return JK_AJP14_WORKER_TYPE;

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=611589&r1=611588&r2=611589&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sun Jan 13 
08:18:59 2008
@@ -2471,6 +2471,48 @@
 return rc;
 }
 
+int JK_METHOD ajp_worker_factory(jk_worker_t **w,
+ const char *name, jk_logger_t *l)
+{
+ajp_worker_t *aw;
+
+JK_TRACE_ENTER(l);
+if (name == NULL || w == NULL) {
+JK_LOG_NULL_PARAMS(l);
+JK_TRACE_EXIT(l);
+return JK_FALSE;
+}
+
+aw = (ajp_worker_t *) calloc(1, sizeof(ajp_worker_t));
+if (!aw) {
+jk_log(l, JK_LOG_ERROR,
+   "malloc of private_data failed");
+JK_TRACE_EXIT(l);
+return JK_FALSE;
+}
+
+jk_open_pool(&aw->p,
+ aw->buf,
+ sizeof(jk_po

svn commit: r611594 - in /tomcat/connectors/trunk/jk/native/common: jk_lb_worker.c jk_shm.c jk_shm.h jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 08:30:01 2008
New Revision: 611594

URL: http://svn.apache.org/viewvc?rev=611594&view=rev
Log:
Move common shm worker elements into separate
header struct.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
tomcat/connectors/trunk/jk/native/common/jk_shm.c
tomcat/connectors/trunk/jk/native/common/jk_shm.h
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=611594&r1=611593&r2=611594&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Sun Jan 13 08:30:01 
2008
@@ -281,11 +281,11 @@
 p->retries = p->s->retries;
 p->lbmethod = p->s->lbmethod;
 p->lblock = p->s->lblock;
-p->sequence = p->s->sequence;
+p->sequence = p->s->h.sequence;
 
 for (i = 0; i < p->num_of_workers; i++) {
 worker_record_t *w = &p->lb_workers[i];
-if (w->sequence != w->s->sequence) {
+if (w->sequence != w->s->h.sequence) {
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_DEBUG,
"syncing mem for member '%s' of lb '%s' from shm",
@@ -297,7 +297,7 @@
 w->activation = w->s->activation;
 w->lb_factor = w->s->lb_factor;
 w->lb_mult = w->s->lb_mult;
-w->sequence = w->s->sequence;
+w->sequence = w->s->h.sequence;
 }
 }
 
@@ -322,11 +322,11 @@
 p->s->retries = p->retries;
 p->s->lbmethod = p->lbmethod;
 p->s->lblock = p->lblock;
-p->s->sequence = p->sequence;
+p->s->h.sequence = p->sequence;
 
 for (i = 0; i < p->num_of_workers; i++) {
 worker_record_t *w = &p->lb_workers[i];
-if (w->sequence != w->s->sequence) {
+if (w->sequence != w->s->h.sequence) {
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_DEBUG,
"syncing shm for member '%s' of lb '%s' from mem",
@@ -338,7 +338,7 @@
 w->s->activation = w->activation;
 w->s->lb_factor = w->lb_factor;
 w->s->lb_mult = w->lb_mult;
-w->s->sequence = w->sequence;
+w->s->h.sequence = w->sequence;
 }
 }
 
@@ -486,7 +486,7 @@
 worker_record_t *w = NULL;
 JK_TRACE_ENTER(l);
 
-if (p->sequence != p->s->sequence)
+if (p->sequence != p->s->h.sequence)
 jk_lb_pull(p, l);
 for (i = 0; i < p->num_of_workers; i++) {
 w = &p->lb_workers[i];
@@ -952,7 +952,7 @@
 *is_error = JK_HTTP_OK;
 
 jk_shm_lock();
-if (p->worker->sequence != p->worker->s->sequence)
+if (p->worker->sequence != p->worker->s->h.sequence)
 jk_lb_pull(p->worker, l);
 jk_shm_unlock();
 
@@ -1367,10 +1367,10 @@
 unsigned int ms;
 strncpy(p->lb_workers[i].name, worker_names[i],
 JK_SHM_STR_SIZ);
-strncpy(p->lb_workers[i].s->name, worker_names[i],
+strncpy(p->lb_workers[i].s->h.name, worker_names[i],
 JK_SHM_STR_SIZ);
 p->lb_workers[i].sequence = 0;
-p->lb_workers[i].s->sequence = 0;
+p->lb_workers[i].s->h.sequence = 0;
 p->lb_workers[i].lb_factor =
 jk_get_lb_factor(props, worker_names[i]);
 if (p->lb_workers[i].lb_factor < 1) {
@@ -1576,7 +1576,7 @@
 return 0;
 }
 strncpy(private_data->name, name, JK_SHM_STR_SIZ);
-strncpy(private_data->s->name, name, JK_SHM_STR_SIZ);
+strncpy(private_data->s->h.name, name, JK_SHM_STR_SIZ);
 private_data->lb_workers = NULL;
 private_data->num_of_workers = 0;
 private_data->worker.worker_private = private_data;
@@ -1588,7 +1588,7 @@
 private_data->recover_wait_time = WAIT_BEFORE_RECOVER;
 private_data->max_reply_timeouts = 0;
 private_data->sequence = 0;
-private_data->s->sequence = 0;
+private_data->s->h.sequence = 0;
 private_data->next_offset = 0;
 *w = &private_data->worker;
 JK_TRACE_EXIT(l);

Modified: tomcat/connectors/trunk/jk/native/common/jk_shm.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_shm.c?rev=611594&r1=611593&r2=611594&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_shm.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_shm.c Sun Jan 13 08:30:01 2008
@@ -717,11 +717,11 @@
 memset(w, 0, JK_SHM_AJP13_WORKER_SIZE);
 if (jk_shmem.hdr) {
 jk_shmem.hdr->h.data.workers++;
-w->id = jk_shmem.hdr->h.data.workers;
-w->

svn commit: r611595 - in /tomcat/connectors/trunk/jk/native/common: jk_lb_worker.c jk_lb_worker.h jk_shm.c jk_shm.h

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 09:01:08 2008
New Revision: 611595

URL: http://svn.apache.org/viewvc?rev=611595&view=rev
Log:
Differentiate between ajp shm workers and lb sub
shm workers part 1:
- introduce new shm worker and rename existing one.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h
tomcat/connectors/trunk/jk/native/common/jk_shm.c
tomcat/connectors/trunk/jk/native/common/jk_shm.h

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=611595&r1=611594&r2=611595&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Sun Jan 13 09:01:08 
2008
@@ -1353,7 +1353,7 @@
 }
 
 for (i = 0; i < num_of_workers; i++) {
-p->lb_workers[i].s = jk_shm_alloc_ajp13_worker(&p->p);
+p->lb_workers[i].s = jk_shm_alloc_lb_sub_worker(&p->p);
 if (p->lb_workers[i].s == NULL) {
 jk_log(l, JK_LOG_ERROR,
"allocating ajp13 worker record from shared 
memory");

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h?rev=611595&r1=611594&r2=611595&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h Sun Jan 13 09:01:08 
2008
@@ -37,6 +37,7 @@
 
 #define JK_LB_WORKER_NAME ("lb")
 #define JK_LB_WORKER_TYPE (5)
+#define JK_LB_SUB_WORKER_TYPE (7)
 #define JK_LB_DEF_DOMAIN_NAME ("unknown")
 
 #define JK_LB_METHOD_REQUESTS  (0)
@@ -122,7 +123,7 @@
 {
 jk_worker_t   *w;
 /* Shared memory worker data */
-jk_shm_ajp13_worker_t *s;
+jk_shm_lb_sub_worker_t *s;
 char name[JK_SHM_STR_SIZ+1];
 /* route */
 charroute[JK_SHM_STR_SIZ+1];

Modified: tomcat/connectors/trunk/jk/native/common/jk_shm.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_shm.c?rev=611595&r1=611594&r2=611595&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_shm.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_shm.c Sun Jan 13 09:01:08 2008
@@ -28,6 +28,7 @@
 #include "jk_mt.h"
 #include "jk_lb_worker.h"
 #include "jk_ajp13_worker.h"
+#include "jk_ajp14_worker.h"
 #include "jk_shm.h"
 
 /** jk shm header core data structure */
@@ -60,7 +61,8 @@
 struct jk_shm
 {
 size_t size;
-unsigned   ajp13_workers;
+unsigned   ajp_workers;
+unsigned   lb_sub_workers;
 unsigned   lb_workers;
 char   *filename;
 char   *lockname;
@@ -74,7 +76,7 @@
 typedef struct jk_shm jk_shm_t;
 
 static const char shm_signature[] = { JK_SHM_MAGIC };
-static jk_shm_t jk_shmem = { 0, 0, 0, NULL, NULL, -1, -1, 0, NULL};
+static jk_shm_t jk_shmem = { 0, 0, 0, 0, NULL, NULL, -1, -1, 0, NULL};
 static time_t jk_workers_modified_time = 0;
 static time_t jk_workers_access_time = 0;
 #if defined (WIN32)
@@ -87,8 +89,9 @@
 char **worker_list;
 unsigned i;
 unsigned num_of_workers;
+int num_of_ajp_workers = 0;
+int num_of_lb_sub_workers = 0;
 int num_of_lb_workers = 0;
-int num_of_ajp13_workers = 0;
 
 JK_TRACE_ENTER(l);
 
@@ -103,7 +106,11 @@
 for (i = 0; i < num_of_workers; i++) {
 const char *type = jk_get_worker_type(init_data, worker_list[i]);
 
-if (!strcmp(type, JK_LB_WORKER_NAME)) {
+if (!strcmp(type, JK_AJP13_WORKER_NAME) ||
+!strcmp(type, JK_AJP14_WORKER_NAME)) {
+num_of_ajp_workers++;
+}
+else if (!strcmp(type, JK_LB_WORKER_NAME)) {
 char **member_list;
 unsigned num_of_members;
 num_of_lb_workers++;
@@ -116,17 +123,23 @@
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_DEBUG, "worker %s of type %s has %u 
members",
worker_list[i], JK_LB_WORKER_NAME, num_of_members);
-num_of_ajp13_workers += num_of_members;
+num_of_lb_sub_workers += num_of_members;
 }
 }
 }
 if (JK_IS_DEBUG_LEVEL(l))
-jk_log(l, JK_LOG_DEBUG, "shared memory will contain %d lb workers with 
%d ajp13 members",
-   num_of_lb_workers, num_of_ajp13_workers);
+jk_log(l, JK_LOG_DEBUG, "shared memory will contain %d ajp workers of 
size %d and %d lb workers of size %d with %d members of size %d+%d",
+   num_of_ajp_workers, JK_SHM_AJP_SIZE(1),
+   num_of_lb_workers, JK_SHM_LB

svn commit: r611597 - in /tomcat/connectors/trunk/jk/native/common: jk_lb_worker.h jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 09:06:26 2008
New Revision: 611597

URL: http://svn.apache.org/viewvc?rev=611597&view=rev
Log:
Only use volatile for the shm workers and the
sequence counter.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h?rev=611597&r1=611596&r2=611597&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h Sun Jan 13 09:06:26 
2008
@@ -132,13 +132,13 @@
 /* worker redirect route */
 charredirect[JK_SHM_STR_SIZ+1];
 /* worker distance */
-volatile int distance;
+int distance;
 /* current activation state (config) of the worker */
-volatile int activation;
+int activation;
 /* Current lb factor */
-volatile int lb_factor;
+int lb_factor;
 /* Current lb reciprocal factor */
-volatile jk_uint64_t lb_mult;
+jk_uint64_t lb_mult;
 /* Sequence counter starting at 0 and increasing
  * every time we change the config
  */

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611597&r1=611596&r2=611597&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 09:06:26 
2008
@@ -2402,7 +2402,7 @@
   const char *arg,
   int min,
   int max,
-  volatile int *param,
+  int *param,
   const char *lb_name,
   jk_logger_t *l)
 {



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611602 - in /tomcat/connectors/trunk/jk/native/common: jk_lb_worker.c jk_lb_worker.h jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 09:20:47 2008
New Revision: 611602

URL: http://svn.apache.org/viewvc?rev=611602&view=rev
Log:
Rename worker_record into lb_sub_worker and
make order of struct members more consistent.
No functional change.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=611602&r1=611601&r2=611602&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Sun Jan 13 09:20:47 
2008
@@ -180,7 +180,7 @@
 }
 
 /* Return the string representation of the balance worker state */
-const char *jk_lb_get_state(worker_record_t *p, jk_logger_t *l)
+const char *jk_lb_get_state(lb_sub_worker_t *p, jk_logger_t *l)
 {
 return lb_state_type[p->s->state];
 }
@@ -209,7 +209,7 @@
 }
 
 /* Return the string representation of the balance worker activation */
-const char *jk_lb_get_activation(worker_record_t *p, jk_logger_t *l)
+const char *jk_lb_get_activation(lb_sub_worker_t *p, jk_logger_t *l)
 {
 return lb_activation_type[p->activation];
 }
@@ -284,7 +284,7 @@
 p->sequence = p->s->h.sequence;
 
 for (i = 0; i < p->num_of_workers; i++) {
-worker_record_t *w = &p->lb_workers[i];
+lb_sub_worker_t *w = &p->lb_workers[i];
 if (w->sequence != w->s->h.sequence) {
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_DEBUG,
@@ -325,7 +325,7 @@
 p->s->h.sequence = p->sequence;
 
 for (i = 0; i < p->num_of_workers; i++) {
-worker_record_t *w = &p->lb_workers[i];
+lb_sub_worker_t *w = &p->lb_workers[i];
 if (w->sequence != w->s->h.sequence) {
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_DEBUG,
@@ -461,7 +461,7 @@
 {
 int i = 0;
 for (i = 0; i < num_of_workers; i++) {
-p->lb_workers[i].w->destroy(&(p->lb_workers[i].w), l);
+p->lb_workers[i].worker->destroy(&(p->lb_workers[i].worker), l);
 }
 }
 
@@ -483,7 +483,7 @@
 unsigned int i;
 int non_error = 0;
 int elapsed;
-worker_record_t *w = NULL;
+lb_sub_worker_t *w = NULL;
 JK_TRACE_ENTER(l);
 
 if (p->sequence != p->s->h.sequence)
@@ -528,7 +528,7 @@
 {
 unsigned int i;
 int forced = 0;
-worker_record_t *w = NULL;
+lb_sub_worker_t *w = NULL;
 JK_TRACE_ENTER(l);
 
 for (i = 0; i < p->num_of_workers; i++) {
@@ -583,8 +583,8 @@
 lb_worker_t *lb = (lb_worker_t *)p->worker_private;
 
 for (i = 0; i < lb->num_of_workers; i++) {
-if (lb->lb_workers[i].w->maintain) {
-lb->lb_workers[i].w->maintain(lb->lb_workers[i].w, now, l);
+if (lb->lb_workers[i].worker->maintain) {
+lb->lb_workers[i].worker->maintain(lb->lb_workers[i].worker, 
now, l);
 }
 }
 
@@ -621,12 +621,12 @@
 return JK_TRUE;
 }
 
-static worker_record_t *find_by_session(lb_worker_t *p,
+static lb_sub_worker_t *find_by_session(lb_worker_t *p,
 const char *name,
 jk_logger_t *l)
 {
 
-worker_record_t *rc = NULL;
+lb_sub_worker_t *rc = NULL;
 unsigned int i;
 
 for (i = 0; i < p->num_of_workers; i++) {
@@ -638,7 +638,7 @@
 return rc;
 }
 
-static worker_record_t *find_best_bydomain(lb_worker_t *p,
+static lb_sub_worker_t *find_best_bydomain(lb_worker_t *p,
const char *domain,
jk_logger_t *l)
 {
@@ -646,7 +646,7 @@
 int d = 0;
 jk_uint64_t curmin = 0;
 
-worker_record_t *candidate = NULL;
+lb_sub_worker_t *candidate = NULL;
 
 /* First try to see if we have available candidate */
 for (i = 0; i < p->num_of_workers; i++) {
@@ -672,7 +672,7 @@
 }
 
 
-static worker_record_t *find_best_byvalue(lb_worker_t *p,
+static lb_sub_worker_t *find_best_byvalue(lb_worker_t *p,
   jk_logger_t *l)
 {
 unsigned int i;
@@ -682,7 +682,7 @@
 jk_uint64_t curmin = 0;
 
 /* find the least busy worker */
-worker_record_t *candidate = NULL;
+lb_sub_worker_t *candidate = NULL;
 
 offset = p->next_offset;
 
@@ -707,13 +707,13 @@
 return candidate;
 }
 
-static worker_record_t *find_bysession_route(lb_worker_t *p,
+static lb_sub_worker_t *find_bysession_route(lb_worker_t *p,
  const char *name,
  int *route_is_domain,
  jk_logger_t *l)
 {
 int uses_domain  = 0;
-worker_record_t *candidate = NULL;

DO NOT REPLY [Bug 44209] - JAASRealm loses credentials - principal=null

2008-01-13 Thread bugzilla
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=44209


[EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||INVALID




--- Additional Comments From [EMAIL PROTECTED]  2008-01-13 09:26 ---
Without the steps to reproduce this there isn't much we can do.

If you have multiple, clustered Tomcats with replicated sessions then the null
Principal may be caused by bug 43840 (assuming it also applies to 5.5.x - I
haven't checked).

You might also want to check with your JBoss support. This issue could be
related to the JBoss/Tomcat integration.

I am closing this as INVALID since there are no steps to reproduce the issue and
it isn't clear if this is a Tomcat or JBoss issue. Please feel free to re-open
this issue if you are able to generate a test case or if a fix for 43840 in
Tomcat 5.5. is required.

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611605 - /tomcat/connectors/trunk/jk/native/common/jk_global.h

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 09:35:25 2008
New Revision: 611605

URL: http://svn.apache.org/viewvc?rev=611605&view=rev
Log:
Include limits.h for INT_MAX.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_global.h

Modified: tomcat/connectors/trunk/jk/native/common/jk_global.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_global.h?rev=611605&r1=611604&r2=611605&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_global.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_global.h Sun Jan 13 09:35:25 
2008
@@ -74,6 +74,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #ifdef _OSD_POSIX
 #include "ap_config.h"



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611608 - in /tomcat/connectors/trunk/jk/native/common: jk_lb_worker.c jk_shm.h

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 09:52:30 2008
New Revision: 611608

URL: http://svn.apache.org/viewvc?rev=611608&view=rev
Log:
Add max_packet_size to shm and fix comments
and a log message.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
tomcat/connectors/trunk/jk/native/common/jk_shm.h

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=611608&r1=611607&r2=611608&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Sun Jan 13 09:52:30 
2008
@@ -162,7 +162,7 @@
 return lb_method_type[p->lbmethod];
 }
 
-/* Return the int representation of the lb lock type */
+/* Return the int representation of the lb method type */
 int jk_lb_get_method_code(const char *v)
 {
 if (!v)
@@ -185,7 +185,7 @@
 return lb_state_type[p->s->state];
 }
 
-/* Return the int representation of the lb lock type */
+/* Return the int representation of the lb state */
 int jk_lb_get_state_code(const char *v)
 {
 if (!v)
@@ -281,6 +281,7 @@
 p->retries = p->s->retries;
 p->lbmethod = p->s->lbmethod;
 p->lblock = p->s->lblock;
+p->max_packet_size = p->s->max_packet_size;
 p->sequence = p->s->h.sequence;
 
 for (i = 0; i < p->num_of_workers; i++) {
@@ -322,6 +323,7 @@
 p->s->retries = p->retries;
 p->s->lbmethod = p->lbmethod;
 p->s->lblock = p->lblock;
+p->s->max_packet_size = p->max_packet_size;
 p->s->h.sequence = p->sequence;
 
 for (i = 0; i < p->num_of_workers; i++) {
@@ -1356,7 +1358,7 @@
 p->lb_workers[i].s = jk_shm_alloc_lb_sub_worker(&p->p);
 if (p->lb_workers[i].s == NULL) {
 jk_log(l, JK_LOG_ERROR,
-   "allocating ajp13 worker record from shared 
memory");
+   "allocating lb sub worker record from shared 
memory");
 JK_TRACE_EXIT(l);
 return JK_FALSE;
 }

Modified: tomcat/connectors/trunk/jk/native/common/jk_shm.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_shm.h?rev=611608&r1=611607&r2=611608&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_shm.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_shm.h Sun Jan 13 09:52:30 2008
@@ -167,6 +167,7 @@
 int retries;
 int lbmethod;
 int lblock;
+unsigned int max_packet_size;
 volatile time_t  last_maintain_time;
 };
 typedef struct jk_shm_lb_worker jk_shm_lb_worker_t;



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611609 - in /tomcat/connectors/trunk/jk/native/common: jk_ajp_common.c jk_ajp_common.h

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 09:54:25 2008
New Revision: 611609

URL: http://svn.apache.org/viewvc?rev=611609&view=rev
Log:
Introduce ajp shm worker to common ajp worker.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.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=611609&r1=611608&r2=611609&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sun Jan 13 
09:54:25 2008
@@ -61,6 +61,15 @@
 return rc;
 }
 
+static const char *ajp_state_type[] = {
+JK_AJP_STATE_TEXT_IDLE,
+JK_AJP_STATE_TEXT_OK,
+JK_AJP_STATE_TEXT_ERROR,
+JK_AJP_STATE_TEXT_PROBE,
+"unknown",
+NULL
+};
+
 #define UNKNOWN_METHOD (-1)
 
 static int sc_for_req_method(const char *method, size_t len)
@@ -330,6 +339,30 @@
 /* NOTREACHED */
 }
 
+/* Return the string representation of the worker state */
+const char *jk_ajp_get_state(ajp_worker_t *aw, jk_logger_t *l)
+{
+return ajp_state_type[aw->s->state];
+}
+
+/* Return the int representation of the worker state */
+int jk_ajp_get_state_code(const char *v)
+{
+if (!v)
+return JK_AJP_STATE_DEF;
+else if  (*v == 'i' || *v == 'I' || *v == 'n' || *v == 'N' || *v == '0')
+return JK_AJP_STATE_IDLE;
+else if  (*v == 'o' || *v == 'O' || *v == '1')
+return JK_AJP_STATE_OK;
+else if  (*v == 'e' || *v == 'E' || *v == '4')
+return JK_AJP_STATE_ERROR;
+else if  (*v == 'p' || *v == 'P' || *v == '6')
+return JK_AJP_STATE_PROBE;
+else
+return JK_AJP_STATE_DEF;
+}
+
+
 
 /*
  * Message structure
@@ -1931,6 +1964,21 @@
 return JK_FALSE;
 }
 
+static void ajp_update_stats(jk_endpoint_t *e, ajp_worker_t *aw, int rc, 
jk_logger_t *l)
+{
+aw->s->readed += e->rd;
+aw->s->transferred += e->wr;
+if (aw->s->busy)
+aw->s->busy--;
+if (rc != JK_TRUE) {
+aw->s->state = JK_AJP_STATE_ERROR;
+aw->s->errors++;
+aw->s->error_time = time(NULL);
+}
+else
+aw->s->state = JK_AJP_STATE_OK;
+}
+
 /*
  * service is now splitted in ajp_send_request and ajp_get_reply
  * much more easier to do errors recovery
@@ -1976,6 +2024,7 @@
 ajp_operation_t oper;
 ajp_operation_t *op = &oper;
 ajp_endpoint_t *p;
+ajp_worker_t *aw;
 int log_error;
 int rc = JK_UNSET;
 char *msg;
@@ -1991,6 +2040,9 @@
 }
 
 p = e->endpoint_private;
+aw = p->worker;
+
+aw->s->used++;
 
 /* Set returned error to SERVER ERROR */
 *is_error = JK_HTTP_SERVER_ERROR;
@@ -2002,7 +2054,7 @@
 JK_TRACE_EXIT(l);
 return JK_SERVER_ERROR;
 }
-if (jk_b_set_buffer_size(op->request, p->worker->max_packet_size)) {
+if (jk_b_set_buffer_size(op->request, aw->max_packet_size)) {
 jk_log(l, JK_LOG_ERROR,
"Failed allocating AJP message buffer");
 JK_TRACE_EXIT(l);
@@ -2017,7 +2069,7 @@
 JK_TRACE_EXIT(l);
 return JK_SERVER_ERROR;
 }
-if (jk_b_set_buffer_size(op->reply, p->worker->max_packet_size)) {
+if (jk_b_set_buffer_size(op->reply, aw->max_packet_size)) {
 jk_log(l, JK_LOG_ERROR,
"Failed allocating AJP message buffer");
 JK_TRACE_EXIT(l);
@@ -2032,7 +2084,7 @@
 JK_TRACE_EXIT(l);
 return JK_SERVER_ERROR;
 }
-if (jk_b_set_buffer_size(op->post, p->worker->max_packet_size)) {
+if (jk_b_set_buffer_size(op->post, aw->max_packet_size)) {
 jk_log(l, JK_LOG_ERROR,
"Failed allocating AJP message buffer");
 JK_TRACE_EXIT(l);
@@ -2049,7 +2101,7 @@
 p->left_bytes_to_send = s->content_length;
 p->reuse = JK_FALSE;
 
-s->secret = p->worker->secret;
+s->secret = aw->secret;
 
 /*
  * We get here initial request (in op->request)
@@ -2059,15 +2111,21 @@
 jk_log(l, JK_LOG_INFO,
 "Creating AJP message failed, "
 "without recovery");
+aw->s->client_errors++;
 JK_TRACE_EXIT(l);
 return JK_CLIENT_ERROR;
 }
 
 if (JK_IS_DEBUG_LEVEL(l)) {
 jk_log(l, JK_LOG_DEBUG, "processing %s with %d retries",
-   p->worker->name, p->worker->retries);
+   aw->name, aw->retries);
 }
-for (i = 0; i < p->worker->retries; i++) {
+aw->s->busy++;
+if (aw->s->state == JK_AJP_STATE_ERROR)
+aw->s->state = JK_AJP_STATE_PROBE;
+if (aw->s->busy > aw->s->max_busy)
+aw->s->max_busy = aw->s->busy;
+for (i = 0; i < aw->retries; i++) {
 /*
  * We're using op->request which hold initial request
  * if Tomcat is stopped or restarted, we will pass op->request
@@ -2081,6 +2139,7 @@
 if 

svn commit: r611618 - in /tomcat/connectors/trunk/jk/native/common: jk_lb_worker.c jk_shm.h jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 10:30:55 2008
New Revision: 611618

URL: http://svn.apache.org/viewvc?rev=611618&view=rev
Log:
Now use the more generic ajp shm status info
and remove it from lb sub worker:
Do it for:
- busy
- max_busy
- readed
- transferred
- elected
- reply_timeouts
- client_errors

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
tomcat/connectors/trunk/jk/native/common/jk_shm.h
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=611618&r1=611617&r2=611618&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Sun Jan 13 10:30:55 
2008
@@ -486,12 +486,14 @@
 int non_error = 0;
 int elapsed;
 lb_sub_worker_t *w = NULL;
+ajp_worker_t *aw = NULL;
 JK_TRACE_ENTER(l);
 
 if (p->sequence != p->s->h.sequence)
 jk_lb_pull(p, l);
 for (i = 0; i < p->num_of_workers; i++) {
 w = &p->lb_workers[i];
+aw = (ajp_worker_t *)w->worker->worker_private;
 if (w->s->state == JK_LB_STATE_ERROR) {
 elapsed = (int)difftime(now, w->s->error_time);
 if (elapsed <= p->recover_wait_time) {
@@ -507,7 +509,7 @@
w->name);
 if (p->lbmethod != JK_LB_METHOD_BUSYNESS)
 w->s->lb_value = curmax;
-w->s->reply_timeouts = 0;
+aw->s->reply_timeouts = 0;
 w->s->state = JK_LB_STATE_RECOVER;
 non_error++;
 }
@@ -515,10 +517,10 @@
 else {
 non_error++;
 if (w->s->state == JK_LB_STATE_OK &&
-w->s->elected == w->s->elected_snapshot)
+aw->s->used == w->s->elected_snapshot)
 w->s->state = JK_LB_STATE_IDLE;
 }
-w->s->elected_snapshot = w->s->elected;
+w->s->elected_snapshot = aw->s->used;
 }
 
 JK_TRACE_EXIT(l);
@@ -563,11 +565,13 @@
 JK_TRACE_ENTER(l);
 if (p->lbmethod != JK_LB_METHOD_BUSYNESS) {
 for (i = 0; i < p->num_of_workers; i++) {
-p->lb_workers[i].s->lb_value >>= exponent;
-if (p->lb_workers[i].s->lb_value > curmax) {
-curmax = p->lb_workers[i].s->lb_value;
+lb_sub_worker_t *w = &p->lb_workers[i];
+ajp_worker_t *aw = (ajp_worker_t *)w->worker->worker_private;
+w->s->lb_value >>= exponent;
+if (w->s->lb_value > curmax) {
+curmax = w->s->lb_value;
 }
-p->lb_workers[i].s->reply_timeouts >>= exponent;
+aw->s->reply_timeouts >>= exponent;
 }
 }
 JK_TRACE_EXIT(l);
@@ -887,6 +891,7 @@
  lb_sub_worker_t *w,
  jk_logger_t *l)
 {
+ajp_worker_t *aw = (ajp_worker_t *)w->worker->worker_private;
 const char **log_values = jk_pool_alloc(s->pool, sizeof(char *) * 
JK_LB_NOTES_COUNT);
 char *buf = jk_pool_alloc(s->pool, sizeof(char *) * JK_LB_NOTES_COUNT * 
JK_LB_UINT64_STR_SZ);
 if (log_values && buf) {
@@ -896,15 +901,15 @@
 /* JK_NOTE_LB_FIRST/LAST_VALUE */
 log_values[1] = buf;
 buf += JK_LB_UINT64_STR_SZ;
-snprintf(buf, JK_LB_UINT64_STR_SZ, "%" JK_UINT64_T_FMT, w->s->elected);
+snprintf(buf, JK_LB_UINT64_STR_SZ, "%" JK_UINT64_T_FMT, aw->s->used);
 /* JK_NOTE_LB_FIRST/LAST_ACCESSED */
 log_values[2] = buf;
 buf += JK_LB_UINT64_STR_SZ;
-snprintf(buf, JK_LB_UINT64_STR_SZ, "%" JK_UINT64_T_FMT, w->s->readed);
+snprintf(buf, JK_LB_UINT64_STR_SZ, "%" JK_UINT64_T_FMT, aw->s->readed);
 /* JK_NOTE_LB_FIRST/LAST_READ */
 log_values[3] = buf;
 buf += JK_LB_UINT64_STR_SZ;
-snprintf(buf, JK_LB_UINT64_STR_SZ, "%" JK_UINT64_T_FMT, 
w->s->transferred);
+snprintf(buf, JK_LB_UINT64_STR_SZ, "%" JK_UINT64_T_FMT, 
aw->s->transferred);
 /* JK_NOTE_LB_FIRST/LAST_TRANSFERRED */
 log_values[4] = buf;
 buf += JK_LB_UINT64_STR_SZ;
@@ -912,7 +917,7 @@
 /* JK_NOTE_LB_FIRST/LAST_ERRORS */
 log_values[5] = buf;
 buf += JK_LB_UINT64_STR_SZ;
-snprintf(buf, JK_LB_UINT64_STR_SZ, "%d", w->s->busy);
+snprintf(buf, JK_LB_UINT64_STR_SZ, "%d", aw->s->busy);
 /* JK_NOTE_LB_FIRST/LAST_BUSY */
 log_values[6] = buf;
 /* JK_NOTE_LB_FIRST/LAST_ACTIVATION */
@@ -1000,6 +1005,7 @@
 if (rec) {
 int r;
 int is_service_error = JK_HTTP_OK;
+ajp_worker_t *aw = (ajp_worker_t *)rec->worker->worker_private;
 jk_endpoint_t *end = NULL;
 int retry = 0;
 int retry_wait = JK_LB_MIN_RETRY_WAIT;
@@ -

svn commit: r611622 - in /tomcat/connectors/trunk/jk: native/common/jk_status.c xdocs/miscellaneous/changelog.xml

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 10:43:12 2008
New Revision: 611622

URL: http://svn.apache.org/viewvc?rev=611622&view=rev
Log:
Add non ajp worker statistics to status worker also for
workers, that are not lb members.
Add reset feature for those ajp workers.
Add reset and edit buttons to ajp workers.
Let ajp workers and lb sub workers use common
functions for statistics display and reset.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_status.c
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611622&r1=611621&r2=611622&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 10:43:12 
2008
@@ -196,13 +196,25 @@
 #define JK_STATUS_URI_MAP_TABLE_ROW2   
"%s%s%s%s\n"
 #define JK_STATUS_SHOW_AJP_HEAD"" \
"Type" \
-   "Host" \
-   "Addr" \
+   "HostAddr" \
+   "State" \
+   "Acc" \
+   
"ErrCERE" \
+   
"WrRdBusyMax" \
"\n"
 #define JK_STATUS_SHOW_AJP_ROW "" \
"%s" \
"%s:%d" \
"%s" \
+   "%s" \
+   "%" JK_UINT64_T_FMT "" \
+   "%" JK_UINT32_T_FMT "" \
+   "%" JK_UINT32_T_FMT "" \
+   "%" JK_UINT32_T_FMT "" \
+   "%s" \
+   "%s" \
+   "%d" \
+   "%d" \
"\n"
 #define JK_STATUS_SHOW_LB_HEAD "" \
"Type" \
@@ -1439,14 +1451,248 @@
 JK_TRACE_EXIT(l);
 }
 
+static void display_worker_ajp_details(jk_ws_service_t *s,
+   status_endpoint_t *p,
+   ajp_worker_t *aw,
+   lb_sub_worker_t *wr,
+   lb_worker_t *lb,
+   int ms_min,
+   int ms_max,
+   int map_count,
+   jk_logger_t *l)
+{
+char buf[32];
+char buf_rd[32];
+char buf_wr[32];
+int mime;
+const char *arg;
+time_t now = time(NULL);
+const char *name = NULL;
+const char *sub_name = NULL;
+const char *ajp_name = NULL;
+status_worker_t *w = p->worker;
+int rs_min = 0;
+int rs_max = 0;
+
+JK_TRACE_ENTER(l);
+
+status_get_string(p, JK_STATUS_ARG_MIME, NULL, &arg, l);
+mime = status_mime_int(arg);
+
+if (lb) {
+name = lb->name;
+sub_name = wr->name;
+ajp_name = wr->name;
+if (wr->s->state == JK_LB_STATE_ERROR) {
+rs_min = lb->recover_wait_time - (int)difftime(now, 
wr->s->error_time);
+if (rs_min < 0) {
+rs_min = 0;
+}
+rs_max = rs_min + lb->maintain_time;
+if (rs_min < ms_min) {
+rs_min = ms_min;
+}
+}
+}
+else {
+name = aw->name;
+sub_name = NULL;
+ajp_name = aw->name;
+}
+
+if (mime == JK_STATUS_MIME_HTML) {
+
+if (lb)
+jk_printf(s, JK_STATUS_SHOW_MEMBER_ROW,
+  sub_name,
+  status_worker_type(wr->worker->type),
+  aw->host, aw->port,
+  jk_dump_hinfo(&aw->worker_inet_addr, buf),
+  jk_lb_get_activation(wr, l),
+  jk_lb_get_state(wr, l),
+  wr->distance,
+  wr->lb_factor,
+  wr->lb_mult,
+  wr->s->lb_value,
+  aw->s->used,
+  wr->s->errors,
+  aw->s->client_errors,
+  aw->s->reply_timeouts,
+  status_strfsize(aw->s->transferred, buf_wr),
+  status_strfsize(aw->s->readed, buf_rd),
+  aw->s->busy,
+  aw->s->max_busy,
+  wr->route,
+  

Native 1.1.12 release

2008-01-13 Thread Mark Thomas

All,

Have I missed the 1.1.12 native release vote?

http://archive.apache.org/dist/tomcat/tomcat-connectors/native/ shows a 
1.1.12 but neither my recollection nor a check of the archives shows a 
release vote for these files. The files are also on the mirrors.


Without a vote, these files need to be removed. In case I have missed the 
vote, I will wait 24 hours to be corrected before deleting the files from 
dist and the archives (assuming I have enough karma).


Mark

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611635 - in /tomcat/trunk: build.properties.default extras.xml

2008-01-13 Thread markt
Author: markt
Date: Sun Jan 13 12:36:58 2008
New Revision: 611635

URL: http://svn.apache.org/viewvc?rev=611635&view=rev
Log:
Library updates.
Update to latest versions:
  - commons logging 1.1.1 (needed fixes to build script to work with non 1.1 
version)
  - nsis 2.34

Modified:
tomcat/trunk/build.properties.default
tomcat/trunk/extras.xml

Modified: tomcat/trunk/build.properties.default
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/build.properties.default?rev=611635&r1=611634&r2=611635&view=diff
==
--- tomcat/trunk/build.properties.default (original)
+++ tomcat/trunk/build.properties.default Sun Jan 13 12:36:58 2008
@@ -47,7 +47,8 @@
 base-tomcat.loc=http://archive.apache.org/dist/tomcat
 
 # - Commons Logging, version 1.1 or later -
-commons-logging-src.loc=${base-jakarta.loc}/commons/logging/source/commons-logging-1.1-src.tar.gz
+commons-logging-version=1.1.1
+commons-logging-src.loc=${base-jakarta.loc}/commons/logging/source/commons-logging-${commons-logging-version}-src.tar.gz
 
 # - Webservices -
 
jaxrpc-src.loc=http://repo1.maven.org/maven2/geronimo-spec/geronimo-spec-jaxrpc/1.1-rc4/geronimo-spec-jaxrpc-1.1-rc4.jar
@@ -81,12 +82,12 @@
 
commons-collections-src.loc=${base-jakarta.loc}/commons/collections/source/commons-collections-3.2-src.tar.gz
 
 # - NSIS, version 2.0 or later -
-nsis.home=${base.path}/nsis-2.22
+nsis.home=${base.path}/nsis-2.34
 nsis.exe=${nsis.home}/makensis.exe
 nsis.installoptions.dll=${nsis.home}/Plugins/InstallOptions.dll
 nsis.nsexec.dll=${nsis.home}/Plugins/nsExec.dll
 nsis.nsisdl.dll=${nsis.home}/Plugins/NSISdl.dll
-nsis.loc=${base-sf.loc}/nsis/nsis-2.22-setup.exe
+nsis.loc=${base-sf.loc}/nsis/nsis-2.34-setup.exe
 
 # - Commons Daemon, version 1.0-Alpha or later -
 commons-daemon.home=${base.path}/commons-daemon-1.0.1

Modified: tomcat/trunk/extras.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/extras.xml?rev=611635&r1=611634&r2=611635&view=diff
==
--- tomcat/trunk/extras.xml (original)
+++ tomcat/trunk/extras.xml Sun Jan 13 12:36:58 2008
@@ -102,36 +102,36 @@
 

-
+
   
 
-
-
-  
+
+
+  
 
 
-
+
   
 
 
-
+
 
-   
-
-  
+
+  
 
-   
   
 
-  
+  
  
  
  
@@ -155,7 +155,7 @@
   forceOverwrite="yes" fileext=".md5" />
 
 
-  
+  
  
  
  



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611637 - /tomcat/trunk/.classpath

2008-01-13 Thread markt
Author: markt
Date: Sun Jan 13 12:38:35 2008
New Revision: 611637

URL: http://svn.apache.org/viewvc?rev=611637&view=rev
Log:
Update Eclipse classpath to latest versions, add test code and use standard Ant 
variable.

Modified:
tomcat/trunk/.classpath

Modified: tomcat/trunk/.classpath
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/.classpath?rev=611637&r1=611636&r2=611637&view=diff
==
--- tomcat/trunk/.classpath (original)
+++ tomcat/trunk/.classpath Sun Jan 13 12:38:35 2008
@@ -17,9 +17,11 @@
 -->
 

+   


-   
-   
+   
+   
+   

 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611660 - /tomcat/trunk/res/tomcat.nsi

2008-01-13 Thread markt
Author: markt
Date: Sun Jan 13 14:29:37 2008
New Revision: 611660

URL: http://svn.apache.org/viewvc?rev=611660&view=rev
Log:
Fix a problem with the installer. File /r lib was selecting the jar files in 
src/webapps/examples/WEB-INF/lib. There may have been other issues too. Make 
all uses of File /r more explicit as to the files that are being referred to.

Modified:
tomcat/trunk/res/tomcat.nsi

Modified: tomcat/trunk/res/tomcat.nsi
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/res/tomcat.nsi?rev=611660&r1=611659&r2=611660&view=diff
==
--- tomcat/trunk/res/tomcat.nsi (original)
+++ tomcat/trunk/res/tomcat.nsi Sun Jan 13 14:29:37 2008
@@ -136,20 +136,26 @@
   SetOutPath $INSTDIR
   File tomcat.ico
   File LICENSE
-  File /r lib
-  File /nonfatal /r logs
-  File /nonfatal /r work
-  File /nonfatal /r temp
+  SetOutPath $INSTDIR\lib
+  File /r lib\*.*
+  SetOutPath $INSTDIR\logs
+  File /nonfatal /r logs\*.*
+  SetOutPath $INSTDIR\work
+  File /nonfatal /r work\*.*
+  SetOutPath $INSTDIR\temp
+  File /nonfatal /r temp\*.*
   SetOutPath $INSTDIR\bin
   File bin\bootstrap.jar
   File bin\tomcat-juli.jar
   File bin\*.exe
   SetOutPath $INSTDIR\conf
   File conf\*.*
-  SetOutPath $INSTDIR\webapps
-  File /r webapps\ROOT
-  File /r webapps\host-manager
-  File /r webapps\manager
+  SetOutPath $INSTDIR\webapps\ROOT
+  File /r webapps\ROOT\*.*
+  SetOutPath $INSTDIR\webapps\host-manager
+  File /r webapps\host-manager\*.*
+  SetOutPath $INSTDIR\webapps\manager
+  File /r webapps\manager\*.*
 
   Call configure
   Call findJavaPath
@@ -285,8 +291,8 @@
 Section "Documentation" SecDocs
 
   SectionIn 1 3
-  SetOutPath $INSTDIR\webapps
-  File /r webapps\docs
+  SetOutPath $INSTDIR\webapps\docs
+  File /r webapps\docs\*.*
 
 SectionEnd
 
@@ -295,8 +301,8 @@
   SectionIn 3
 
   SetOverwrite on
-  SetOutPath $INSTDIR\webapps
-  File /r webapps\examples
+  SetOutPath $INSTDIR\webapps\examples
+  File /r webapps\examples\*.*
 
 SectionEnd
 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: svn commit: r609294 - in /tomcat/tc6.0.x/trunk: STATUS.txt conf/catalina.policy webapps/docs/changelog.xml

2008-01-13 Thread Mark Thomas

Remy Maucherat wrote:

On Fri, 2008-01-11 at 13:27 -0500, Larry Isaacs wrote:

I used java.security.debug=failure. The NPE isn't visible without it
(and nothing gets logged). I also did try adding various file
permissions, without much success.

Rémy


If I recall correctly, the "failure" option unfortunately doesn't do
anything by itself.  I believe you have to have "access" enabled before
it will include any failures, i.e "java.security.debug=access,failure".
There's no avoiding the huge log file. :(


Actually, it's quite funny since the NPEs do not occur with
"access,failure", and no accesses are reported as denied (but of course,
there's still no logging).


Hmm. Very odd. A bug in the JDK maybe?

Mark


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611665 - /tomcat/tc6.0.x/trunk/STATUS.txt

2008-01-13 Thread markt
Author: markt
Date: Sun Jan 13 14:39:12 2008
New Revision: 611665

URL: http://svn.apache.org/viewvc?rev=611665&view=rev
Log:
Propose porting some updates.

Modified:
tomcat/tc6.0.x/trunk/STATUS.txt

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=611665&r1=611664&r2=611665&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Sun Jan 13 14:39:12 2008
@@ -56,3 +56,18 @@
   
http://svn.apache.org/viewvc/tomcat/trunk/webapps/examples/jsp/tagplugin/if.jsp?r1=610946&r2=610945&pathrev=610946
   +1: markt, fhanik
   -1: 
+
+  Fix Windows installer issue that was including files when it should not
+  http://svn.apache.org/viewvc?rev=611660&view=rev
+  +1: markt
+  -1: 
+
+  Update libs. commons-logging-1.1.1, nsis 2.34
+  http://svn.apache.org/viewvc?rev=611635&view=rev
+  +1: markt
+  -1:
+
+  Update the Eclipse calsspath (needs libs update above)
+  http://svn.apache.org/viewvc?rev=611637&view=rev
+  +1: markt
+  -1:



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611672 - in /tomcat/connectors/trunk/jk/native/common: jk_ajp_common.c jk_ajp_common.h jk_lb_worker.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 15:19:28 2008
New Revision: 611672

URL: http://svn.apache.org/viewvc?rev=611672&view=rev
Log:
Add push/pull for new ajp shm worker.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.h
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.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=611672&r1=611671&r2=611672&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sun Jan 13 
15:19:28 2008
@@ -942,6 +942,50 @@
 return rc;
 }
 
+/* Syncing config values from shm */
+void jk_ajp_pull(ajp_worker_t * aw, jk_logger_t *l)
+{
+JK_TRACE_ENTER(l);
+
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG,
+   "syncing mem for ajp worker '%s' from shm",
+   aw->name);
+
+aw->cache_timeout = aw->s->cache_timeout;
+aw->connect_timeout = aw->s->connect_timeout;
+aw->reply_timeout = aw->s->reply_timeout;
+aw->prepost_timeout = aw->s->prepost_timeout;
+aw->recovery_opts = aw->s->recovery_opts;
+aw->retries = aw->s->retries;
+aw->max_packet_size = aw->s->max_packet_size;
+aw->sequence = aw->s->h.sequence;
+
+JK_TRACE_EXIT(l);
+}
+
+/* Syncing config values to shm */
+void jk_ajp_push(ajp_worker_t * aw, jk_logger_t *l)
+{
+JK_TRACE_ENTER(l);
+
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG,
+   "syncing shm for ajp worker '%s' from mem",
+   aw->name);
+
+aw->s->cache_timeout = aw->cache_timeout;
+aw->s->connect_timeout = aw->connect_timeout;
+aw->s->reply_timeout = aw->reply_timeout;
+aw->s->prepost_timeout = aw->prepost_timeout;
+aw->s->recovery_opts = aw->recovery_opts;
+aw->s->retries = aw->retries;
+aw->s->max_packet_size = aw->max_packet_size;
+aw->s->h.sequence = aw->sequence;
+
+JK_TRACE_EXIT(l);
+}
+
 /** Send a message to an endpoint, using corresponding PROTO HEADER
  * @param ae   endpoint
  * @param msg  message to send
@@ -2041,6 +2085,11 @@
 
 p = e->endpoint_private;
 aw = p->worker;
+
+jk_shm_lock();
+if (aw->sequence != aw->s->h.sequence)
+jk_ajp_pull(aw, l);
+jk_shm_unlock();
 
 aw->s->used++;
 

Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp_common.h?rev=611672&r1=611671&r2=611672&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.h Sun Jan 13 
15:19:28 2008
@@ -403,6 +403,10 @@
 
 void ajp_close_endpoint(ajp_endpoint_t * ae, jk_logger_t *l);
 
+void jk_ajp_pull(ajp_worker_t * aw, jk_logger_t *l);
+
+void jk_ajp_push(ajp_worker_t * aw, jk_logger_t *l);
+
 int ajp_connection_tcp_send_message(ajp_endpoint_t * ae,
 jk_msg_buf_t *msg, jk_logger_t *l);
 

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=611672&r1=611671&r2=611672&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Sun Jan 13 15:19:28 
2008
@@ -287,10 +287,15 @@
 for (i = 0; i < p->num_of_workers; i++) {
 lb_sub_worker_t *w = &p->lb_workers[i];
 if (w->sequence != w->s->h.sequence) {
+jk_worker_t *jw = w->worker;
+ajp_worker_t *aw = (ajp_worker_t *)jw->worker_private;
+
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_DEBUG,
"syncing mem for member '%s' of lb '%s' from shm",
w->name, p->name);
+
+jk_ajp_pull(aw, l);
 strncpy(w->route, w->s->route, JK_SHM_STR_SIZ);
 strncpy(w->domain, w->s->domain, JK_SHM_STR_SIZ);
 strncpy(w->redirect, w->s->redirect, JK_SHM_STR_SIZ);
@@ -329,10 +334,15 @@
 for (i = 0; i < p->num_of_workers; i++) {
 lb_sub_worker_t *w = &p->lb_workers[i];
 if (w->sequence != w->s->h.sequence) {
+jk_worker_t *jw = w->worker;
+ajp_worker_t *aw = (ajp_worker_t *)jw->worker_private;
+
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_DEBUG,
"syncing shm for member '%s' of lb '%s' from mem",
w->name, p->name);
+
+jk_ajp_push(aw, l);
 strncpy(w->s->route, w->route, JK_SHM

svn commit: r611673 - /tomcat/connectors/trunk/jk/native/common/jk_shm.h

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 15:20:09 2008
New Revision: 611673

URL: http://svn.apache.org/viewvc?rev=611673&view=rev
Log:
Add ajp config elements to new ajp shm member
to prepare manageability via status worker.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_shm.h

Modified: tomcat/connectors/trunk/jk/native/common/jk_shm.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_shm.h?rev=611673&r1=611672&r2=611673&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_shm.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_shm.h Sun Jan 13 15:20:09 2008
@@ -79,6 +79,14 @@
 {
 jk_shm_worker_header_t h;
 
+/* Configuration data mirrored from ajp_worker */
+int cache_timeout;
+int connect_timeout;
+int reply_timeout;
+int prepost_timeout;
+unsigned int recovery_opts;
+int retries;
+unsigned int max_packet_size;
 /* current error state (runtime) of the worker */
 volatile int state;
 /* Statistical data */



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611675 - in /tomcat/connectors/trunk/jk: native/common/jk_status.c xdocs/miscellaneous/changelog.xml xdocs/reference/status.xml

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 15:31:32 2008
New Revision: 611675

URL: http://svn.apache.org/viewvc?rev=611675&view=rev
Log:
Change parameter names of update action in status worker to
make them more easily distinguishable from other parameters.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_status.c
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
tomcat/connectors/trunk/jk/xdocs/reference/status.xml

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611675&r1=611674&r2=611675&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 15:31:32 
2008
@@ -71,13 +71,13 @@
 #define JK_STATUS_ARG_OPTION_NO_AJP0x0010
 #define JK_STATUS_ARG_OPTION_READ_ONLY 0x0020
 
-#define JK_STATUS_ARG_LB_RETRIES   ("lr")
-#define JK_STATUS_ARG_LB_RECOVER_TIME  ("lt")
-#define JK_STATUS_ARG_LB_MAX_REPLY_TIMEOUTS ("lx")
-#define JK_STATUS_ARG_LB_STICKY("ls")
-#define JK_STATUS_ARG_LB_STICKY_FORCE  ("lf")
-#define JK_STATUS_ARG_LB_METHOD("lm")
-#define JK_STATUS_ARG_LB_LOCK  ("ll")
+#define JK_STATUS_ARG_LB_RETRIES   ("vlr")
+#define JK_STATUS_ARG_LB_RECOVER_TIME  ("vlt")
+#define JK_STATUS_ARG_LB_MAX_REPLY_TIMEOUTS ("vlx")
+#define JK_STATUS_ARG_LB_STICKY("vls")
+#define JK_STATUS_ARG_LB_STICKY_FORCE  ("vlf")
+#define JK_STATUS_ARG_LB_METHOD("vlm")
+#define JK_STATUS_ARG_LB_LOCK  ("vll")
 
 #define JK_STATUS_ARG_LB_TEXT_RETRIES  "Retries"
 #define JK_STATUS_ARG_LB_TEXT_RECOVER_TIME "Recover Wait Time"
@@ -87,12 +87,12 @@
 #define JK_STATUS_ARG_LB_TEXT_METHOD   "LB Method"
 #define JK_STATUS_ARG_LB_TEXT_LOCK "Locking"
 
-#define JK_STATUS_ARG_LBM_ACTIVATION   ("wa")
-#define JK_STATUS_ARG_LBM_FACTOR   ("wf")
-#define JK_STATUS_ARG_LBM_ROUTE("wn")
-#define JK_STATUS_ARG_LBM_REDIRECT ("wr")
-#define JK_STATUS_ARG_LBM_DOMAIN   ("wc")
-#define JK_STATUS_ARG_LBM_DISTANCE ("wd")
+#define JK_STATUS_ARG_LBM_ACTIVATION   ("vwa")
+#define JK_STATUS_ARG_LBM_FACTOR   ("vwf")
+#define JK_STATUS_ARG_LBM_ROUTE("vwn")
+#define JK_STATUS_ARG_LBM_REDIRECT ("vwr")
+#define JK_STATUS_ARG_LBM_DOMAIN   ("vwc")
+#define JK_STATUS_ARG_LBM_DISTANCE ("vwd")
 
 #define JK_STATUS_ARG_LBM_TEXT_ACTIVATION  "Activation"
 #define JK_STATUS_ARG_LBM_TEXT_FACTOR  "LB Factor"
@@ -965,7 +965,7 @@
   JK_STATUS_ARG_WORKER, worker);
 started=1;
 }
-if (sub_worker && sub_worker[0]) {
+if (sub_worker && sub_worker[0] && cmd != JK_STATUS_CMD_LIST) {
 jk_printf(s, "%s%s=%s", started ? "&" : "?",
   JK_STATUS_ARG_SUB_WORKER, sub_worker);
 started=1;
@@ -992,7 +992,7 @@
 if (!strcmp(k, JK_STATUS_ARG_WORKER) && worker) {
 continue;
 }
-if (!strcmp(k, JK_STATUS_ARG_SUB_WORKER) && sub_worker) {
+if (!strcmp(k, JK_STATUS_ARG_SUB_WORKER) && (sub_worker || cmd == 
JK_STATUS_CMD_LIST)) {
 continue;
 }
 if (!strcmp(k, JK_STATUS_ARG_ATTRIBUTE) && attribute) {
@@ -1004,7 +1004,7 @@
 if (!strncmp(k, JK_STATUS_ARG_MULT_VALUE_BASE, 3) && cmd != 
JK_STATUS_CMD_UPDATE) {
 continue;
 }
-if (strlen(k) == 2 && (k[0] == 'l' || k[0] == 'w') && cmd != 
JK_STATUS_CMD_UPDATE) {
+if (k[0] == 'v' && cmd != JK_STATUS_CMD_UPDATE) {
 continue;
 }
 if (!strcmp(k, JK_STATUS_ARG_OPTIONS)) {

Modified: tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml?rev=611675&r1=611674&r2=611675&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml Sun Jan 13 
15:31:32 2008
@@ -44,6 +44,10 @@
   
 
   
+Status: Change parameter names of update action to
+make them more easily distinguishable from other parameters. (rjung)
+  
+  
 Status: Add non ajp worker statistics also for
 workers, that are not lb members. (rjung)
   

Modified: tomcat/connectors/trunk/jk/xdocs/reference/status.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/reference/status.xml?rev=611675&r1=611674&r2=611675&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/reference/status.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/reference/status.xml Sun Jan 13 15:31:32 
2008
@@ -450,46 +45

svn commit: r611683 - /tomcat/connectors/trunk/jk/native/common/jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 15:41:13 2008
New Revision: 611683

URL: http://svn.apache.org/viewvc?rev=611683&view=rev
Log:
Add some more convenience functions to status worker.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611683&r1=611682&r2=611683&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 15:41:13 
2008
@@ -463,6 +463,13 @@
 jk_printf(s, "%*s%s=\"%d\"\n", indentation, "", key, value);
 }
 
+static void jk_print_xml_att_uint(jk_ws_service_t *s,
+  int indentation,
+  const char *key, unsigned int value)
+{
+jk_printf(s, "%*s%s=\"%u\"\n", indentation, "", key, value);
+}
+
 static void jk_print_xml_att_long(jk_ws_service_t *s,
   int indentation,
   const char *key, long value)
@@ -508,6 +515,18 @@
 }
 }
 
+static void jk_print_prop_att_uint(jk_ws_service_t *s, status_worker_t *w,
+   const char *name,
+   const char *key, unsigned int value)
+{
+if (name) {
+jk_printf(s, "%s.%s.%s=%u\n", w->prefix, name, key, value);
+}
+else {
+jk_printf(s, "%s.%s=%u\n", w->prefix, key, value);
+}
+}
+
 static void jk_print_prop_att_long(jk_ws_service_t *s, status_worker_t *w,
const char *name,
const char *key, long value)
@@ -2493,7 +2512,7 @@
 }
 
 static int set_int_if_changed(status_endpoint_t *p,
-  lb_sub_worker_t *wr,
+  const char *name,
   const char *att,
   const char *arg,
   int min,
@@ -2506,9 +2525,42 @@
 status_worker_t *w = p->worker;
 i = status_get_int(p, arg, *param, l);
 if (i != *param && i >= min && i <= max) {
-jk_log(l, JK_LOG_INFO,
-   "Status worker '%s' setting '%s' for sub worker '%s' of lb 
worker '%s' to '%i'",
-   w->name, att, wr->name, lb_name, i);
+if (lb_name)
+jk_log(l, JK_LOG_INFO,
+   "Status worker '%s' setting '%s' for sub worker '%s' of lb 
worker '%s' to '%i'",
+   w->name, att, name, lb_name, i);
+else
+jk_log(l, JK_LOG_INFO,
+   "Status worker '%s' setting '%s' for ajp worker '%s' to 
'%i'",
+   w->name, att, name, i);
+*param = i;
+return JK_TRUE;
+}
+return JK_FALSE;
+}
+
+static int set_uint_if_changed(status_endpoint_t *p,
+   const char *name,
+   const char *att,
+   const char *arg,
+   uint min,
+   uint max,
+   uint *param,
+   const char *lb_name,
+  jk_logger_t *l)
+{
+unsigned i;
+status_worker_t *w = p->worker;
+i = (unsigned)status_get_int(p, arg, *param, l);
+if (i != *param && i >= min && i <= max) {
+if (lb_name)
+jk_log(l, JK_LOG_INFO,
+   "Status worker '%s' setting '%s' for sub worker '%s' of lb 
worker '%s' to '%u'",
+   w->name, att, name, lb_name, i);
+else
+jk_log(l, JK_LOG_INFO,
+   "Status worker '%s' setting '%s' for ajp worker '%s' to 
'%u'",
+   w->name, att, name, i);
 *param = i;
 return JK_TRUE;
 }
@@ -2543,7 +2595,7 @@
 rc |= 1;
 }
 }
-if (set_int_if_changed(p, wr, "lbfactor", JK_STATUS_ARG_LBM_FACTOR,
+if (set_int_if_changed(p, wr->name, "lbfactor", JK_STATUS_ARG_LBM_FACTOR,
1, INT_MAX, &wr->lb_factor, lb_name, l))
 /* Recalculate the load multiplicators wrt. lb_factor */
 rc |= 2;
@@ -2585,7 +2637,7 @@
 rc |= 4;
 }
 }
-if (set_int_if_changed(p, wr, "distance", JK_STATUS_ARG_LBM_DISTANCE,
+if (set_int_if_changed(p, wr->name, "distance", JK_STATUS_ARG_LBM_DISTANCE,
0, INT_MAX, &wr->distance, lb_name, l))
 rc |= 4;
 if (rc)
@@ -2661,14 +2713,14 @@
 snprintf(vname, 32-1, "" JK_STATUS_ARG_MULT_VALUE_BASE "%d", j);
 
 if (!strcmp(attribute, JK_STATUS_ARG_LBM_FACTOR)) {
-if (set_int_if_changed(p, wr, "lbfactor", vname,
+if (set_int_if_changed(p, wr->name, "lbfactor", vname,
1, INT_MAX, &

svn commit: r611685 - /tomcat/connectors/trunk/jk/native/common/jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 16:10:17 2008
New Revision: 611685

URL: http://svn.apache.org/viewvc?rev=611685&view=rev
Log:
Prepare edit and update in status worker
for ajp workers.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611685&r1=611684&r2=611685&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 16:10:17 
2008
@@ -1990,6 +1990,7 @@
 static void display_worker_ajp(jk_ws_service_t *s,
status_endpoint_t *p,
ajp_worker_t *aw,
+   int type,
jk_logger_t *l)
 {
 int cmd;
@@ -2017,6 +2018,11 @@
 single = 1;
 }
 
+jk_shm_lock();
+if (aw->sequence != aw->s->h.sequence)
+jk_ajp_pull(aw, l);
+jk_shm_unlock();
+
 map_count = count_maps(s, name, l);
 
 if (mime == JK_STATUS_MIME_HTML) {
@@ -2081,7 +2087,7 @@
 jk_log(l, JK_LOG_DEBUG,
"Status worker '%s' %s ajp worker '%s'",
w->name, "displaying", aw->name);
-display_worker_ajp(s, p, aw, l);
+display_worker_ajp(s, p, aw, jw->type, l);
 }
 else {
 jk_log(l, JK_LOG_WARNING,
@@ -2133,11 +2139,6 @@
 return;
 }
 
-jk_shm_lock();
-if (lb->sequence != lb->s->h.sequence)
-jk_lb_pull(lb, l);
-jk_shm_unlock();
-
 jk_putv(s, "Edit load balancer settings for ",
 name, "\n", NULL);
 
@@ -2439,9 +2440,6 @@
 return;
 }
 
-if (lb->sequence != lb->s->h.sequence)
-jk_lb_pull(lb, l);
-
 i = status_get_int(p, JK_STATUS_ARG_LB_RETRIES,
lb->retries, l);
 if (i != lb->retries && i > 0) {
@@ -2569,11 +2567,12 @@
 
 static int commit_member(jk_ws_service_t *s,
  status_endpoint_t *p,
+ lb_worker_t *lb,
  lb_sub_worker_t *wr,
- const char *lb_name,
  jk_logger_t *l)
 {
 const char *arg;
+const char *lb_name = lb->name;
 status_worker_t *w = p->worker;
 int rc = 0;
 int rv;
@@ -2640,8 +2639,6 @@
 if (set_int_if_changed(p, wr->name, "distance", JK_STATUS_ARG_LBM_DISTANCE,
0, INT_MAX, &wr->distance, lb_name, l))
 rc |= 4;
-if (rc)
-wr->sequence++;
 return rc;
 }
 
@@ -3097,8 +3094,10 @@
 {
 const char *worker;
 const char *sub_worker;
-jk_worker_t *jw = NULL;
 status_worker_t *w = p->worker;
+jk_worker_t *jw = NULL;
+lb_worker_t *lb = NULL;
+lb_sub_worker_t *wr = NULL;
 
 JK_TRACE_ENTER(l);
 fetch_worker_and_sub_worker(p, "editing", &worker, &sub_worker, l);
@@ -3107,32 +3106,58 @@
 return JK_FALSE;
 }
 
-if (!sub_worker || !sub_worker[0]) {
-const char *arg;
-
-if (status_get_string(p, JK_STATUS_ARG_ATTRIBUTE,
-  NULL, &arg, l) == JK_TRUE)
-form_all_members(s, p, jw, arg, l);
-else
-form_worker(s, p, jw, l);
-}
-else  {
-lb_sub_worker_t *wr = NULL;
-if (jw->type != JK_LB_WORKER_TYPE) {
-jk_log(l, JK_LOG_WARNING,
-   "Status worker '%s' worker type not implemented",
-   w->name);
+if (jw->type == JK_LB_WORKER_TYPE) {
+if (check_valid_lb(s, p, jw, worker, &lb, 0, l) == JK_FALSE) {
 JK_TRACE_EXIT(l);
 return JK_FALSE;
 }
-if(search_sub_worker(s, p, jw, worker, &wr, sub_worker, l) == 
JK_FALSE) {
+
+jk_shm_lock();
+if (lb->sequence != lb->s->h.sequence)
+jk_lb_pull(lb, l);
+jk_shm_unlock();
+if (!sub_worker || !sub_worker[0]) {
+const char *arg;
+if (status_get_string(p, JK_STATUS_ARG_ATTRIBUTE,
+  NULL, &arg, l) == JK_TRUE) {
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG,
+   "Status worker '%s' %s lb worker '%s' with all sub 
workers",
+   w->name, "editing", lb->name);
+form_all_members(s, p, jw, arg, l);
+}
+else {
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG,
+   "Status worker '%s' %s lb worker '%s'",
+   w->name, "editing", lb->name);
+form_worker(s, p, jw, l);
+}
 JK_TRACE_EXIT(l);
-return JK_FALSE;
+return JK_TRUE;
+}
+else  {
+   

svn commit: r611686 - /tomcat/connectors/trunk/jk/native/common/jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 16:33:20 2008
New Revision: 611686

URL: http://svn.apache.org/viewvc?rev=611686&view=rev
Log:
Add some more hide functions in status worker
and prepare for adding ajp attributes.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611686&r1=611685&r2=611686&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 16:33:20 
2008
@@ -70,6 +70,8 @@
 #define JK_STATUS_ARG_OPTION_NO_LB 0x0008
 #define JK_STATUS_ARG_OPTION_NO_AJP0x0010
 #define JK_STATUS_ARG_OPTION_READ_ONLY 0x0020
+#define JK_STATUS_ARG_OPTION_NO_LB_CONF0x0040
+#define JK_STATUS_ARG_OPTION_NO_LB_SUMMARY 0x0080
 
 #define JK_STATUS_ARG_LB_RETRIES   ("vlr")
 #define JK_STATUS_ARG_LB_RECOVER_TIME  ("vlt")
@@ -225,7 +227,7 @@
"" JK_STATUS_ARG_LB_TEXT_LOCK 
"" \
"" 
JK_STATUS_ARG_LB_TEXT_RECOVER_TIME "" \
"" 
JK_STATUS_ARG_LB_TEXT_MAX_REPLY_TIMEOUTS "" \
-   "\n"
+   "\n"
 #define JK_STATUS_SHOW_LB_ROW  "" \
"%s" \
"%s" \
@@ -235,6 +237,7 @@
"%s" \
"%d" \
"%d" \
+   "" \
"\n"
 #define JK_STATUS_SHOW_MEMBER_HEAD "" \

" NameType" \
@@ -1717,6 +1720,8 @@
 int read_only = 0;
 int single = 0;
 unsigned int hide_members;
+unsigned int hide_lb_conf;
+unsigned int hide_lb_summary;
 const char *arg;
 time_t now = time(NULL);
 unsigned int good = 0;
@@ -1726,6 +1731,7 @@
 int ms_min;
 int ms_max;
 unsigned int j;
+int pstart = JK_FALSE;
 const char *name = lb->name;
 status_worker_t *w = p->worker;
 
@@ -1736,6 +1742,10 @@
 mime = status_mime_int(arg);
 hide_members = status_get_int(p, JK_STATUS_ARG_OPTIONS, 0, l) &
   JK_STATUS_ARG_OPTION_NO_MEMBERS;
+hide_lb_conf = status_get_int(p, JK_STATUS_ARG_OPTIONS, 0, l) &
+  JK_STATUS_ARG_OPTION_NO_LB_CONF;
+hide_lb_summary = status_get_int(p, JK_STATUS_ARG_OPTIONS, 0, l) &
+ JK_STATUS_ARG_OPTION_NO_LB_SUMMARY;
 if (w->read_only) {
 read_only = 1;
 }
@@ -1795,29 +1805,84 @@
 }
 jk_puts(s, "]  ");
 jk_putv(s, "Worker Status for ", name, "\n", NULL);
-jk_puts(s, "" JK_STATUS_SHOW_LB_HEAD);
-jk_printf(s, JK_STATUS_SHOW_LB_ROW,
-  status_worker_type(JK_LB_WORKER_TYPE),
-  jk_get_bool(lb->sticky_session),
-  jk_get_bool(lb->sticky_session_force),
-  lb->retries,
-  jk_lb_get_method(lb, l),
-  jk_lb_get_lock(lb, l),
-  lb->recover_wait_time,
-  lb->max_reply_timeouts);
-jk_puts(s, "\n\n");
-
-jk_puts(s, ""
-
"GoodDegradedBad/StoppedBusyMax 
BusyNext Maintenance"
-"\n");
-jk_printf(s, "%d", good);
-jk_printf(s, "%d", degraded);
-jk_printf(s, "%d", bad);
-jk_printf(s, "%d", lb->s->busy);
-jk_printf(s, "%d", lb->s->max_busy);
-jk_printf(s, "%d/%d", ms_min, ms_max);
-jk_puts(s, "\n\n\n");
 
+if (hide_lb_conf) {
+pstart = JK_TRUE;
+jk_puts(s, "\n");
+if (single) {
+status_write_uri(s, p, "Show LB Configuration", 
JK_STATUS_CMD_SHOW, JK_STATUS_MIME_UNKNOWN,
+ NULL, NULL, 0, 
JK_STATUS_ARG_OPTION_NO_LB_CONF, "", l);
+}
+else {
+status_write_uri(s, p, "Show LB Configuration", 
JK_STATUS_CMD_LIST, JK_STATUS_MIME_UNKNOWN,
+ NULL, NULL, 0, 
JK_STATUS_ARG_OPTION_NO_LB_CONF, "", l);
+}
+}
+if (hide_lb_summary) {
+if (pstart == JK_FALSE)
+jk_puts(s, "\n");
+else
+jk_puts(s, "  |  ");
+pstart = JK_TRUE;
+if (single) {
+status_write_uri(s, p, "Show LB Summary", JK_STATUS_CMD_SHOW, 
JK_STATUS_MIME_UNKNOWN,
+ NULL, NULL, 0, 
JK_STATUS_ARG_OPTION_NO_LB_SUMMARY, "", l);
+}
+else {
+ 

svn commit: r611687 - /tomcat/connectors/trunk/jk/native/common/jk_status.c

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 16:41:15 2008
New Revision: 611687

URL: http://svn.apache.org/viewvc?rev=611687&view=rev
Log:
Fix typo/compiler error uint -> unsigned int.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611687&r1=611686&r2=611687&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 16:41:15 
2008
@@ -2591,9 +2591,9 @@
const char *name,
const char *att,
const char *arg,
-   uint min,
-   uint max,
-   uint *param,
+   unsigned int min,
+   unsigned int max,
+   unsigned int *param,
const char *lb_name,
   jk_logger_t *l)
 {



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r611689 - in /tomcat/connectors/trunk/jk: native/common/jk_status.c xdocs/miscellaneous/changelog.xml xdocs/reference/status.xml

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 17:04:06 2008
New Revision: 611689

URL: http://svn.apache.org/viewvc?rev=611689&view=rev
Log:
Add manageability for ajp parameters of ajp
workers and ajp lb members to status worker.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_status.c
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
tomcat/connectors/trunk/jk/xdocs/reference/status.xml

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=611689&r1=611688&r2=611689&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Sun Jan 13 17:04:06 
2008
@@ -72,6 +72,7 @@
 #define JK_STATUS_ARG_OPTION_READ_ONLY 0x0020
 #define JK_STATUS_ARG_OPTION_NO_LB_CONF0x0040
 #define JK_STATUS_ARG_OPTION_NO_LB_SUMMARY 0x0080
+#define JK_STATUS_ARG_OPTION_NO_AJP_CONF   0x0100
 
 #define JK_STATUS_ARG_LB_RETRIES   ("vlr")
 #define JK_STATUS_ARG_LB_RECOVER_TIME  ("vlt")
@@ -103,6 +104,22 @@
 #define JK_STATUS_ARG_LBM_TEXT_DOMAIN  "Cluster Domain"
 #define JK_STATUS_ARG_LBM_TEXT_DISTANCE"Distance"
 
+#define JK_STATUS_ARG_AJP_CACHE_TO "vacpt"
+#define JK_STATUS_ARG_AJP_CONNECT_TO   "vact"
+#define JK_STATUS_ARG_AJP_PREPOST_TO   "vapt"
+#define JK_STATUS_ARG_AJP_REPLY_TO "vart"
+#define JK_STATUS_ARG_AJP_RETRIES  "var"
+#define JK_STATUS_ARG_AJP_REC_OPTS "varo"
+#define JK_STATUS_ARG_AJP_MAX_PK_SZ"vamps"
+
+#define JK_STATUS_ARG_AJP_TEXT_CACHE_TO"Connection Pool Timeout"
+#define JK_STATUS_ARG_AJP_TEXT_CONNECT_TO  "Connect Timeout"
+#define JK_STATUS_ARG_AJP_TEXT_PREPOST_TO  "Prepost Timeout"
+#define JK_STATUS_ARG_AJP_TEXT_REPLY_TO"Reply Timeout"
+#define JK_STATUS_ARG_AJP_TEXT_RETRIES "Retries"
+#define JK_STATUS_ARG_AJP_TEXT_REC_OPTS"Recovery Options"
+#define JK_STATUS_ARG_AJP_TEXT_MAX_PK_SZ   "Max Packet Size"
+
 #define JK_STATUS_CMD_UNKNOWN  (0)
 #define JK_STATUS_CMD_LIST (1)
 #define JK_STATUS_CMD_SHOW (2)
@@ -196,9 +213,30 @@
 #define JK_STATUS_URI_MAP_TABLE_ROW
"%s%s%s\n"
 #define JK_STATUS_URI_MAP_TABLE_HEAD2  
"%s%s%s%s\n"
 #define JK_STATUS_URI_MAP_TABLE_ROW2   
"%s%s%s%s\n"
-#define JK_STATUS_SHOW_AJP_HEAD"" \
+#define JK_STATUS_SHOW_AJP_CONF_HEAD   "" \
"Type" \
"HostAddr" \
+   "" 
JK_STATUS_ARG_AJP_TEXT_CACHE_TO "" \
+   "" 
JK_STATUS_ARG_AJP_TEXT_CONNECT_TO "" \
+   "" 
JK_STATUS_ARG_AJP_TEXT_PREPOST_TO "" \
+   "" 
JK_STATUS_ARG_AJP_TEXT_REPLY_TO "" \
+   "" 
JK_STATUS_ARG_AJP_TEXT_RETRIES "" \
+   "" 
JK_STATUS_ARG_AJP_TEXT_REC_OPTS "" \
+   "" 
JK_STATUS_ARG_AJP_TEXT_MAX_PK_SZ "" \
+   "\n"
+#define JK_STATUS_SHOW_AJP_CONF_ROW"" \
+   "%s" \
+   "%s:%d" \
+   "%d" \
+   "%d" \
+   "%d" \
+   "%d" \
+   "%d" \
+   "%u" \
+   "%u" \
+   "" \
+   "\n"
+#define JK_STATUS_SHOW_AJP_HEAD"" \
"State" \
"Acc" \

"ErrCERE" \
@@ -206,9 +244,6 @@
"\n"
 #define JK_STATUS_SHOW_AJP_ROW "" \
"%s" \
-   "%s:%d" \
-   "%s" \
-   "%s" \
"%" JK_UINT64_T_FMT "" \
"%" JK_UINT32_T_FMT "" \
"%" JK_UINT32_T_FMT "" \
@@ -240,8 +275,7 @@
"" \
"\n"
 #define JK_STATUS_SHOW_MEMBER_HEAD "" \
-   
" NameType" \
-   "HostAddr" \
+   " Name" \
 

svn commit: r611693 - in /tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status: JkStatusUpdateLoadbalancerTask.java JkStatusUpdateTask.java

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 17:32:42 2008
New Revision: 611693

URL: http://svn.apache.org/viewvc?rev=611693&view=rev
Log:
Update jkstatus ant task to 1.2.27 parameter
names.

Modified:

tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateLoadbalancerTask.java

tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateTask.java

Modified: 
tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateLoadbalancerTask.java
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateLoadbalancerTask.java?rev=611693&r1=611692&r2=611693&view=diff
==
--- 
tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateLoadbalancerTask.java
 (original)
+++ 
tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateLoadbalancerTask.java
 Sun Jan 13 17:32:42 2008
@@ -216,7 +216,7 @@
/**
  * Create JkStatus worker update link
  * 
- * 
http://localhost/jkstatus?cmd=update&mime=txt&w=loadbalancer&lm=1&ll=1&lr=2<=60&ls=true&lf=false&lx=0
+ * 
http://localhost/jkstatus?cmd=update&mime=txt&w=loadbalancer&vlm=1&vll=1&vlr=2&vlt=60&vls=true&vlf=false&vlx=0
  * 
  *
  * 
@@ -224,23 +224,23 @@
  * 
  * 
  * w: name loadbalancer
- * lm: method (lb strategy)
- * ll: lock
- * lr: retries
- * lt: recover wait timeout
- * ls: sticky session
- * lf: force sticky session
- * lx: max reply timeouts
+ * vlm: method (lb strategy)
+ * vll: lock
+ * vlr: retries
+ * vlt: recover wait timeout
+ * vls: sticky session
+ * vlf: force sticky session
+ * vlx: max reply timeouts
  * 
  * 
- * lm=0 or Requests
- * lm=1 or Traffic
- * lm=2 or Busyness
- * lm=3 or Sessions
+ * vlm=0 or Requests
+ * vlm=1 or Traffic
+ * vlm=2 or Busyness
+ * vlm=3 or Sessions
  * 
  * 
- * ll=0 or Optimistic
- * ll=1 or Pessimistic
+ * vll=0 or Optimistic
+ * vll=1 or Pessimistic
  * 
  * 
  * @return create jkstatus update worker link
@@ -253,39 +253,39 @@
 sb.append("&w=");
 sb.append(URLEncoder.encode(loadbalancer, getCharset()));
 if (stickySession != null) { 
-   sb.append("&ls=");
+   sb.append("&vls=");
sb.append(stickySession);
}
 if (forceStickySession != null) { 
-   sb.append("&lf=");
+   sb.append("&vlf=");
sb.append(forceStickySession);
}
if (retries >= 0) {
-   sb.append("&lr=");
+   sb.append("&vlr=");
sb.append(retries);
}
if (recoverWaitTime >= 0) {
-   sb.append("<=");
+   sb.append("&vlt=");
sb.append(recoverWaitTime);
}
if (method == null && methodCode >= 0 && methodCode < 
4) {
-   sb.append("&lm=");
+   sb.append("&vlm=");
sb.append(methodCode);
}
 if (method != null) { 
-   sb.append("&lm=");
+   sb.append("&vlm=");
sb.append(method);
}
if (lock == null && lockCode >= 0 && lockCode < 2) {
-   sb.append("&ll=");
+   sb.append("&vll=");
sb.append(lockCode);
}
 if (lock != null) { 
-   sb.append("&ll=");
+   sb.append("&vll=");
sb.append(lock);
}
if (maxReplyTimeouts >= 0) {
-   sb.append("&lx=");
+   sb.append("&vlx=");
sb.append(maxReplyTimeouts);
}
 

Modified: 
tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateTask.java
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateTask.java?rev=611693&r1=611692&r2=611693&view=diff
==
--- 
tomcat/connectors/trunk/jk/jkstatus/src/share/org/apache/jk/status/JkStatusUpdateTask.java
 (original)
+++ 
tomcat/connectors/trunk

svn commit: r611696 - in /tomcat/connectors/trunk/jk: native/apache-1.3/ native/apache-2.0/ native/common/ xdocs/generic_howto/ xdocs/miscellaneous/ xdocs/reference/

2008-01-13 Thread rjung
Author: rjung
Date: Sun Jan 13 18:28:27 2008
New Revision: 611696

URL: http://svn.apache.org/viewvc?rev=611696&view=rev
Log:
Allow dynamic setting of reply timeout using the httpd environment
variable JK_REPLY_TIMEOUT.

Modified:
tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c
tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
tomcat/connectors/trunk/jk/native/common/jk_service.h
tomcat/connectors/trunk/jk/native/common/jk_util.c
tomcat/connectors/trunk/jk/xdocs/generic_howto/timeouts.xml
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
tomcat/connectors/trunk/jk/xdocs/reference/workers.xml

Modified: tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c?rev=611696&r1=611695&r2=611696&view=diff
==
--- tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c (original)
+++ tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c Sun Jan 13 18:28:27 
2008
@@ -70,6 +70,7 @@
 #define JK_ENV_SESSION  ("SSL_SESSION_ID")
 #define JK_ENV_KEY_SIZE ("SSL_CIPHER_USEKEYSIZE")
 #define JK_ENV_CERTCHAIN_PREFIX ("SSL_CLIENT_CERT_CHAIN_")
+#define JK_ENV_REPLY_TIMEOUT("JK_REPLY_TIMEOUT")
 #define JK_ENV_WORKER_NAME  ("JK_WORKER_NAME")
 #define JK_NOTE_WORKER_NAME ("JK_WORKER_NAME")
 #define JK_NOTE_WORKER_TYPE ("JK_WORKER_TYPE")
@@ -610,6 +611,7 @@
 int size;
 request_rec *r = private_data->r;
 char *ssl_temp = NULL;
+const char *reply_timeout = NULL;
 
 /* Copy in function pointers (which are really methods) */
 s->start_response = ws_start_response;
@@ -639,6 +641,10 @@
 s->flush_packets = 1;
 if (conf->options & JK_OPT_FLUSHEADER)
 s->flush_header = 1;
+
+reply_timeout = apr_table_get(r->subprocess_env, "JK_REPLY_TIMEOUT");
+if (reply_timeout)
+s->reply_timeout = atoi(reply_timeout);
 
 if (conf->options & JK_OPT_DISABLEREUSE)
 s->disable_reuse = 1;

Modified: tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c?rev=611696&r1=611695&r2=611696&view=diff
==
--- tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c (original)
+++ tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c Sun Jan 13 18:28:27 
2008
@@ -112,6 +112,7 @@
 #define JK_ENV_SESSION  ("SSL_SESSION_ID")
 #define JK_ENV_KEY_SIZE ("SSL_CIPHER_USEKEYSIZE")
 #define JK_ENV_CERTCHAIN_PREFIX ("SSL_CLIENT_CERT_CHAIN_")
+#define JK_ENV_REPLY_TIMEOUT("JK_REPLY_TIMEOUT")
 #define JK_ENV_WORKER_NAME  ("JK_WORKER_NAME")
 #define JK_NOTE_WORKER_NAME ("JK_WORKER_NAME")
 #define JK_NOTE_WORKER_TYPE ("JK_WORKER_TYPE")
@@ -621,10 +622,10 @@
 static int init_ws_service(apache_private_data_t * private_data,
jk_ws_service_t *s, jk_server_conf_t * conf)
 {
+int size;
 request_rec *r = private_data->r;
-
 char *ssl_temp = NULL;
-int size;
+const char *reply_timeout = NULL;
 
 /* Copy in function pointers (which are really methods) */
 s->start_response = ws_start_response;
@@ -652,6 +653,10 @@
 s->flush_packets = 1;
 if (conf->options & JK_OPT_FLUSHEADER)
 s->flush_header = 1;
+
+reply_timeout = apr_table_get(r->subprocess_env, "JK_REPLY_TIMEOUT");
+if (reply_timeout)
+s->reply_timeout = atoi(reply_timeout);
 
 if (conf->options & JK_OPT_DISABLEREUSE)
 s->disable_reuse = 1;

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=611696&r1=611695&r2=611696&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sun Jan 13 
18:28:27 2008
@@ -1815,10 +1815,14 @@
 /* Start read all reply message */
 while (1) {
 int rc = 0;
+/* Allow to overwrite reply_timeout on a per URL basis via service 
struct */
+int reply_timeout = s->reply_timeout;
 
+if (reply_timeout < 0)
+reply_timeout = p->worker->reply_timeout;
 /* If we set a reply timeout, check if something is available */
-if (p->worker->reply_timeout > 0) {
-if (jk_is_input_event(p->sd, p->worker->reply_timeout, l) ==
+if (reply_timeout > 0) {
+if (jk_is_input_event(p->sd, reply_timeout, l) ==
 JK_FALSE) {
 p->last_errno = errno;
 jk_log(l, JK_LOG_ERROR,

Modified: tomcat/connectors/trunk/jk/nativ

Bug report for Tomcat 3 [2008/01/13]

2008-01-13 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=CriticalMAJ=Major |
| |   |   MIN=Minor   NOR=Normal  ENH=Enhancement   |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
| 2350|Ver|Nor|2001-06-27|ServletConfig.getInitParameter() requires url-patt|
| 5331|Ass|Nor|2001-12-09|getPathInfo vs URL normalization  |
| 6027|Inf|Maj|2002-01-25|Tomcat  Automatically shuts down as service   |
| 6488|Ver|Maj|2002-02-15|Error: 304. Apparent bug in default ErrorHandler c|
| 7785|Inf|Blk|2002-04-06|tomcat bug in context reloading   |
| 7863|Inf|Maj|2002-04-09|I have a problem when running Tomcat with IIS |
| 8187|Inf|Cri|2002-04-17|Errors when Tomcat used with MS Access database   |
| 9737|Ver|Nor|2002-06-10|ArrayIndexOutOfBoundsException when sending just p|
|10047|Ass|Cri|2002-06-20|IllegalStateException |
|10406|Ass|Cri|2002-07-02|IllegalStateException |
|11087|Inf|Blk|2002-07-23|IllegalStateException |
|12156|Inf|Cri|2002-08-29|Apache and Tomcat 3.3.1 Interworking problem  |
|16363|Ass|Cri|2003-01-23|Stack Overflow accessing compiled JSP - Tomcat 3.2|
|39250|Inf|Cri|2006-04-07|Tomcat 3.2.1 + JDK 1.4|
+-+---+---+--+--+
| Total   14 bugs   |
+---+

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Bug report for Tomcat 4 [2008/01/13]

2008-01-13 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=CriticalMAJ=Major |
| |   |   MIN=Minor   NOR=Normal  ENH=Enhancement   |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
| 3839|Opn|Enh|2001-09-26|Problem bookmarking login page|
| 4227|Opn|Enh|2001-10-17|Invalid CGI path  |
| 5329|New|Enh|2001-12-08|NT Service exits startup before Tomcat is finished|
| 5795|New|Enh|2002-01-10|Catalina Shutdown relies on localhost causing prob|
| 5829|New|Enh|2002-01-13|StandardManager needs to cope with sessions throwi|
| 5985|New|Enh|2002-01-23|Tomcat should perform a more restrictive validatio|
| 6600|Opn|Enh|2002-02-20|enodeURL adds 'jsession' when 'isRequestedSessionI|
| 6614|New|Enh|2002-02-21|Have Bootstrap and StandardClassLoader use the sam|
| 6671|New|Enh|2002-02-25|Simple custom tag example uses old declaration sty|
| 7043|New|Enh|2002-03-12|database user and password for JDBC Based Store   |
| 7374|New|Enh|2002-03-22|Apache Tomcat/4.0.1 message on standard output|
| 7676|New|Enh|2002-04-02|Allow name property to use match experssions in  without className in server.xml produces N|
|11069|Opn|Enh|2002-07-23|Tomcat not flag error if tld is outside of /WEB-IN|
|11129|New|Enh|2002-07-24|New valve for putting the sessionIDs in the reques|
|11248|New|Enh|2002-07-29|DefaultServlet doesn't send expires header|
|11754|Opn|Enh|2002-08-15|Synchronous shutdown script - shutdown.sh should w|
|12069|New|Enh|2002-08-27|Creation of more HttpSession objects for one previ|
|12428|Opn|Enh|2002-09-09|request.getUserPrincipal(): Misinterpretation of s|
|12658|New|Enh|2002-09-15|a proxy host and port at the  element level |
|12766|New|Enh|2002-09-18|Tomcat should use tld files in /WEB-INF/ over vers|
|13309|Opn|Enh|2002-10-04|Catalina calls System.exit()  |
|13634|New|Enh|2002-10-15|Allowing system properties to be substituted in co|
|13689|Opn|Enh|2002-10-16|Classloader paths for 'Common' classes and librari|
|13731|New|Enh|2002-10-17|Final request, response, session and other variabl|
|13941|New|Enh|2002-10-24|reload is VERY slow   |
|13965|New|Enh|2002-10-25|Catalina.sh correction request for Tru64 Unix |
|14097|New|Enh|2002-10-30|hardcoded registry value for vm lets tomcat servic|
|14416|New|Enh|2002-11-10|blank tag name in TLD cause NullPointerException  |
|14635|New|Enh|2002-11-18|Should be possible not to have -MM-DD in log f|
|14766|New|Enh|2002-11-22|Redirect Vavle|
|14993|New|Enh|2002-12-02|Possible obselete synchronized declaration|
|15115|New|Enh|2002-12-05|correct docs... XML parser *cannot* be overridden |
|15417|Opn|Enh|2002-12-16|Add port for forced compilation of JSP pages  |
|15688|New|Enh|2002-12-27|full-qualified names instead of imports   |
|15941|New|Enh|2003-01-10|Expose rootCause exceptions at deeper levels  |
|16294|New|Enh|2003-01-21|Configurable URL Decoding.|
|16357|New|Enh|2003-01-23|"connection timeout reached"  |
|16531|New|Enh|2003-01-29|Updating already deployed ".war" files in a single|
|16579|New|Enh|2003-01-30|documentation page layout/style breaks wrapping to|
|16596|New|Enh|2003-01-30|option for disabling log rotation |
|17070|New|Enh|2003-02-14|The Catalina Ant tasks do not allow for 'reusable'|
|17146|New|Enh|2003-02-18|Simplify build.xml using 

Re: Native 1.1.12 release

2008-01-13 Thread Mladen Turk

Mark Thomas wrote:


Have I missed the 1.1.12 native release vote?



No :)



Without a vote, these files need to be removed. In case I have missed 
the vote, I will wait 24 hours to be corrected before deleting the files 
from dist and the archives (assuming I have enough karma).




Native tag is needed because Tomcat build relies on it,
so when we vote the Tomcat, we vote for the native as well.

Tomcat native is not separate product, but rather an integral
part of Tomcat distribution. The need for tag is needed because
we'd need to put some serious native part build (as well as tools)
when building Tomcat. Perhaps some day we'll do that, so we can
tag the Tomcat together with native, call the
buildconf.sh and create the native .tar.gz all at the same time.

Hope that explains.

Regards,
Mladen


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Bug report for Watchdog [2008/01/13]

2008-01-13 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=CriticalMAJ=Major |
| |   |   MIN=Minor   NOR=Normal  ENH=Enhancement   |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
|  278|Unc|Nor|2000-12-04|Bug in GetParameterValuesTestServlet.java file Bug|
|  279|Unc|Nor|2000-12-04|Logical Error in GetParameterValuesTestServlet Bug|
|  469|Unc|Nor|2001-01-17|in example-taglib.tld "urn" should be "uri" BugRat|
|  470|Unc|Nor|2001-01-17|FAIL positiveForward.jsp and positiveInclude.jsp B|
| 9634|New|Enh|2002-06-05|No tests exist for ServletContext.getResourcePaths|
|10703|New|Enh|2002-07-11|Need to test getRequestURI after RequestDispatcher|
|11336|New|Enh|2002-07-31|Test wrapped path methods with RD.foward()|
|11663|New|Maj|2002-08-13|JSP precompile tests rely on Jasper specific behav|
|11664|New|Maj|2002-08-13|A sweep is needed of all Watchdog 4.0 tag librarie|
|11665|New|Maj|2002-08-13|ServletToJSPErrorPageTest and ServletToServletErro|
|11666|New|Maj|2002-08-13|SetBufferSize_1TestServlet is invalid.|
|14004|New|Maj|2002-10-28|Incorrent behaviour of all attribute-related lifec|
|15504|New|Nor|2002-12-18|JSP positiveGetValues test relies on order preserv|
|24649|New|Nor|2003-11-12|getRemoteHost fails when agent has uppercase chara|
|29398|New|Nor|2004-06-04|Update site and note current status   |
+-+---+---+--+--+
| Total   15 bugs   |
+---+

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Bug report for Tomcat 5 [2008/01/13]

2008-01-13 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=CriticalMAJ=Major |
| |   |   MIN=Minor   NOR=Normal  ENH=Enhancement   |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
|27122|Opn|Enh|2004-02-20|IE plugins cannot access components through Tomcat|
|28039|Opn|Enh|2004-03-30|Cluster Support for SingleSignOn  |
|29160|Ver|Enh|2004-05-23|precompile problem: _jspx_meth_* (javax.servlet.js|
|29494|Inf|Enh|2004-06-10|No way to set PATH when running as a service on Wi|
|29936|Opn|Blk|2004-07-06|XML parser loading problems by container  |
|30241|Ver|Enh|2004-07-21|Enhance build script to use branch argument when c|
|31257|Opn|Cri|2004-09-16|java.endorsed.dirs is not used when JSP compilatio|
|33262|Inf|Enh|2005-01-27|Service Manager autostart should check for adminis|
|33453|Opn|Enh|2005-02-08|Jasper should recompile JSP files whose datestamps|
|33650|Inf|Enh|2005-02-19|Jasper performance for multiple files processing  |
|33671|Opn|Enh|2005-02-21|Manual Windows service installation with custom na|
|34526|Opn|Nor|2005-04-19|Truncated content in decompressed requests from mo|
|34801|New|Enh|2005-05-08|PATCH: CGIServlet does not terminate child after a|
|34805|Ass|Enh|2005-05-08|warn about invalid security constraint url pattern|
|34868|Ass|Enh|2005-05-11|allow to register a trust store for a session that|
|35054|Inf|Enh|2005-05-25|warn if appBase is not existing as a File or direc|
|35869|Inf|Enh|2005-07-26|Can't run as a service on Windows Server 2003 64-B|
|35959|Opn|Enh|2005-08-01|mod_jk not independant of UseCanonicalName|
|36133|Inf|Enh|2005-08-10|Support JSS SSL implementation|
|36169|New|Enh|2005-08-12|[PATCH] Enable chunked encoding for requests in II|
|36362|New|Enh|2005-08-25|missing check for Java reserved keywords in tag fi|
|36569|Inf|Enh|2005-09-09|Redirects produce illegal URL's   |
|36837|Inf|Enh|2005-09-28|Looking for ProxyHandler implementation of Http re|
|36922|Inf|Enh|2005-10-04|setup.sh file mis-advertised and missing  |
|36923|New|Nor|2005-10-05|Deactivated EL expressions are not parsed for jsp |
|37018|Ass|Enh|2005-10-11|Document how to use tomcat-SSL with a pkcs11 token|
|37084|Opn|   |2005-10-14|JspC from ant fails on JSPs that use custom taglib|
|37334|Inf|Enh|2005-11-02|Realm digest property not aligned with the adminis|
|37449|Opn|Enh|2005-11-10|Two UserDatabaseRealm break manager user  |
|37485|Inf|Enh|2005-11-14|I'd like to run init SQL after JDBC Connection cre|
|37498|Inf|Nor|2005-11-14|[PATCH] NPE in org.apache.catalina.core.ContainerB|
|37515|Inf|Nor|2005-11-15|smap not generated by JspC when used from Ant for |
|37627|Opn|Nor|2005-11-24|Slow and incomplete dynamic content generation aft|
|37785|Inf|Nor|2005-12-05|Changing startup type via Tomcat Monitor does not |
|37794|Opn|Nor|2005-12-05|getParameter() fails on POST with transfer-encodin|
|37797|Inf|Maj|2005-12-05|Configure Tomcat utility truncates classpath to 96|
|37822|Opn|Nor|2005-12-07|WebappClassLoader interfering with Catalina core c|
|37847|Ass|Enh|2005-12-09|Allow User To Optionally Specify Catalina Output F|
|37869|Opn|Nor|2005-12-12|Cannot obtain client certificate with SSL / client|
|37918|Inf|Nor|2005-12-15|EL cannot find valid getter from object when using|
|37984|New|Nor|2005-12-21|JNDIRealm.java not able to handle MD5 password|
|38001|Inf|Nor|2005-12-22|TruncatedClassFile when loadind applets   |
|38046|Ass|   |2005-12-27|apache-tomcat-5.5.14-deployer doesn't work (Illega|
|38131|New|Enh|2006-01-05|WatchedResource does not work if app is outside "w|
|38197|Opn|Maj|2006-01-09|taglib pool bug when tag is used with jsp:attribut|
|38216|Inf|Enh|2006-01-10|Extend Jmxproxy to allow call of MBean Operations |
|38268|Inf|Enh|2006-01-13|User friendly: Need submit button on adding/deleti|
|38352|Inf|Nor|2006-01-22|Additional Entries for Default catalina.policy fil|
|38360|Inf|Enh|2006-01-24|Domain for session cookies|
|38367|Inf|Nor|2006-01-24|Executing any Catalina Ant task results in an exce|
|38372|Inf|Cri|2006-01-25|tcnative-1.dll response overflow corruption, parti|
|38427|