Increase JBOSS Memory Allocation in Digitool
Overview
Maintenance jobs may be hanging without finishing for no apparent reason. In the server.log you see errors like:
"OutOfMemoryError: GC overhead limit exceeded"
This means that JBOSS ran out of memory and the Java Garbage collector was unable to free working space from the memory heap.
More memory can be allocated to JBOSS to try to avoid this situation.
Pre-Checks
The JBOSS memory allocation is configured in this file:
To find out the current configuration enter the following command at the terminal as dtl user:
grep "jboss." $jdtlh/profile/global.properties
Example output:
jboss.minmemory=256m
jboss.maxmemory=1024m
The above example shows a minimum and maximum memory allocation.
You should determine how much RAM is present on the system, and make an incremental increase, dependent on how much memory is actually available on the server.
To Allocate More Memory
- Edit the two lines in the global.properties with the required memory allocation. In this example we will increase to 2GB:
jboss.minmemory=2048m
jboss.maxmemory=2048m - Run set_globals.sh to activate the configuration:
At the terminal enter alias j_bin to switch to the directory containing set_globals.sh (usually /exlibris/dtl/j3_1/digitool/home/system/bin)
at the terminal enter ./set_globals.sh - Restart JBOSS:
To shut down:
$jdtlh_bin/jboss_shutdown.sh
To start up:
$jdtlh_bin/jboss_startup.sh
Verify the new configuration
Once the above steps have been completed and JBOSS has been restarted enter the below command at the terminal:
ps -ef | grep java | grep --color Xmx
The Xmx figure is the maximum allocation, and Xms is the minimum allocation