How to increase or modify java heap size for the Admin Server in OpenEdge ?

por | 3 octubre, 2013

http://knowledgebase.progress.com/articles/Article/P99089?popup=true

 

Article Number 000022572
Environment All Supported Operating Systems
OpenEdge 10.x, 11.x
OpenEdge Server Technology Category: AdminServer
Question/Problem Description
How to increase or modify java heap size for the Admin Server in OpenEdge ?
How to increase java memory for Admin Server in OpenEdge?
How to set the JVMARGS in Release 10?
How to adjust JVM memory heap size in OE 10?
How to address java.lang.OutOfMemoryError ?
Clarifying Information
Error Message
Defect/Enhancement Number
Cause
Resolution

JVMARGS in OpenEdge release 10.x and 11.x are set in the AdminServerPlugins.properties file and also in ubroker.properties file.
These are both located in the $DLC/properties directory.

JVMARGS may be set the same for all processes/plugins started by the AdminServer if set under the [PluginPolicy.Progress.AdminServer] section of the AdminServerPlugins.properties file or each process may be tailored differently in their separate control area. (eg NameServer, AppServer, WebSpeed, DataServer …)

jvmArgs can also be set in ubroker.properties file under specific broker definition, this setting in ubroker.properties file will override any setting in AdminServerPlugins.properties.

Following examples demonstrate the information above:

-Xms <size> set initial Java heap size
-Xmx <size> set maximum Java heap size

1.  This example sets the JVMARGS maximum memory limit to 256meg for all AdminServer processes unless it is overridden by the individual process setting:

AdminServerPlugins.properties:
[PluginPolicy.Progress.AdminServer]
pluginclasspath=!{value-of:classpath}
classpath=C:\OpenEdge10B\DLC/java/ext/jmxri.jar,C:\OpenEdge10B\DLC/java/ext/mgmt_agent.jar,C:\OpenEdge10B\DLC/java/ext/mgmt_client.jar,C:\OpenEdge10B\DLC/java/ext/mgmt_config.jar,C:\OpenEdge10B\DLC/java/ext/sonic_Client.jar,C:\OpenEdge10B\DLC/java/progress.jar,C:\OpenEdge10B\DLC/java/osmetrics.jar,C:\OpenEdge10B\DLC/java/jdbc.jar
jvmargs=-Xmx256m -Djava.awt.headless=true -Xbootclasspath/a:C:\Fathom-OE10.0b\fm/jars/pja.jar

2.  This example will over-ride the global setting in step 1, and set the amount of memory to be used by the SonicMQ Adapter to 512m.

AdminServerPlugins.properties:
#
# Policy for the 4GL SonicMQ Adapter
#
[PluginPolicy.Progress.SonicMQ]
pluginclasspath=C:\OpenEdge10B\DLC/sonic/MQ7.5/lib/sonic_Client.jar,C:\OpenEdge10B\DLC/java/progress.jar
classpath=C:\OpenEdge10B\DLC/sonic/MQ7.5/lib/sonic_Client.jar,C:\OpenEdge10B\DLC/java/progress.jar
jvmargs=-Xmx512m

 

3. This example will over-ride the global setting in step 1 for the asbroker1, setting to use minimum 128m and maximum 1g amount of memory. This change should be done in the ubroker.properties file.

ubroker.properties:
[UBroker.AS.asbroker1]
jvmArgs=-Xms128m -Xmx1024m

4. This example will over-ride the global setting in step 1 and set the jvmargs to use minimum 64m for all unified brokers under the AdminServer (eg: (NameServer, AppServer, WebSpeed, DataServer etc) in one place:

AdminServerPlugins.properties:
[PluginPolicy]
jvmargs=-Xms64m

It is recommended to use the same size for the minimum and maximum heap size to reduce the periodic pause time that happens as a result of the cleaning up of the garbage collection to free-up the heap space.

After the changes are made, re-start the AdminServer in order for the settings to take effect.

For earlier Progress versions please refer to Solution P79525, «How do I modify Java heap size for Progress 9 ?»

Workaround
Notes
Attachment