pyroscope-java icon indicating copy to clipboard operation
pyroscope-java copied to clipboard

Profiler crashes with SIGSEGV on OpenJDK 11

Open Gerrit-K opened this issue 1 year ago • 2 comments

Hey all!

The profiler occasionally causes a segmentation fault in our application with the following logs:

#
# A fatal error has been detected by the Java Runtime Environment:
#  SIGSEGV (0xb) at pc=0x00007efea3292d5a, pid=1, tid=2563
# JRE version: OpenJDK Runtime Environment Temurin-11.0.24+8 (11.0.24+8) (build 11.0.24+8)
# Java VM: OpenJDK 64-Bit Server VM Temurin-11.0.24+8 (11.0.24+8, mixed mode, tiered, compressed oops, g1 gc, linux-amd64)
# Problematic frame:
# C  [libasyncProfiler-linux-musl-x64-70e751fa84d39dcf2daa802a20d7378ca9c8f2.so+0xa2d5a]  Profiler::recordSample(void*, unsigned long long, EventType, Event*)+0x6a
#
# Core dump will be written. Default location: Core dumps may be processed with "/var/mnt/core-dump-handler/cdc -c=%c -e=%e -p=%p -s=%s -t=%t -d=/var/mnt/core-dump-handler/cores -h=%h -E=%E" (or dumping to //core.1)
# An error report file with more information is saved as:
# /tmp/hs_err_pid1.log
#
# If you would like to submit a bug report, please visit:
#   https://github.com/adoptium/adoptium-support/issues

I've seen a few other issues (open and closed) about segmentation faults, but none of them matched our java version and the problematic frame Profiler::recordSample. If it is indeed a duplicate, please feel free to close and link to that 🙏 I unfortunately don't have the /tmp/hs_err_pid1.log anymore, but if it helps, I can try to reproduce the error and collect the logs.

Regarding the JDK version, we're running it in the metabase/metabase-enterprise image, so we unfortunately cannot influence it (in case the answer was "your JDK is too old").

Gerrit-K avatar Oct 29 '24 10:10 Gerrit-K

Hey @Gerrit-K, thanks for the report.

Could you confirm what version of the profiler (pyroscope-java) you are using? I see a few related and fixed issues in the underlying profiling engine (https://github.com/async-profiler/async-profiler) so I want to see if we need to perform an update.

aleks-p avatar Oct 30 '24 11:10 aleks-p

Ah sorry, missed that - it's the latest, v0.14.0, downloaded from the release

Gerrit-K avatar Oct 30 '24 15:10 Gerrit-K