jvm-profiling-tools / honest-profiler

A sampling JVM profiler without the safepoint sample bias
https://github.com/RichardWarburton/honest-profiler/wiki
MIT License
1.25k stars 146 forks source link

SIGSEGV on JRE 8.0_144-b01 #232

Closed rhuddleston closed 6 years ago

rhuddleston commented 6 years ago

Stack: [0x00007f3c5cac6000,0x00007f3c5cbc7000], sp=0x00007f3c5cbc5990, free space=1022k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [liblagent.so+0x7851] OnThreadStart(jvmtiEnv*, JNIEnv, _jobject)+0x201 V [libjvm.so+0x79c9a0] JvmtiExport::post_thread_start(JavaThread)+0x190 V [libjvm.so+0xa798e5] JavaThread::run()+0x165 V [libjvm.so+0x92a338] java_start(Thread)+0x108 C [libpthread.so.0+0x86b4]

This same crash has occurred in two different services. I have more details as well to go along with this as well.

nitsanw commented 6 years ago

Are you running latest build? what OS are you on? can you provide instructions to reproduce?

RichardWarburton commented 6 years ago

Also - does it happen deterministically in your environment?

rhuddleston commented 6 years ago

It happens randomly on our clusters. I don't have steps to reproduce. I'm on the version downloaded from here:

http://insightfullogic.com/honest-profiler.zip

This is in a docker container:

https://hub.docker.com/r/quiq/java/

Here is the Dockerfile:

https://github.com/Quiq/dockerfiles/blob/master/java/alpine/Dockerfile

nitsanw commented 6 years ago

@rhuddleston I'm not much of a Docker person(never used it, sort of understand what's it about). I'll have a look at the code. AFAIK we've never tested on AlpineLinux, though I doubt it's an issue it would be good to eliminate it as a potential issue. If the issue is blocking for you (or if this is of interest to you) you can try async-profiler as an alternative perhaps.

rhuddleston commented 6 years ago

It's not currently a blocker for me as it's not happening very often just wanted to get this issue out here in case it was a known issue or to help track down the root cause

RichardWarburton commented 6 years ago

I will take a look into this one when I have a bit of time (probably next week)

nitsanw commented 6 years ago

IIUC: http://en.cppreference.com/w/cpp/language/initialization

This might be an init order issue for configuration or threadMap.

ikavalio commented 6 years ago

Some threadMap fixes were merged in #226 and I don't think that zip above has them.

RichardWarburton commented 6 years ago

In that case I'm going to close this issue. Please re-open it if the current version of the software still has the bug.