Skip to content

Commit 59c658d

Browse files
committed
[bugfix] Exit on Java OutOfMemoryError
Closes eXist-db/exist#5439
1 parent ed55b33 commit 59c658d

File tree

3 files changed

+11
-5
lines changed

3 files changed

+11
-5
lines changed

exist-core/src/main/java/org/exist/launcher/LauncherWrapper.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,8 @@ protected String getJavaCmd() {
186186
}
187187

188188
protected void getJavaOpts(final List<String> args, final Properties launcherProperties) {
189+
args.add("-XX:+ExitOnOutOfMemoryError");
190+
189191
getLauncherOpts(args, launcherProperties);
190192

191193
boolean foundExistHomeSysProp = false;

exist-core/src/main/java/org/exist/launcher/WindowsServiceManager.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,8 @@ public void install() throws ServiceManagerException {
125125
final Optional<String> minMemory = asJavaCmdlineMemoryString(launcherProperties.getProperty(LAUNCHER_PROPERTY_MIN_MEM, "128"));
126126

127127
final StringBuilder jvmOptions = new StringBuilder();
128-
jvmOptions.append("-Dfile.encoding=UTF-8");
128+
jvmOptions.append("-XX:+ExitOnOutOfMemoryError");
129+
jvmOptions.append(";-Dfile.encoding=UTF-8");
129130
for (final String propertyName : System.getProperties().stringPropertyNames()) {
130131
if (propertyName.startsWith("exist.") ||
131132
propertyName.startsWith("jetty.") ||

exist-distribution/pom.xml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -882,10 +882,13 @@
882882
<defaultJvmSettings>
883883
<initialMemorySize>128m</initialMemorySize>
884884

885-
<!-- Option to generate JDWP debuggable app -->
886-
<!-- extraArguments>
887-
<extraArgument>-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005</extraArgument>
888-
</extraArguments -->
885+
<extraArguments>
886+
887+
<extraArgument>-XX:+ExitOnOutOfMemoryError</extraArgument>
888+
889+
<!-- Option to generate JDWP debuggable app -->
890+
<!-- extraArgument>-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005</extraArgument -->
891+
</extraArguments>
889892

890893
<systemProperties>
891894
<systemProperty>file.encoding=UTF-8</systemProperty>

0 commit comments

Comments
 (0)