Skip to content

Memory and JVM

Set how much memory, how many CPUs and which temporary folder the MetaMiner Server (MMS) Java process uses.

How it works

MMS runs in its own Java virtual machine (JVM). Its maximum memory and temp folder are passed on the command line of the metaminer Windows service. MMA writes that command line for you when you save the System settings, and also each time MMA starts.

Setting Where Default Takes effect
Maximum memory (GB) Settings > System > Memory allocation for MetaMiner's JVM: 2 GB or the current maximum, whichever is larger Next server start
Cap at half of physical memory Settings > System > Limit max memory to half of physical memory On Immediately in the dialog
CPUs used Settings > System > Maximum Allowed CPUs: 8 Next server start
Java temp folder Settings > System > Java Temp Folder server\javatemp Next server start
MetaQuery agent memory Settings > MetaQuery > Memory allocation for MetaQuery agent: 2 GB Next server start

MMS sets its initial memory to 2 GB (or the maximum, if smaller) and grows up to the maximum as needed.

Image of the Settings dialog, System page, Java Memory Settings with 16 GB selected

../../images/admin/memory-settings.png

Steps

  1. In MMA, open Preferences > Settings... > System.
  2. Set Memory allocation for MetaMiner's JVM:.
  3. Optional: set Maximum Allowed CPUs: and the Java Temp Folder.
  4. Click OK, then click Yes when MMA offers to restart the server.

Sizing guidance

  • Leave memory for the operating system, the embedded MMDB and the MetaQuery agent. With Limit max memory to half of physical memory on, MMA does not let you assign more than half.
  • Large environments with many Web Intelligence documents need more memory. See Sizing and Capacity.
  • Before starting, MMA checks free memory against the allocation: below 10% free it refuses to start, below 20% it asks for confirmation.

Do not set memory in MetaMinerServer.ini

The service command line holds the memory value. -Xmx or -Xms lines added to MetaMinerServer.ini conflict with it.

Verify

  • In Windows Services, open the metaminer service properties: Path to executable ends with -Xms<n>g -Xmx<n>g "-Djava.io.tmpdir=<folder>".
  • server\logs\server.log lists the JVM arguments at startup.

Troubleshooting

Out of memory errors or slow pulls

Raise the memory allocation, check that the machine has free physical memory, and see Performance and Memory. On an out-of-memory error the JVM writes a heap dump to the server folder; send it to Infolytik Support only if asked, as it can be very large.

The temp folder fills up

The temp folder holds unpacked BIARs and archives. Move it to a volume with 30 GB or more free.

Next steps