You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On Mac M4 running macOS 15.2, I encountered a JVM crash when using Docker images with Java applications. This issue occurs with the following Docker tags:
• latest
• latest-dev
• The past three released versions.
Error Details
The JVM crashes with the following error:
A fatal error has been detected by the Java Runtime Environment:
SIGILL (0x4) at pc=0x0000ffff7ff3fc5c, pid=393, tid=404
...
Problematic frame:
j java.lang.System.registerNatives()V+0 [email protected]
After investigating, this crash is caused by the JVM’s attempt to determine the SVE (Scalable Vector Extensions) vector length using the prctl system call. On macOS 15.2, this call is forbidden by the sandboxing mechanism, causing the JVM to interpret an invalid vector length and crash.
Workaround
Adding the environment variable JAVA_TOOL_OPTIONS="-XX:UseSVE=0" resolves the issue by disabling SVE optimizations in the JVM.
Solution for Docker Compose
To fix this issue, add the following to the environment section of your Docker Compose file:
This is an ongoing issue and the above solution should only be temporary. I suspect this might be fixed soon by the underlying frameworks. However, I am posting for anyone that might have this exact issue in the coming days and prevent them wasting lots of time figuring this out.
The problem
On Mac M4 running macOS 15.2, I encountered a JVM crash when using Docker images with Java applications. This issue occurs with the following Docker tags:
• latest
• latest-dev
• The past three released versions.
Error Details
The JVM crashes with the following error:
After investigating, this crash is caused by the JVM’s attempt to determine the SVE (Scalable Vector Extensions) vector length using the prctl system call. On macOS 15.2, this call is forbidden by the sandboxing mechanism, causing the JVM to interpret an invalid vector length and crash.
Workaround
Adding the environment variable JAVA_TOOL_OPTIONS="-XX:UseSVE=0" resolves the issue by disabling SVE optimizations in the JVM.
Solution for Docker Compose
To fix this issue, add the following to the environment section of your Docker Compose file:
This ensures the JVM starts with the -XX:UseSVE=0 option and prevents the crash.
Are you using the latest released version?
Have you read the troubleshooting page?
What type of installation are you running?
signal-cli-rest-api Docker Container
In which mode are you using the docker container?
Normal Mode
What's the architecture of your host system?
arm64
Additional information
No response
The text was updated successfully, but these errors were encountered: