-
Bug
-
Resolution: Done
-
Major
-
1.3.13.Final
-
None
mod_clusters connection pool is sized differently in httpd 2.4 now compared to httpd 2.2. If smax is set, mod_cluster now sets that pool max to smax+1:
if (worker->s->hmax < node->mess.smax)
worker->s->hmax = node->mess.smax + 1;
Before the max would be ThreadsPerChild+1. Now if someone sets smax=1, then they start seeing severe responsiveness issues if moving an equivalent config from httpd 2.2 to httpd 2.4 because it fails to acquire a connection with 3 concurrent requests:
[Tue Apr 21 10:02:08.995604 2020] [proxy:debug] [pid 27148:tid 139854005438432] proxy_util.c(1981): AH00927: initializing worker http://127.0.0.1:8080 local [Tue Apr 21 10:02:08.995616 2020] [proxy:debug] [pid 27148:tid 139854005438432] proxy_util.c(2016): AH00930: initialized pool in child 27148 for () min=0 max=2 smax=1 ... [Tue Apr 21 10:20:41.123443 2020] [:debug] [pid 27147:tid 139853093992192] mod_proxy_cluster.c(2479): proxy: byrequests balancer DONE (http:///127.0.0.1:8080) [Tue Apr 21 10:20:41.123456 2020] [proxy:debug] [pid 27147:tid 139853093992192] proxy_util.c(1919): AH00924: worker http:///127.0.0.1:8080 shared already initialized [Tue Apr 21 10:20:41.123460 2020] [proxy:debug] [pid 27147:tid 139853093992192] proxy_util.c(1976): AH00926: worker http:///127.0.0.1:8080 local already initialized [Tue Apr 21 10:20:41.123464 2020] [proxy:debug] [pid 27147:tid 139853093992192] mod_proxy.c(1254): [client 127.0.0.1:40760] AH01143: Running scheme balancer handler (attempt 0) [Tue Apr 21 10:20:41.125726 2020] [proxy:error] [pid 27147:tid 139853093992192] (70007)The timeout specified has expired: AH00941: HTTP: failed to acquire connection for ()
- is incorporated by
-
JBCS-946 Setting smax results in very small max connection pool on mod_cluster
- Closed