solute a JVM crash prblem
最近应用在执行过程中忽然报错,然后应用就崩溃啦,报错信息如下:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f2131436325, pid=198, tid=139778620061440
#
# JRE version: Java(TM) SE Runtime Environment (8.0_20-b26) (build 1.8.0_20-b26)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.20-b23 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# V [libjvm.so+0x858325] LoadKlassNode::make(PhaseGVN&, Node*, Node*, TypePtr const*, TypeKlassPtr const*)+0x45
#
# Core dump written. Default location: /home/admin/core or core.198
#
# An error report file with more information is saved as:
# /home/admin/hs_err_pid198.log
#
# Compiler replay data is saved as:
# /home/admin/replay_pid198.log
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
#
经查看日志文件发现如下错误,以为是mysql jdbc版本的问题,将mysql jdbc的版本由8.0.22降到5.1.47,结果同样崩溃掉:
hs_err_pid198.log
Stack: [0x00007f20beeef000,0x00007f20beff0000], sp=0x00007f20befecda0, free space=1015k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x858325] LoadKlassNode::make(PhaseGVN&, Node*, Node*, TypePtr const*, TypeKlassPtr const*)+0x45
V [libjvm.so+0x551cb6] Parse::catch_inline_exceptions(SafePointNode*)+0x946
V [libjvm.so+0x908b0a] Parse::do_exceptions()+0xba
V [libjvm.so+0x90b6f0] Parse::do_one_block()+0x180
V [libjvm.so+0x90b967] Parse::do_all_blocks()+0x127
V [libjvm.so+0x90fd58] Parse::Parse(JVMState*, ciMethod*, float, Parse*)+0x7b8
V [libjvm.so+0x3e7d09] ParseGenerator::generate(JVMState*, Parse*)+0x99
V [libjvm.so+0x4931cc] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool)+0x126c
V [libjvm.so+0x3e67e8] C2Compiler::compile_method(ciEnv*, ciMethod*, int)+0x198
V [libjvm.so+0x49ba4a] CompileBroker::invoke_compiler_on_method(CompileTask*)+0xc8a
V [libjvm.so+0x49e420] CompileBroker::compiler_thread_loop()+0x620
V [libjvm.so+0xa2990f] JavaThread::thread_main_inner()+0xdf
V [libjvm.so+0xa29a3c] JavaThread::run()+0x11c
V [libjvm.so+0x8e75f8] java_start(Thread*)+0x108
C [libpthread.so.0+0x7dc5] start_thread+0xc5
Current CompileTask:
C2:75580220 26874 ! 4 com.mysql.cj.NativeSession::execSQL (579 bytes)
后来发现是JDK版本太低的问题;
后来将JDK版本由8.0.22升级到8.0.197解决该问题。