Start/notes.ini Parameters/HTTPJVMMaxHeapSize

HTTPJVMMaxHeapSize

Parameter: HTTPJVMMaxHeapSize
Short description: Sets the maximum heap size of the JVM used by the Domino HTTP task (XPages, Servlets, Java DSAPI). Default: 1 GB.

Profile

Parameter
HTTPJVMMaxHeapSize
Component
Server (HTTP task / nhttp)
Category
HTTP / Web (JVM)
Available since
9.0.x (per KB0029777)
Default
1 GB on HCL Domino Server
Values
Bytes or with suffix M/MB/G/GB
Scope
Exclusively the HTTP process
Activation
Restart of the HTTP task (tell http restart)

Description

In Domino there are two separate controls for JVM heap size:
  • HTTPJVMMaxHeapSize sets the heap only for the HTTP process (nhttp) — i.e. for everything that uses Java in the HTTP stack (XPages, Servlets, Java DSAPI).
  • JavaMaxHeapSize (separate parameter) sets the heap for all other Domino server processes that load a JVM (e.g. Agent Manager amgr, periodic Java agents, runjava).
According to HCL Customer Support (KB0029777), the default value on HCL Domino Server is 1 GB. For JavaMaxHeapSize the default is 256 MB.

Examples

HTTPJVMMaxHeapSize=1024M HTTPJVMMaxHeapSize=2G HTTPJVMMaxHeapSize=67108864

Practical notes

  • OutOfMemory in the HTTP task – messages of the type java.lang.OutOfMemoryError from nhttp typically indicate that HTTPJVMMaxHeapSize is set too low. Heap dumps and verbose GC can help rule out a leak before raising the value.
  • Address space – on 64-bit systems there is plenty of room; on 32-bit systems every additionally reserved heap reduces the available address space for nhttp.
  • Activation – changes take effect on the next HTTP restart (tell http restart on the server console or full server restart).
  • Note the separation – raising JavaMaxHeapSize alone does not change the HTTP heap, and vice versa.

Sources (HCL Product Documentation)