Mantis - Resin
Viewing Issue Advanced Details
3847 major always 01-13-10 17:30 02-18-10 09:19
mocospace  
ferg  
normal  
closed 4.0.2  
fixed  
none    
none 4.0.4  
0003847: Using external compiler to compile jsps is slow and takes a heavy toll from the Resin server
We are using javac JDK compiler.
We upgraded a number of our Resin servers to Resin 4.0.2 and noticed that compiling the jsps takes a long while now and a great deal of resources.
We managed to start the servers by pre-compiling the jsps however the issue still occurs whenever a jsp/jspf is changed on the app and requires a re-compile (which prevents us from changing jsps directly on the app).
On our servers that still have version 3.2.1 we encounter no issues of the sort.

Notes
(0004383)
mocospace   
01-14-10 00:03   
Some of the errors we saw while compilation was taking place, eventually the process succeeded (without needing to modify the JSP), but load average and thread count risen to an unacceptable values and server availability was disrupted.

2010-01-13 11:36:56,071 [http-app-l-10880-15688] WARN jsp.wap2.errorpage - *** WARN: /wap2/footer.jspf:114: reached end of file while parsing
    out.print(( com.jnj.util.ServletUtils.encodeUR^Z^@^@^@^@^@^@^@^@^@

2010-01-13 11:37:25,361 [http-app-m-10880-9948] WARN jsp.wap2.errorpage -
com.caucho.java.JavaCompileException: _jsp/_wap2/_profile_22dsearch_0results__jsp.java:41: error while writing _jsp._wap2._profile_22dsearch_0results__jsp: Stale NFS file handle
public class _profile_22dsearch_0results__jsp extends com.caucho.jsp.JavaPage
(0004390)
mocospace   
01-20-10 00:54   
We tried separating the work directories for the different resin instances running on the same box and also moving them to local compilation directories. Still however editing a JSP in runtime on production site that requires a recompilation of many JSPs causes high load, high thread spike and timeouts in client requests.
(0004435)
ferg   
02-18-10 09:19   
The output stream parsing was not handled properly.