tracker issue : CF-4199617

select a category, or use search below
(searches all categories and all time range)
Title:

ColdFusion service does not start with large cfclasses folder

| View in Tracker

Status/Resolution/Reason: To Test/Fixed/Fixed

Reporter/Name(from Bugbase): e-domizil License Team / e-domizil License Team ()

Created: 09/07/2017

Components: Core Runtime

Versions: 2016

Failure Type: Non Functioning

Found In Build/Fixed In Build: Every build and CF version available / 305199

Priority/Frequency: Normal / All users will encounter

Locale/System: ALL / Win 2012 Server x64

Vote Count: 0

Problem Description: We expierence startup issues of ColdFusion. This happens when the folders "C:\ColdFusion2016\cfusion\wwwroot\WEB-INF\cfclasses" has 50K or 75K class files cached. Than the service does not start.

Steps to Reproduce: Fill the instance folders "ColdFusion2016\cfusion\wwwroot\WEB-INF\cfclasses" with real life and reboot your server.

Actual Result: Some instances comes up, others not. The ones with an empty cfclasses folder are starting up, others not.

Expected Result: The windows service must ALWAYS start. CF can load the files in background after the service came up.

Any Workarounds: Delete the content of cfclasses folder or run "start-service cold*" and WAIT...

Attachments:

Comments:

Hi , I tried to reproduce the issue, but with no luck.   Can you try the attached CFM files in your environments and see if the service comes up on CF restart ? . Attached file 1 : cfc_files_generator.cfm  generates cfc files . Attached file 2 : class_file_generator.cfm  generate cfclass files by invoking generated files . Run this after running 1st file. Note : Keep the server timeout sufficient & check the location of generated file in cfc_files_generator.cfm   Alternatively you can provide me the repro code .   Regards, Nitin
Comment by Nitin K.
366 | September 29, 2017 12:06:02 PM GMT
First install 5 instances. Fill all instances with 50.000-200.000 class files. Start apache ab and put some load on the webserver. e.g 10 cfm requests per second on every instance. Keep the cpu at 100%. Now reboot the computer. The services will not start within 60 seconds and will timeout. If you are not aware of this issue you are not an admin of real life systems. I cannot share our code. Use google and you will find tons of people with the same problem. Cf product managers are also aware of this issue. So do not tell me this is not reproducible!
Comment by Alexander H.
367 | October 03, 2017 11:08:41 AM GMT
Hi Alexander, I have tried with 5 CF instances along 150000 class files per instance and it works perfectly fine. We tried it multiple times but unfortunately unable to repro this issue at our end. ColdFusion do not load class files located inside cfclasses directory on server startup. ColdFusion does lazy loading for cfclasses i.e. it loads class file in-memory only on the first request. So, it should not impact the server startup process in any way. However, we can further investigate to nail it down. Please provide the information mentioned below to further investigate this issue: 1. Settings summary for all ColdFusion instances. 2. JVM Heap size(Xms, Xmx and MaxMetaspaceSize). You can check jvm.config file located at <cf_install_root>/<instance_name>/bin. 3. Please share these log files.(server.log, couldfusion-out.log, coldfusion-error.log and exception.log) 4. Have you tried adding cfclasses directory to the antivirus's exclusion list? Thanks, Nimit
Comment by Nimit S.
368 | October 10, 2017 07:12:46 AM GMT
Hi Alexander, Can you please provide the requested information, asked in the previous comment?
Comment by Nimit S.
369 | October 13, 2017 03:44:15 AM GMT
Hi Alexander, Can you please provide the information as requested by Nimit ? Thanks, Nitin
Comment by Nitin K.
370 | October 30, 2017 06:48:56 AM GMT