Case:  some project is processing documents from a document-management system (Hummingbird) through a webservice on an Oracle application server ( Suse Linux 64-bits, version 9.

Documents with a size above 5MB are not processed, no errors in logging or what so ever (you would expect outofmemory somewhere..). Java options of the container OC4J_BI_FORMS has been raised to ” -Xmx1024M -Xms1024M “.  Service Request to Oracle.

Solution Oracle came up with  (and it worked!):

Edit ORACLE_HOME/forms/server/default.env (or your own <application>.env ) and increase the JVM memory using “_JAVA_OPTIONS” environment variable. For example: _JAVA_OPTIONS=-Xmx1024m

Yes: 1GB.  Not sure I can image what the effect on the memory consumption is within the container when there are hundreds requests at the same time…

We were able to lower the environment variable to 128M in the test-environment for the time being, but no tests have been done yet for measuring the memory consumption under some load… Will update this post as soon we’ve done this.

Update May 7th, 2009. Not in production yet, but ran some tests. No problems so far with the memory.

Note 562561.1 – Webservice fails to run with java.langOutOfMemoryError, was a match too, but I couldn’t find the error in my logging.