I have a coldfusion scheduled task that takes about two hours to run (about 4000 lines of code). It does a number of cfquery, cffile, cfexecute with cffunction, cfloop, and cfif. If works perfectly in the fifteen minute version that works with a subset of the data, but it frequently runs coldfusion out of java heap in the full record set run. This then sometimes causes our public webserver to go down or malfunction until the coldfusion process is restarted.
When I posted about getting this to work initially last year, the solution was to put output="no" in every cffunction as apparently the whitespace generated by the code in all the cfloops was eventually enough to crash the server after a couple hours.
Recently, it has started to crash again as the record count has grown over the past year. I put everything in a number of cfsilent tags, and it ran for one night, but now it is crashing again.
I'm not sure what to do next. The cfexecutes log to a file not to a variable. The variables are in cffunction with var keyword with output="no" on the cffunction with coldfusion debugging checkboxes unchecked in the admin so in theory the fifteenth step/cffunction in the process should have the same memory available after garbage collection if needed as the first. But obviously it doesn't as each step can run by itself but not sequentially unless limited in record count.
Any ideas? Any known coldfusion memory leaks in 8,0,0,176276 Standard? Any way to prevent coldfusion server from malfunctioning if one page runs it out of memory?