You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by rj...@apache.org on 2008/01/13 18:20:49 UTC

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

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;
+    lb_sub_worker_t *candidate = NULL;
 
     candidate = find_by_session(p, name, l);
     if (!candidate) {
@@ -746,11 +746,11 @@
     return candidate;
 }
 
-static worker_record_t *find_failover_worker(lb_worker_t * p,
+static lb_sub_worker_t *find_failover_worker(lb_worker_t * p,
                                              int *route_is_domain,
                                              jk_logger_t *l)
 {
-    worker_record_t *rc = NULL;
+    lb_sub_worker_t *rc = NULL;
     unsigned int i;
     const char *redirect = NULL;
 
@@ -765,11 +765,11 @@
     return rc;
 }
 
-static worker_record_t *find_best_worker(lb_worker_t * p,
+static lb_sub_worker_t *find_best_worker(lb_worker_t * p,
                                          int *route_is_domain,
                                          jk_logger_t *l)
 {
-    worker_record_t *rc = NULL;
+    lb_sub_worker_t *rc = NULL;
 
     rc = find_best_byvalue(p, l);
     /* By default use worker route as session route */
@@ -778,12 +778,12 @@
     return rc;
 }
 
-static worker_record_t *get_most_suitable_worker(lb_worker_t * p,
+static lb_sub_worker_t *get_most_suitable_worker(lb_worker_t * p,
                                                  char *sessionid,
                                                  int *route_is_domain,
                                                  jk_logger_t *l)
 {
-    worker_record_t *rc = NULL;
+    lb_sub_worker_t *rc = NULL;
     int r;
 
     JK_TRACE_ENTER(l);
@@ -882,7 +882,7 @@
 
 static void lb_add_log_items(jk_ws_service_t *s,
                              const char *const *log_names,
-                             worker_record_t *w,
+                             lb_sub_worker_t *w,
                              jk_logger_t *l)
 {
     const char **log_values = jk_pool_alloc(s->pool, sizeof(char *) * JK_LB_NOTES_COUNT);
@@ -927,7 +927,7 @@
 {
     lb_endpoint_t *p;
     int attempt = 1;
-    worker_record_t *prec = NULL;
+    lb_sub_worker_t *prec = NULL;
     int num_of_workers;
     int first = 1;
     int was_forced = 0;
@@ -988,7 +988,7 @@
 
     while (attempt <= num_of_workers && recoverable == JK_TRUE) {
         int route_is_domain = JK_FALSE;
-        worker_record_t *rec =
+        lb_sub_worker_t *rec =
             get_most_suitable_worker(p->worker, sessionid, &route_is_domain, l);
         rc = JK_FALSE;
         *is_error = JK_HTTP_SERVER_BUSY;
@@ -1019,7 +1019,7 @@
             if (p->worker->lblock == JK_LB_LOCK_PESSIMISTIC)
                 jk_shm_unlock();
                        
-            while ((!(r=rec->w->get_endpoint(rec->w, &end, l)) || !end) && (retry < p->worker->retries)) {
+            while ((!(r=rec->worker->get_endpoint(rec->worker, &end, l)) || !end) && (retry < p->worker->retries)) {
                 retry++;
                 retry_wait *=2;
 
@@ -1346,7 +1346,7 @@
             p->max_packet_size = DEF_BUFFER_SZ;
             p->lb_workers = jk_pool_alloc(&p->p,
                                           num_of_workers *
-                                          sizeof(worker_record_t));
+                                          sizeof(lb_sub_worker_t));
             if (!p->lb_workers) {
                 JK_TRACE_EXIT(l);
                 return JK_FALSE;
@@ -1400,13 +1400,13 @@
                     jk_get_worker_activation(props, worker_names[i]);
                 if (!wc_create_worker(p->lb_workers[i].name, 0,
                                       props,
-                                      &(p->lb_workers[i].w),
-                                      we, l) || !p->lb_workers[i].w) {
+                                      &(p->lb_workers[i].worker),
+                                      we, l) || !p->lb_workers[i].worker) {
                     break;
                 }
-                if (secret && (p->lb_workers[i].w->type == JK_AJP13_WORKER_TYPE ||
-                    p->lb_workers[i].w->type == JK_AJP14_WORKER_TYPE)) {
-                    ajp_worker_t *aw = (ajp_worker_t *)p->lb_workers[i].w->worker_private;
+                if (secret && (p->lb_workers[i].worker->type == JK_AJP13_WORKER_TYPE ||
+                    p->lb_workers[i].worker->type == JK_AJP14_WORKER_TYPE)) {
+                    ajp_worker_t *aw = (ajp_worker_t *)p->lb_workers[i].worker->worker_private;
                     if (!aw->secret)
                         aw->secret = secret;
                 }

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=611602&r1=611601&r2=611602&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:20:47 2008
@@ -119,12 +119,18 @@
 /* The exponent x is JK_LB_DECAY_MULT*#MAINT_INTV_SINCE_LAST_MAINT */
 #define JK_LB_DECAY_MULT         (1)
 
-struct worker_record
+struct lb_sub_worker
 {
-    jk_worker_t           *w;
+    jk_worker_t *worker;
     /* Shared memory worker data */
     jk_shm_lb_sub_worker_t *s;
+
     char         name[JK_SHM_STR_SIZ+1];
+    /* Sequence counter starting at 0 and increasing
+     * every time we change the config
+     */
+    volatile unsigned int sequence;
+
     /* route */
     char    route[JK_SHM_STR_SIZ+1];
     /* worker domain */
@@ -139,18 +145,28 @@
     int lb_factor;
     /* Current lb reciprocal factor */
     jk_uint64_t lb_mult;
+};
+typedef struct lb_sub_worker lb_sub_worker_t;
+
+struct lb_worker
+{
+    jk_worker_t worker;
+    /* Shared memory worker data */
+    jk_shm_lb_worker_t *s;
+
+    char         name[JK_SHM_STR_SIZ+1];
     /* Sequence counter starting at 0 and increasing
      * every time we change the config
      */
     volatile unsigned int sequence;
-};
-typedef struct worker_record worker_record_t;
 
-struct lb_worker
-{
-    worker_record_t *lb_workers;
+    jk_pool_t p;
+    jk_pool_atom_t buf[TINY_POOL_SIZE];
+
+    JK_CRIT_SEC cs;
+
+    lb_sub_worker_t *lb_workers;
     unsigned int num_of_workers;
-    char         name[JK_SHM_STR_SIZ+1];
     int          sticky_session;
     int          sticky_session_force;
     int          recover_wait_time;
@@ -160,17 +176,8 @@
     int          lblock;
     int          maintain_time;
     unsigned int max_packet_size;
-    unsigned int sequence;
     unsigned int next_offset;
 
-    jk_pool_t p;
-    jk_pool_atom_t buf[TINY_POOL_SIZE];
-
-    jk_worker_t worker;
-    JK_CRIT_SEC cs;
-
-    /* Shared memory worker data */
-    jk_shm_lb_worker_t *s;
 };
 typedef struct lb_worker lb_worker_t;
 
@@ -181,9 +188,9 @@
 int jk_lb_get_lock_code(const char *v);
 const char *jk_lb_get_method(lb_worker_t *p, jk_logger_t *l);
 int jk_lb_get_method_code(const char *v);
-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);
 int jk_lb_get_state_code(const char *v);
-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);
 int jk_lb_get_activation_code(const char *v);
 void reset_lb_values(lb_worker_t *p, jk_logger_t *l);
 void jk_lb_pull(lb_worker_t * p, jk_logger_t *l);

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=611602&r1=611601&r2=611602&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:20:47 2008
@@ -579,7 +579,7 @@
     } while (1);
 }
 
-static int status_rate(worker_record_t *wr, status_worker_t *w,
+static int status_rate(lb_sub_worker_t *wr, status_worker_t *w,
                        jk_logger_t *l)
 {
     jk_uint32_t mask = 0;
@@ -1199,12 +1199,12 @@
                              status_endpoint_t *p,
                              jk_worker_t *jw,
                              const char *worker,
-                             worker_record_t **wrp,
+                             lb_sub_worker_t **wrp,
                              const char *sub_worker,
                              jk_logger_t *l)
 {
     lb_worker_t *lb = NULL;
-    worker_record_t *wr = NULL;
+    lb_sub_worker_t *wr = NULL;
     status_worker_t *w = p->worker;
     unsigned int i;
 
@@ -1488,7 +1488,7 @@
     jk_shm_unlock();
 
     for (j = 0; j < lb->num_of_workers; j++) {
-        worker_record_t *wr = &(lb->lb_workers[j]);
+        lb_sub_worker_t *wr = &(lb->lb_workers[j]);
         int rate;
         rate = status_rate(wr, w, l);
         if (rate > 0 )
@@ -1644,8 +1644,8 @@
         }
 
         for (j = 0; j < lb->num_of_workers; j++) {
-            worker_record_t *wr = &(lb->lb_workers[j]);
-            ajp_worker_t *a = (ajp_worker_t *)wr->w->worker_private;
+            lb_sub_worker_t *wr = &(lb->lb_workers[j]);
+            ajp_worker_t *a = (ajp_worker_t *)wr->worker->worker_private;
             int rs_min = 0;
             int rs_max = 0;
             if (wr->s->state == JK_LB_STATE_ERROR) {
@@ -1679,7 +1679,7 @@
                 jk_puts(s, "&nbsp;</td>");
                 jk_printf(s, JK_STATUS_SHOW_MEMBER_ROW,
                           wr->name,
-                          status_worker_type(wr->w->type),
+                          status_worker_type(wr->worker->type),
                           a->host, a->port,
                           jk_dump_hinfo(&a->worker_inet_addr, buf),
                           jk_lb_get_activation(wr, l),
@@ -1707,7 +1707,7 @@
 
                 jk_print_xml_start_elt(s, w, 6, 0, "member");
                 jk_print_xml_att_string(s, 8, "name", wr->name);
-                jk_print_xml_att_string(s, 8, "type", status_worker_type(wr->w->type));
+                jk_print_xml_att_string(s, 8, "type", status_worker_type(wr->worker->type));
                 jk_print_xml_att_string(s, 8, "host", a->host);
                 jk_print_xml_att_int(s, 8, "port", a->port);
                 jk_print_xml_att_string(s, 8, "address", jk_dump_hinfo(&a->worker_inet_addr, buf));
@@ -1738,7 +1738,7 @@
 
                 jk_puts(s, "Member:");
                 jk_printf(s, " name=%s", wr->name);
-                jk_printf(s, " type=%s", status_worker_type(wr->w->type));
+                jk_printf(s, " type=%s", status_worker_type(wr->worker->type));
                 jk_printf(s, " host=%s", a->host);
                 jk_printf(s, " port=%d", a->port);
                 jk_printf(s, " address=%s", jk_dump_hinfo(&a->worker_inet_addr, buf));
@@ -1767,7 +1767,7 @@
             else if (mime == JK_STATUS_MIME_PROP) {
 
                 jk_print_prop_att_string(s, w, name, "balance_workers", wr->name);
-                jk_print_prop_att_string(s, w, wr->name, "type", status_worker_type(wr->w->type));
+                jk_print_prop_att_string(s, w, wr->name, "type", status_worker_type(wr->worker->type));
                 jk_print_prop_att_string(s, w, wr->name, "host", a->host);
                 jk_print_prop_att_int(s, w, wr->name, "port", a->port);
                 jk_print_prop_att_string(s, w, wr->name, "address", jk_dump_hinfo(&a->worker_inet_addr, buf));
@@ -2100,7 +2100,7 @@
 
 static void form_member(jk_ws_service_t *s,
                         status_endpoint_t *p,
-                        worker_record_t *wr,
+                        lb_sub_worker_t *wr,
                         const char *lb_name,
                         jk_logger_t *l)
 {
@@ -2234,7 +2234,7 @@
                 "</tr>", NULL);
 
         for (i = 0; i < lb->num_of_workers; i++) {
-            worker_record_t *wr = &(lb->lb_workers[i]);
+            lb_sub_worker_t *wr = &(lb->lb_workers[i]);
 
             jk_putv(s, "<tr><td>", wr->name, "</td><td>\n", NULL);
 
@@ -2397,7 +2397,7 @@
 }
 
 static int set_int_if_changed(status_endpoint_t *p,
-                              worker_record_t *wr,
+                              lb_sub_worker_t *wr,
                               const char *att,
                               const char *arg,
                               int min,
@@ -2421,7 +2421,7 @@
 
 static int commit_member(jk_ws_service_t *s,
                          status_endpoint_t *p,
-                         worker_record_t *wr,
+                         lb_sub_worker_t *wr,
                          const char *lb_name,
                          jk_logger_t *l)
 {
@@ -2561,7 +2561,7 @@
     if (lb) {
         for (j = 0; j < lb->num_of_workers; j++) {
             int sync_needed = JK_FALSE;
-            worker_record_t *wr = &(lb->lb_workers[j]);
+            lb_sub_worker_t *wr = &(lb->lb_workers[j]);
             snprintf(vname, 32-1, "" JK_STATUS_ARG_MULT_VALUE_BASE "%d", j);
 
             if (!strcmp(attribute, JK_STATUS_ARG_LBM_FACTOR)) {
@@ -2723,7 +2723,7 @@
     const char *worker;
     const char *sub_worker;
     jk_worker_t *jw = NULL;
-    worker_record_t *wr = NULL;
+    lb_sub_worker_t *wr = NULL;
 
     JK_TRACE_ENTER(l);
     fetch_worker_and_sub_worker(p, "checking", &worker, &sub_worker, l);
@@ -2969,7 +2969,7 @@
             form_worker(s, p, jw, l);
     }
     else  {
-        worker_record_t *wr = NULL;
+        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",
@@ -3013,7 +3013,7 @@
     }
     else  {
         lb_worker_t *lb = NULL;
-        worker_record_t *wr = NULL;
+        lb_sub_worker_t *wr = NULL;
         int rc = 0;
         if (check_valid_lb(s, p, jw, worker, &lb, 0, l) == JK_FALSE) {
             JK_TRACE_EXIT(l);
@@ -3047,7 +3047,7 @@
     const char *sub_worker;
     jk_worker_t *jw = NULL;
     lb_worker_t *lb = NULL;
-    worker_record_t *wr = NULL;
+    lb_sub_worker_t *wr = NULL;
 
     JK_TRACE_ENTER(l);
     fetch_worker_and_sub_worker(p, "resetting", &worker, &sub_worker, l);
@@ -3110,7 +3110,7 @@
     const char *worker;
     const char *sub_worker;
     jk_worker_t *jw = NULL;
-    worker_record_t *wr = NULL;
+    lb_sub_worker_t *wr = NULL;
     status_worker_t *w = p->worker;
 
     JK_TRACE_ENTER(l);



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org