Out of memory error

Symptom
Out of memory errors are reported in the log files when the BigFix® Remote Control Server is started. Failed to instantiate heap is reported in them.
Causes
There is not enough memory available to run the application. The reason for the error is that the maximum memory that is allocated to the heap is too high, and can be affected by other applications that are running or installed.

During installation, the installer attempts to set up the Remote Control application to use up to 70% of available RAM. The percentage is lowered if a Java virtual machine (JVM) cannot be started. However, if other software is installed, an out of memory error might also be reported in the Remote Control log files.

Solution

The solution to this problem is to use a supplied script to manually set the memory parameters to a lower value. This script, can be found in the Remote Control installation directory. Use the script to set the memory parameters and the number of threads and web connections.

  • tmem.cmd - for Windows® systems.
  • tmem.sh - for UNIX based systems.
Run the following command from the Remote Control installation directory:
tmem.cmd minmem maxmem 
Note: Use tmem.sh for UNIX based systems.
minmem; maxmem
Sets the minimum and maximum memory to be allocated.
Note: The 32-bit Java that is supplied in 32-bit eWAS can use a maximum of 2.7 GB only, no matter how much RAM is available.

You can also use the tmem.cmd and tmem.sh command to adjust the following parameters.

maxwebconn
Sets the number of web connections allowed. The default is 85 and can increase to 175.
maxthreads; minthreads
Sets the minimum and maximum threads allowed. Maximum threads are 50, increasing to 150.

To edit these parameters in version 10.x.x, complete the following steps:

  1. Edit trcsetup.cmd or trcsetup.sh.
  2. Edit the line that contains the call to the memory.cmd file. For example, C:\TRC\server\tools\memory.cmd 163 49 135 1

    Where
    • maxwebconn = parameter 1 (163)
    • minthreads = parameter 2 (49)
    • maxthreads = parameter 3 (135)

    Do not edit parameter 4. Keep the value 1.

  3. Change the required values.
  4. Save the trcsetup file.
  5. Type the following command.
    trcsetup userid password certpassword
    Where userid and password are the database connection credentials and certpassword is your certificate file password.
    Note: Derby does not have database credentials, therefore use user ID and password for the credentials. Type the following command when you are using Derby:

    trcsetup userid password certpassword