exist
exist copied to clipboard
Service memory settings on Windows
After struggling with eXist running out of memory despite there being plenty of memory available, I've found a part of the Windows installer setup code that might need to be updated:
https://github.com/eXist-db/exist/blob/f3424d7c44d2cc7d8eb722e0701709de6e497a34/exist-core/src/main/java/org/exist/launcher/WindowsServiceManager.java#L89-L90
I used prunmgr.exe //ES//eXist-db
to inspect the details of the service that was created by the eXist-db Launcher. The memory settings specified in the launcher were not being used.
I used prunsrv-x86_64.exe to manually install a Service for eXist-db duplicating the same settings that were created by the Launcher with one change. The minimum and maximum memory values need to be provided as integers. For example:
--JvmMs=1024 --JvmMx=4096
The eXist-db Launcher adds "m" to the value ( --JvmMs=1024m --JvmMx=4096m) but the "m" causes the value to not be used.
Which version of eXist and JDK?
Hmmm, interesting as the JVM really should be started with -Xmx1024m and -Xmx4096m - this will fail on 32bit JVMs though
The eXist version is 6.0.1 and JVM is OpenJDK11U-jdk_x64_windows_hotspot_11.0.16_8