Timeouts after upgrading to Lucee 5 and confusion about them


I have ve upgraded Lucee from 4.5 to some time ago and since then I have been experiencing timeouts and really nasty server starts.

I am using Windows Server 2012 R2 standard, IIS 7.5 and have about 45 sites ( mostly plain Mura sites, 2 ModelGlue / ColdSpring sites, 3 Mura sites with ModelGlue /Coldspring plugin ) and I am not using mod_cfml.

The machine is Intel® Xeon® CPU E3-1230v3 @3.30GHz / 16 GB RAM.
I set -Xms5120m and -Xmx5120m and disabled jar scanning ( lucee/conf/context.xml: JarScanner scanClassPath=“false” , lucee/conf/catalina.properties: tomcat.util.scan.StandardJarScanFilter.jarsToSkip=* )

With Lucee 4.5, I used to have set both Lucee request timout and IIS executionTimout to 2 mins
and application pool timeout to 20 mins and everything was running fine.
When server was restarted it didn’t took longer than a couple of minutes to start all the sites.

After upgrading to Lucee 5, this changed quite dramatically. Quite often, after restart, the server wouldn’t start all the sites properly even after one hour.

In visualvm, I could see high CPU consumption and high number of threads, then it would crash and often it would take 5 to 10 ten restarts to get everything running.

Log files are filled with messages like this:

Mura sites:

  request (path: ...\www\requirements\mura\bean\ioc. cfc):20) has run into a timeout (1000 seconds) and has been stopped. open locks at this time ...

ModelGlue sites :

request (path: ...\www\index.cfm (...\www\requirements\modelglue\gesture\module\XMLModuleLoader. cfc):2) has run into a timeout (120 seconds) and has been stopped. open locks at this time ...

It looks like the applications would timeout before they could initialize…

Trying to fix it, I have set the IIS system.web/httpRuntime.executionTimeout on server level to 9 mins, Lucee request timeout to 10 mins and left application pool timeout to 20 mins.

In the lucee/tomcat/config/server.xml I have set the connector timeout slighty longer than IIS application pool timeout:

Connector port="8009" redirectPort="8443" connectionTimeout="1210000" protocol="AJP/1.3" packetSize="65536" maxPostSize="52428800" minSpareThreads="4" enableLookups="false" maxThreads="1000"

This seems to have improved the situation a bit, but still it takes ~ 20 mins to start all the sites properly and frankly I have no idea, if this is the right way to configure it.

So I was wondering, if someone else have experienced similar mayhem after upgrade or perhaps what timeout settings other people are using ?

Also, should Tomcat / Lucee timeout be a bit longer than IIS timeout ? I got the idea from Boncode connector docs.

Any hint on this would be appreciated…