adoptium / adoptium/adoptium-support

JDK 17 crashes when running Payara with APM agent

Open
#588 3 comments 0 reactions 0 assignees View on GitHub
bug jbs:needs-report
Dominant language
No language data
Stars
59
Forks
13
PR merge metrics
No merged PRs in 30d

Description

### Please provide a brief summary of the bug

When deploying an application to Payara 5.2022.3 with the AppDynamics agent, the JVM crashes.
```
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007ff25a01ca50, pid=178, tid=279
#
# JRE version: OpenJDK Runtime Environment Temurin-17.0.4.1+1 (17.0.4.1+1) (build 17.0.4.1+1)
# Java VM: OpenJDK 64-Bit Server VM Temurin-17.0.4.1+1 (17.0.4.1+1, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V [libjvm.so+0x82fa50] java_lang_String::create_from_symbol(Symbol*, JavaThread*)+0x20
#
# Core dump will be written. Default location: /opt/payara/glassfish/domains/domain1/config/core.178
#
# If you would like to submit a bug report, please visit:
# https://github.com/adoptium/adoptium-support/issues
#
```

### Please provide steps to reproduce where possible

_No response_

### Expected Results

No crash

### Actual Results

It crashes.
I found a similar bug report on the Jetbrains JDK 17: https://youtrack.jetbrains.com/issue/JBR-4697/Generic-SIGSEGV-at-libjvm-javalangStringcreatefromsymbol

### What Java Version are you using?

OpenJDK 64-Bit Server VM Temurin-17.0.4.1+1 (17.0.4.1+1, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)

### What is your operating system and platform?

Alpine Linux 3.16.2, running in Docker.

### How did you install Java?

From base Docker image eclipse-temurin:17.0.4.1_1-jdk-alpine

### Did it work before?

```shell
It works with JDK 11 (base image eclipse-temurin:11.0.15_10-jdk-alpine)
It works when the AppDynamics agent is disabled, or when running AppDynamics with option `-Dappdynamics.agent.disable.retransformation=true`, so it seems related to class transformation.
```

### Did you test with other Java versions?

_No response_

### Relevant log output

_No response_

Contributor guide

Open the contributing guide

Research direction

Start with the reported SIGSEGV in java_lang_String::create_from_symbol and compare the working JDK 11 setup with JDK 17 on Alpine Linux in Docker. Check behavior with the AppDynamics agent disabled and with -Dappdynamics.agent.disable.retransformation=true. Done means Payara runs without a JVM crash while class transformation remains enabled.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, java, linux
Domain
devops, operating-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.