tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mt...@apache.org
Subject cvs commit: jakarta-tomcat-connectors/ajp/proxy mod_proxy.c
Date Tue, 03 Aug 2004 20:29:07 GMT
mturk       2004/08/03 13:29:07

  Modified:    ajp/proxy mod_proxy.c
  Log:
  Added init_conn_pool to worker.
  Connection pool will either use reslist (if thread number > 1)  or single connection.
  
  Revision  Changes    Path
  1.11      +36 -0     jakarta-tomcat-connectors/ajp/proxy/mod_proxy.c
  
  Index: mod_proxy.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/ajp/proxy/mod_proxy.c,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- mod_proxy.c	3 Aug 2004 19:56:18 -0000	1.10
  +++ mod_proxy.c	3 Aug 2004 20:29:07 -0000	1.11
  @@ -20,6 +20,7 @@
   #include "mod_core.h"
   
   #include "apr_optional.h"
  +#include "ap_mpm.h"
   
   #if (MODULE_MAGIC_NUMBER_MAJOR > 20020903)
   #include "mod_ssl.h"
  @@ -1366,6 +1367,39 @@
       return NULL;
   }
   
  +static void init_conn_pool(apr_pool_t *p, proxy_worker *worker)
  +{
  +    apr_pool_t *pool;
  +    proxy_conn_pool *cp;
  +    
  +    /* Create a connection pool's subpool */
  +    apr_pool_create(&pool, p);
  +    cp = (proxy_conn_pool *)apr_pcalloc(pool, sizeof(proxy_conn_pool));
  +    cp->pool = pool;
  +#if APR_HAS_THREADS
  +    {
  +        int mpm_threads;
  +        ap_mpm_query(AP_MPMQ_MAX_THREADS, &mpm_threads);
  +        if (mpm_threads > 1) {
  +            /* Set hard max to no more then mpm_threads */
  +            if (worker->hmax == 0 || worker->hmax > mpm_threads)
  +                 worker->hmax = mpm_threads;
  +            if (worker->smax == 0 || worker->smax > worker->hmax)
  +                 worker->smax = worker->hmax;
  +            /* Set min to be lower then smax */
  +            if (worker->min > worker->smax)
  +                 worker->min = worker->smax; 
  +        }
  +        else {
  +            /* This will supress the apr_reslist creation */
  +            worker->min = worker->smax = worker->hmax = 0;
  +        }
  +    }
  +#endif
  +    
  +    worker->cp = cp;
  +}
  +
   PROXY_DECLARE(const char *) ap_proxy_add_worker(proxy_worker **worker,
                                                   apr_pool_t *p,
                                                   proxy_server_conf *conf,
  @@ -1398,6 +1432,8 @@
       if (port == -1)
           port = apr_uri_port_of_scheme((*worker)->scheme);
       (*worker)->port = port;
  +
  +    init_conn_pool(p, *worker);
   
       return NULL;
   }
  
  
  

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


Mime
View raw message