Erlo

java crach 日志解析

2018-10-19 11:35:54 发布   161 浏览  
页面报错/反馈
收藏 点赞

在java开发中,或许会出现如下错误,这种错误大多出现在开发中涉及本地代码的地方。

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000057441b5f, pid=9272, tid=0x0000000000004534
#           信号名称             信号码         程序计数器的值       进程号     线程号
# JRE version: Java(TM) SE Runtime Environment (8.0_171-b11) (build 1.8.0_171-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.171-b11 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0xc1b5f]
  问题帧信息(和pc等价,但表达方式为 本地库+偏移量)
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
#

这种错误主要来源:

  1. 自定义本地方法有误,有不合逻辑,很大可能是参数传递有误(或者参数本身有误)
  2. 虚拟机内存问题,根据日志进行GC分析,合理配置内存参数
  3. 虚拟机本身错误(可能性很小)

问题分析参考:https://www.cnblogs.com/yelao/p/9814467.html

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000057441b5f, pid=9272, tid=0x0000000000004534
#           信号名称             信号码         程序计数器的值       进程号     线程号
# JRE version: Java(TM) SE Runtime Environment (8.0_171-b11) (build 1.8.0_171-b11)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.171-b11 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0xc1b5f]
  问题帧信息(和pc等价,但表达方式为 本地库+偏移量)
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------
//当前线程
Current thread (0x0000000003422800):  JavaThread "main" [_thread_in_vm, id=17716, stack(0x0000000003130000,0x0000000003230000)]
                   指针                线程类型    名       何种线程     线程id       栈区间
                 
//导致虚拟机终止的非预期的信号信息                 
siginfo: ExceptionCode=0xc0000005, reading address 0x0000000000000240
                         信号码                       出问题的指针  


Registers: //寄存器上下文
RAX=0x000000001821ba50, RBX=0x00000000033184c0, RCX=0x000000000000000a, RDX=0x000000000000000b
RSP=0x000000000322ca30, RBP=0x0000000003422800, RSI=0x0000000003422800, RDI=0x0000000000000220
R8 =0x000000000000000b, R9 =0x00000000033184c0, R10=0x0000000000000000, R11=0x0000000000000005
R12=0x0000000000000006, R13=0x000000000322cb10, R14=0x0000000000000001, R15=0x000000000322cbb0
RIP=0x0000000057441b5f, EFLAGS=0x0000000000010202

Top of Stack: (sp=0x000000000322ca30) //栈顶程序计数器旁的操作吗,可以被反汇编成系统崩溃前的指令
0x000000000322ca30:   0000000003472450 00000000575b7021
0x000000000322ca40:   0000000000000000 0000000057597b75
0x000000000322ca50:   0000000000000000 0000000019cf8f3b
0x000000000322ca60:   0000670b2094b49f 00007ff94fa70428
0x000000000322ca70:   0000000000000010 0000000000000010
0x000000000322ca80:   0000000000000000 0000000000000000
0x000000000322ca90:   000000000322cbb0 00000000033184c0
0x000000000322caa0:   000000000322cda8 000000000322cc60
0x000000000322cab0:   0000000003422800 00000000574431c7
0x000000000322cac0:   0000000017b11288 0000000003422800
0x000000000322cad0:   0000000100002368 0000000003422800
0x000000000322cae0:   0000000100001ef8 00007ff94be84301
0x000000000322caf0:   0000000003422800 00000000013f0f00
0x000000000322cb00:   0000000017b11288 0000000003422800
0x000000000322cb10:   0000000017b11288 0000000003422800
0x000000000322cb20:   000000000322cf08 0000000000000000 

Instructions: (pc=0x0000000057441b5f)//出异常处的指令,可反编译为汇编帮助分析
0x0000000057441b3f:   f8 48 89 44 0a f0 45 3b 01 7c e6 41 ff 09 48 85
0x0000000057441b4f:   ff 0f 84 7c 02 00 00 45 84 f6 0f 84 23 01 00 00
0x0000000057441b5f:   8b 47 20 c1 e8 0a a8 01 0f 84 15 01 00 00 4c 8b
0x0000000057441b6f:   a5 30 01 00 00 48 8b 1d 8d 73 73 00 49 8b 44 24 


Register to memory mapping: //寄存器和内存映射信息

RAX=0x000000001821ba50 is an unknown value
RBX=0x00000000033184c0 is an unknown value
RCX=0x000000000000000a is an unknown value
RDX=0x000000000000000b is an unknown value
RSP=0x000000000322ca30 is pointing into the stack for thread: 0x0000000003422800
RBP=0x0000000003422800 is a thread
RSI=0x0000000003422800 is a thread
RDI=0x0000000000000220 is an unknown value
R8 =0x000000000000000b is an unknown value
R9 =0x00000000033184c0 is an unknown value
R10=0x0000000000000000 is an unknown value
R11=0x0000000000000005 is an unknown value
R12=0x0000000000000006 is an unknown value
R13=0x000000000322cb10 is pointing into the stack for thread: 0x0000000003422800
R14=0x0000000000000001 is an unknown value
R15=0x000000000322cbb0 is pointing into the stack for thread: 0x0000000003422800

//线程栈。包含了地址,栈顶,栈计数器和线程尚未使用的栈信息
Stack: [0x0000000003130000,0x0000000003230000],  sp=0x000000000322ca30,  free space=1010k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [jvm.dll+0xc1b5f]
V  [jvm.dll+0xc31c7]
V  [jvm.dll+0x215877]
V  [jvm.dll+0x215bea]
V  [jvm.dll+0x7cad5]
V  [jvm.dll+0x7d164]
V  [jvm.dll+0x7e836]
V  [jvm.dll+0x7a2f7]
V  [jvm.dll+0x5e02f]
V  [jvm.dll+0x7c544]
V  [jvm.dll+0x192731]
V  [jvm.dll+0x192acb]
C  [java.dll+0x1ead]
C  [ag.dll+0x190e]
C  0x0000000003538c67

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  wqz.zoom.instrument.NativeAgent.another_foo(Ljava/lang/String;[BIILjava/security/ProtectionDomain;Ljava/lang/String;)Ljava/lang/Class;+0
j  java.lang.ClassLoader.defineClass1(Ljava/lang/String;[BIILjava/security/ProtectionDomain;Ljava/lang/String;)Ljava/lang/Class;+34
j  java.lang.ClassLoader.defineClass(Ljava/lang/String;[BIILjava/security/ProtectionDomain;)Ljava/lang/Class;+27
j  java.security.SecureClassLoader.defineClass(Ljava/lang/String;[BIILjava/security/CodeSource;)Ljava/lang/Class;+12
j  java.net.URLClassLoader.defineClass(Ljava/lang/String;Lsun/misc/Resource;)Ljava/lang/Class;+138
j  java.net.URLClassLoader.access$100(Ljava/net/URLClassLoader;Ljava/lang/String;Lsun/misc/Resource;)Ljava/lang/Class;+3
j  java.net.URLClassLoader$1.run()Ljava/lang/Class;+43
j  java.net.URLClassLoader$1.run()Ljava/lang/Object;+1
v  ~StubRoutines::call_stub
j  java.security.AccessController.doPrivileged(Ljava/security/PrivilegedExceptionAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;+0
j  java.net.URLClassLoader.findClass(Ljava/lang/String;)Ljava/lang/Class;+13
j  java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+70
j  sun.misc.Launcher$AppClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class;+81
j  java.lang.ClassLoader.loadClass(Ljava/lang/String;)Ljava/lang/Class;+3
j  sun.launcher.LauncherHelper.checkAndLoadMain(ZILjava/lang/String;)Ljava/lang/Class;+93
v  ~StubRoutines::call_stub

---------------  P R O C E S S  ---------------

Java Threads: ( => current thread ) //线程信息
  0x0000000019cc9800 JavaThread "Service Thread" daemon [_thread_blocked, id=26172, stack(0x000000001a4d0000,0x000000001a5d0000)]
  0x0000000019cf8800 JavaThread "C1 CompilerThread2" daemon [_thread_blocked, id=19348, stack(0x000000001a3d0000,0x000000001a4d0000)]
  0x0000000019cc8800 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=13820, stack(0x000000001a2d0000,0x000000001a3d0000)]
  0x0000000019cb1000 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=13952, stack(0x000000001a1d0000,0x000000001a2d0000)]
  0x0000000018263000 JavaThread "Attach Listener" daemon [_thread_blocked, id=12732, stack(0x000000001a0d0000,0x000000001a1d0000)]
  0x0000000019c1b800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=24360, stack(0x0000000019fd0000,0x000000001a0d0000)]
  0x000000001823c800 JavaThread "Finalizer" daemon [_thread_blocked, id=9820, stack(0x0000000019ad0000,0x0000000019bd0000)]
  0x0000000003514000 JavaThread "Reference Handler" daemon [_thread_blocked, id=10248, stack(0x00000000199d0000,0x0000000019ad0000)]
=>0x0000000003422800 JavaThread "main" [_thread_in_vm, id=17716, stack(0x0000000003130000,0x0000000003230000)]

Other Threads: //其他线程
  0x0000000018218000 VMThread [stack: 0x00000000198d0000,0x00000000199d0000] [id=10868]
  0x0000000019d8b800 WatcherThread [stack: 0x000000001a5d0000,0x000000001a6d0000] [id=3052]

  
//虚拟机状态
VM state:not at safepoint (normal execution)
//not at a safepoint:正常运行状态;
//at safepoint:所有线程都因为虚拟机等待状态而阻塞,等待一个虚拟机操作完成;
//synchronizing:一个特殊的虚拟机操作,要求虚拟机内的其它线程保持等待状态

//虚拟机的Mutex和Monitor目前没有被线程持有。Mutex是虚拟机内部的锁,而Monitor则关联到了Java对象
VM Mutex/Monitor currently owned by a thread: None

Heap://堆信息。新生代、老生代、永久代
 PSYoungGen      total 37888K, used 7316K [0x00000000d6000000, 0x00000000d8a00000, 0x0000000100000000)
  eden space 32768K, 22% used [0x00000000d6000000,0x00000000d6725040,0x00000000d8000000)
  from space 5120K, 0% used [0x00000000d8500000,0x00000000d8500000,0x00000000d8a00000)
  to   space 5120K, 0% used [0x00000000d8000000,0x00000000d8000000,0x00000000d8500000)
 ParOldGen       total 86016K, used 0K [0x0000000082000000, 0x0000000087400000, 0x00000000d6000000)
  object space 86016K, 0% used [0x0000000082000000,0x0000000082000000,0x0000000087400000)
 Metaspace       used 4343K, capacity 5654K, committed 6016K, reserved 1056768K
  class space    used 473K, capacity 522K, committed 640K, reserved 1048576K

Card table byte_map: [0x00000000128e0000,0x0000000012ce0000] byte_map_base: 0x00000000124d0000

Marking Bits: (ParMarkBitMap*) 0x0000000057ba08c0
 Begin Bits: [0x0000000013580000, 0x0000000015500000)
 End Bits:   [0x0000000015500000, 0x0000000017480000)

Polling page: 0x0000000000f60000


//代码缓存,这是一块用于编译和保存本地代码的内存,注意是本地代码,它和PermGen(永久代)是不一样的,永久带是用来存放Java类定义的。
CodeCache: size=245760Kb used=1114Kb max_used=1116Kb free=244645Kb
 bounds [0x0000000003520000, 0x0000000003790000, 0x0000000012520000]
 total_blobs=292 nmethods=19 adapters=187
 compilation: enabled

Compilation events (10 events):
Event: 0.192 Thread 0x0000000019cc8800 nmethod 1 0x0000000003636410 code [0x0000000003636540, 0x00000000036365d8]
Event: 0.192 Thread 0x0000000019cc8800    9       4       java.lang.String::charAt (29 bytes)
Event: 0.192 Thread 0x0000000019cb1000 nmethod 11 0x0000000003633d50 code [0x0000000003633ea0, 0x0000000003634058]
Event: 0.193 Thread 0x0000000019cc8800 nmethod 9 0x0000000003633a50 code [0x0000000003633ba0, 0x0000000003633c58]
Event: 0.194 Thread 0x0000000019cf8800   17       3       java.lang.AbstractStringBuilder::append (50 bytes)
Event: 0.194 Thread 0x0000000019cf8800 nmethod 17 0x0000000003636f50 code [0x0000000003637120, 0x0000000003637878]
Event: 0.194 Thread 0x0000000019cf8800   18       3       sun.nio.cs.ext.DoubleByte$Encoder::encodeChar (21 bytes)
Event: 0.194 Thread 0x0000000019cf8800 nmethod 18 0x0000000003636ad0 code [0x0000000003636c40, 0x0000000003636df0]
Event: 0.195 Thread 0x0000000019cf8800   19       3       java.util.Arrays::copyOfRange (63 bytes)
Event: 0.196 Thread 0x0000000019cf8800 nmethod 19 0x0000000003634750 code [0x0000000003634960, 0x0000000003635498]

GC Heap History (0 events)://GC历史纪录
No events

Deoptimization events (0 events)://非优化事件
No events

Classes redefined (1 events): //重定义
Event: 0.186 Thread 0x0000000018218000 redefined class name=java.lang.ClassLoader, count=1

Internal exceptions (9 events)://内部异常
Event: 0.030 Thread 0x0000000003422800 Exception <a 'java/lang/NoSuchMethodError': Method sun.misc.Unsafe.defineClass(Ljava/lang/String;[BII)Ljava/lang/Class; name or signature does not match> (0x00000000d6007cb0) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspot
Event: 0.030 Thread 0x0000000003422800 Exception <a 'java/lang/NoSuchMethodError': Method sun.misc.Unsafe.prefetchRead(Ljava/lang/Object;J)V name or signature does not match> (0x00000000d6007f98) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprim
Event: 0.071 Thread 0x0000000003422800 Exception <a 'java/util/zip/ZipException'> (0x00000000d60da258) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprimsjni.cpp, line 709]
Event: 0.071 Thread 0x0000000003422800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d60da908) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprimsjvm.cpp, line 1435]
Event: 0.071 Thread 0x0000000003422800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d60dab18) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprimsjvm.cpp, line 1435]
Event: 0.140 Thread 0x0000000003422800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d64faf48) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprimsjvm.cpp, line 1435]
Event: 0.140 Thread 0x0000000003422800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d64fb340) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprimsjvm.cpp, line 1435]
Event: 0.140 Thread 0x0000000003422800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d64fdc98) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprimsjvm.cpp, line 1435]
Event: 0.140 Thread 0x0000000003422800 Exception <a 'java/security/PrivilegedActionException'> (0x00000000d64fe090) thrown at [C:reworkspace8-2-build-windows-amd64-cygwinjdk8u17110807hotspotsrcsharevmprimsjvm.cpp, line 1435]

Events (10 events):
Event: 0.189 loading class sun/usagetracker/UsageTrackerClient$3
Event: 0.189 loading class sun/usagetracker/UsageTrackerClient$3 done
Event: 0.191 loading class java/io/FileOutputStream$1
Event: 0.191 loading class java/io/FileOutputStream$1 done
Event: 0.191 loading class sun/launcher/LauncherHelper
Event: 0.191 loading class sun/launcher/LauncherHelper done
Event: 0.191 loading class wqz/zoom/instrument/Native
Event: 0.191 loading class wqz/zoom/instrument/Native done
Event: 0.195 loading class wqz/zoom/instrument/NativeAgent
Event: 0.195 loading class wqz/zoom/instrument/NativeAgent done


Dynamic libraries: //内存映射:虚拟机崩溃时虚拟机内存列表区域
            内存   -   区域                   正在被使用的类库
0x00007ff79e9c0000 - 0x00007ff79e9f7000     C:Program Files (x86)Common FilesOracleJavajavapathjava.exe
0x00007ff94fa60000 - 0x00007ff94fc41000     C:WINDOWSSYSTEM32ntdll.dll
0x00007ff94d3f0000 - 0x00007ff94d4a2000     C:WINDOWSSystem32KERNEL32.DLL
0x00007ff94be30000 - 0x00007ff94c0a3000     C:WINDOWSSystem32KERNELBASE.dll
0x00007ff94f8f0000 - 0x00007ff94f991000     C:WINDOWSSystem32ADVAPI32.dll
0x00007ff94cfd0000 - 0x00007ff94d06e000     C:WINDOWSSystem32msvcrt.dll
0x00007ff94f9a0000 - 0x00007ff94f9fb000     C:WINDOWSSystem32sechost.dll
0x00007ff94d1d0000 - 0x00007ff94d2f4000     C:WINDOWSSystem32RPCRT4.dll
0x00007ff94f550000 - 0x00007ff94f6e0000     C:WINDOWSSystem32USER32.dll
0x00007ff94c330000 - 0x00007ff94c350000
登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认