簡體   English   中英

Jvm崩潰:Java運行時環境檢測到致命錯誤

[英]Jvm crash :fatal error has been detected by the Java Runtime Environment

我在實時服務器上發生了tomcat崩潰,生成了hs_err_pid文件。這里有一個有問題的框架 - > _wordcopy_fwd_dest_aligned + 0x54。 我搜索了jvm崩潰的所有類似情況,但無法找到這個有問題的框架的含義。任何建議?

 #
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGBUS (0x7) at pc=0x00007f61087e3cb4, pid=18886, tid=140051814115072
#
# JRE version: 6.0_37-b06
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.12-b01 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  [libc.so.6+0x89cb4]  _wordcopy_fwd_dest_aligned+0x54
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x00007f6044017000):  JavaThread "ajp-bio-10009-exec-97" daemon [_thread_in_vm, id=28541, stack(0x00007f605a916000,0x00007f605aa17000)]

siginfo:si_signo=SIGBUS: si_errno=0, si_code=2 (BUS_ADRERR), si_addr=0x00007f6059d3f9f8

Registers:
RAX=0x0000000000000038, RBX=0x00007f6059d3f9f9, RCX=0x0000000000000001, RDX=0x000000000000004c
RSP=0x00007f605aa14298, RBP=0x00000006e903e928, RSI=0x00007f6059d3f9f8, RDI=0x00000006e903e928
R8 =0x0000000000000008, R9 =0x00007f61085ecb38, R10=0x00007f60fd010ec1, R11=0x00007f61085d4090
R12=0x00000006e903e928, R13=0x0000000000000268, R14=0x00007f61085f0bc0, R15=0x00007f605aa14430
RIP=0x00007f61087e3cb4, EFLAGS=0x0000000000010202, CSGSFS=0x000000000000e033, ERR=0x0000000000000004
TRAPNO=0x000000000000000e

Top of Stack: (sp=0x00007f605aa14298)
0x00007f605aa14298:   00007f6059d3f9f9 00000006e903e928
0x00007f605aa142a8:   00007f61087dd8ae 0000000000000004
0x00007f605aa142b8:   00007f605aa15b60 00007f605aa142e0
0x00007f605aa142c8:   00007f6044017000 0000000000000268
0x00007f605aa142d8:   00007f6107f313eb 00007f605aa14350
0x00007f605aa142e8:   00007f6108392c00 0000000000000010
0x00007f605aa142f8:   00007f6059d3f9f9 00007f6044017000
0x00007f605aa14308:   00007f60a11b4338 00007f6044017000
0x00007f605aa14318:   00000000ffffffff 00007f6108430701
0x00007f605aa14328:   00000007e00cf808 0000000000000000
0x00007f605aa14338:   00000007e00cf808 00007f605aa14450
0x00007f605aa14348:   00007f6044017000 00007f605aa143f0
0x00007f605aa14358:   00007f60fd010eee 0000000000000268
0x00007f605aa14368:   00007f6107ef6a6c 0000000000000000
0x00007f605aa14378:   00007f60a11b4338 0000000000000004
0x00007f605aa14388:   00000000ffffffff 00007f6108430701
0x00007f605aa14398:   0000000000001389 00007f605aa14460
0x00007f605aa143a8:   00007f6107ef63ad 00007f605aa143b0
0x00007f605aa143b8:   0000000000000000 00007f605aa14450
0x00007f605aa143c8:   00000007e00d2508 0000000000000000
0x00007f605aa143d8:   00000007e00cf808 0000000000000000
0x00007f605aa143e8:   00007f605aa14410 00007f605aa14498
0x00007f605aa143f8:   00007f60fd005a82 0000000000000000
0x00007f605aa14408:   00007f60fd00df58 0000000000000268
0x00007f605aa14418:   0000000400000002 0000000000000010
0x00007f605aa14428:   00007f60a11b4340 00000006e903e918
0x00007f605aa14438:   00007f6059d3f9f9 0000000000001389
0x00007f605aa14448:   0000000000000000 000000071005d290
0x00007f605aa14458:   00007f605aa14458 00000007e015e822
0x00007f605aa14468:   00007f605aa14508 00000007e015f408
0x00007f605aa14478:   0000000000000000 00000007e015e850
0x00007f605aa14488:   00007f605aa14410 00007f605aa144c8 

Instructions: (pc=0x00007f61087e3cb4)
0x00007f61087e3c94:   1b 48 85 d2 74 42 4c 8b 1e 48 8b 6e 08 48 83 ef
0x00007f61087e3ca4:   08 48 83 c6 08 e9 98 00 00 00 66 90 48 83 ea 01
0x00007f61087e3cb4:   4c 8b 16 4c 8b 5e 08 0f 85 bf 00 00 00 0f 1f 80
0x00007f61087e3cc4:   00 00 00 00 89 c1 49 d3 e3 44 89 c1 4c 89 d8 49 

Register to memory mapping:

RAX=0x0000000000000038 is an unknown value
RBX=0x00007f6059d3f9f9 is an unknown value
RCX=0x0000000000000001 is an unknown value
RDX=0x000000000000004c is an unknown value
RSP=0x00007f605aa14298 is pointing into the stack for thread: 0x00007f6044017000
RBP=
  1. 您觀察到的崩潰不是java問題,它是redhat問題"https://bugzilla.redhat.com/show_bug.cgi?id=546158"
  2. 什么是有問題的框架:它是導致崩潰的頂層框架,在您的情況下,它是本機框架(C)導致libC.so文件。 在此處查找更多詳細信息

這里有幾種可能性。 但除非您使用任何本機庫(例如tcnative ),否則故障完全在應用程序之外(包括Tomcat作為“應用程序”的一部分)。 應用程序無法執行任何操作都會導致JVM崩潰。

  1. 您正在使用的本機庫中存在錯誤
  2. JVM中存在一個錯誤
  3. libc有一個錯誤
  4. 您有硬件錯誤

我認為如果您實際擁有任何本機組件,#1最有可能。

我認為如果你沒有任何原生組件,#4是最有可能的。 每次我見過SIGBUS它都會成為底層硬件的問題。 如果可能,請將該計算機停止服務並在計算機上運行memtest86 + (或等效於您的體系結構)。 它將運行內存,CPU,系統總線,看看它們是否經常工作可以暴露問題。

如果你的系統通過了memtest86 +的2個測試,我會說你更有可能在JVM(不太可能)或libc中發現錯誤(甚至不太可能)。 在任何一種情況下,將所有內容升級到最新版本並重試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM