adoptium / adoptium/adoptium-support
JDK 17 crashes when running Payara with APM agent
- 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
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