Coldfusion 8 Memory Issues Causing 500 Error

Hello Experts,

Ok, so I've been having issues uploading large files (1GIG +) using Coldfusion 8.  So after several google searches and experimenting with the Memory Setting in the "Settings" page, I ran into an issue.

Basically, I set the three memory settings in the coldfusion admin settings page to: 4096MB.  (my server has a total memory of 4Gig)

Because of this change, I am now getting the following error on the Coldfusion Admin page, everytime I launch it to revert the change.

coldfusion.util.MemorySemaphore$MemoryUnavailableException: Memory required (141 bytes) exceeds the maximum allowed memory.

Is there a config file I can modify to revert the setting back to their default values?

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

erikTsomikSystem Architect, CF programmer Commented:
well you can try changing the heap size in CF Admin. But i do not know what other implications this can lead
> Is there a config file I can modify to revert the setting back to their default values?

Yes, the memory settings are usually stored in the jvm.config file under java.args.  It's location depends on your configuration.  Example, on a developer version it's C:\ColdFusion8\runtime\bin\jvm.config

Even though your current settings aren't working, always make a back-up of the jvm.config first, because if you mess up other settings it can prevent the server from booting entirely.
> well you can try changing the heap size in CF Admin

@Erik, they said they can't access the CF Admin due to the new settings.
The 7 Worst Nightmares of a Sysadmin

Fear not! To defend your business’ IT systems we’re going to shine a light on the seven most sinister terrors that haunt sysadmins. That way you can be sure there’s nothing in your stack waiting to go bump in the night.

aescribensAuthor Commented:

I just accessed the jvm.config file and can't find the parameters to modify the memory allocation settings.

This is what I see in that file:

# VM configuration
# Where to find JVM, if {java.home}/jre exists then that JVM is used
# if not then it must be the path to the JRE itself
# If no java.home is specified a VM is located by looking in these places in this
# order:
#  1) bin directory for java.dll (windows) or lib/<ARCH>/ (unix)
#  2) ../jre
#  3) registry (windows only)
#  4) JAVA_HOME env var plus jre (ie $JAVA_HOME/jre)

# Arguments to VM
java.args=-server -Xmx512m -XX:MaxPermSize=192m -XX:+UseParallelGC -Xbatch -Dcoldfusion.rootDir={application.home}/../{application.home}/../lib/coldfusion.policy{application.home}/../lib/neo_jaas.policy -Dcoldfusion.classPath={application.home}/../lib/updates,{application.home}/../lib,{application.home}/../gateway/lib/,{application.home}/../wwwroot/WEB-INF/cfform/jars -Dcoldfusion.libPath={application.home}/../lib

# commas will be converted to platform specific separator and the result will be passed
# as -Djava.ext.dirs= to the VM

# where to find shared libraries

# set the current working directory - useful for Windows to control
# the default search path used when loading DLLs since it comes
# before system directory, windows directory and PATH

# JVM classpath


> # Arguments to VM
> java.args=-server -Xmx512m

IIRC, those are the main memory settings configured from the CF admin.  But it doesn't look like it's been changed. At least not to 4G.  The file location I mentioned was just for reference ie for the developer version/built in web server.  What's your actual configuration (web server, etc..)?

aescribensAuthor Commented:
So to be clear, the three settings I am referring to are the following:

- Maximum Size Of Post Data
- Request Throttle Threshold
- Request Throttle Memory

They were all set to 4Gigs (4096MB to be exact).

I did a search on "jvm.config" and only found 1 file in the following directory: C:\ColdFusion8\runtime\bin\jvm.config
Oh, that's different!  Those settings should be stored in C:\ColdFusion8\lib\neo-runtime.xml.  CF _should_ make an auto back-up of the file (same directory) before applying the changes. Look for a file named  neo-runtime.bak.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
> Look for a file named  neo-runtime.bak.

   You can either edit the existing neo-runtime.xml file or replace it with the backup file.  As mentioned before,
   these are key configuration files. So always make backups first.
aescribensAuthor Commented:
Yes!  I found the neo-runtime.xml and neo-runtime.bak files... Do I simply edit the neo-runtime.xml file, save it and it should work?
aescribensAuthor Commented:
It worked!!!!  I had to restart the CF App Service... But I'm back up!  Thank You!   :)
It's probably simpler to just rename the backup file ie  neo-runtime.bak => neo-runtime.xml ... than to edit manually.  But either should work.  You'll may have to shutdown CF though.
Sorry, our posts collided.  Great! Glad to here everything's back to normal now.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Servers

From novice to tech pro — start learning today.