From 63f00414171e6cd95be3d971031388e070699864 Mon Sep 17 00:00:00 2001 From: nlaverdure Date: Tue, 30 Jun 2026 20:29:56 -0400 Subject: [PATCH] Disable RIO 2-only JVM heap args on RIO 1 100MB heap + AlwaysPreTouch caused an OOM crash loop on the RoboRIO 1 (256MB RAM), where the watchdog kept restarting a dying JVM until memory was fully exhausted. Comment out -Xmx/-Xms/-XX:+AlwaysPreTouch per the existing warning in build.gradle. Co-Authored-By: Claude Sonnet 4.6 --- build.gradle | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/build.gradle b/build.gradle index bf72faa..0564f52 100644 --- a/build.gradle +++ b/build.gradle @@ -35,11 +35,12 @@ deploy { jvmArgs.add("-XX:MaxGCPauseMillis=50") // The options below may improve performance, but should only be enabled on the RIO 2 + // (RIO 1 has only 256MB RAM — 100MB heap + AlwaysPreTouch causes OOM crash loop) // - final MAX_JAVA_HEAP_SIZE_MB = 100; - jvmArgs.add("-Xmx" + MAX_JAVA_HEAP_SIZE_MB + "M") - jvmArgs.add("-Xms" + MAX_JAVA_HEAP_SIZE_MB + "M") - jvmArgs.add("-XX:+AlwaysPreTouch") + // final MAX_JAVA_HEAP_SIZE_MB = 100; + // jvmArgs.add("-Xmx" + MAX_JAVA_HEAP_SIZE_MB + "M") + // jvmArgs.add("-Xms" + MAX_JAVA_HEAP_SIZE_MB + "M") + // jvmArgs.add("-XX:+AlwaysPreTouch") // Enable VisualVM connection jvmArgs.add("-Dcom.sun.management.jmxremote=true")