Skip to content

Hazelcast 5.5.0 & 5.5.0-jdk21 crash on Apple M4 (ARM64) – SIGILL - Works with jdk17Β #1138

@m4dm4rtig4n

Description

@m4dm4rtig4n

❌ Hazelcast 5.5.0 & 5.5.0-jdk21 crash on Apple M4 (ARM64) – SIGILL in System.registerNatives(), works with jdk17

🧩 Problem

Certain official Hazelcast 5.5.0 Docker images crash on startup with SIGILL when run on Apple Silicon M4 (ARM64), while others work correctly.


πŸ§ͺ Tested Docker Images

Docker Image Status
hazelcast/hazelcast:5.5.0 ❌ Crash
hazelcast/hazelcast:5.5.0-jdk21 ❌ Crash
hazelcast/hazelcast:5.5.0-jdk17 βœ… Works

▢️ Reproduction

Run the image directly:

docker run -it hazelcast/hazelcast:5.5.0
# or
docker run -it hazelcast/hazelcast:5.5.0-jdk21

Crash occurs immediately at JVM bootstrap.


πŸ’₯ Crash Log (Excerpt)

# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0x0000ffff81270c5c, pid=1, tid=27
#
# Java VM: OpenJDK 64-Bit Server VM (21.0.4+7-alpine-r0, linux-aarch64)
# Problematic frame:
# j  java.lang.System.registerNatives()V+0 java.base
#
# Core dump written to: /opt/hazelcast/core
# Error log file: /tmp/hs_err_pid1.log

No JAVA_OPTS or custom config needed. The crash happens on clean container start.


πŸ“¦ Environment

  • Hazelcast version: 5.5.0
  • Host architecture: Apple Silicon – Apple M4 (ARM64)
  • Host OS: macOS (Docker Desktop ARM64)
  • Container base OS: Alpine Linux
  • Java version: OpenJDK 21.0.4+7-alpine-r0 (64-bit, aarch64)

πŸ” Hypothesis

The issue appears related to the Alpine-based OpenJDK 21 ARM64 build used in the Docker images.
It may be due to an invalid instruction or native library incompatibility in JDK 21 on newer ARMv8.6+ (Apple M4).

JDK 17-based images work as expected, which suggests the issue is specific to JDK 21 Alpine builds for ARM.

βœ… As a workaround, the crash can be avoided by disabling SVE instructions using the following option:

hazelcast:
  javaOpts: -XX:UseSVE=0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions