Tag: crash

exception访问违规Java?

我正在编写一个JNI项目,我在尝试运行Java代码时遇到以下错误日志。 它告诉我有问题的框架是一个jvm.dll,并试图隔离问题,我试图找出我的问题究竟在哪里(在JVM与我的本机代码)我附加了线程日志部分,如果需要可以附加其余部分。 我也尝试重新安装JVM。 Java运行时环境检测到致命错误: pc = 0x6d8fefb5的EXCEPTION_ACCESS_VIOLATION(0xc0000005),pid = 720,tid = 3128 JRE版本:6.0_21-b07 Java VM:Java HotSpot(TM)客户端VM(17.0-b17混合模式,共享windows-x86)有问题的框架:V [jvm.dll + 0xfefb5] —————线程————— 当前线程(0x02189000):JavaThread“main”[_thread_in_vm,id = 3128,stack(0x02120000,0x02170000)] siginfo:ExceptionCode = 0xc0000005,读取地址0x00000000 寄存器:EAX = 0x00000000,EBX = 0x02189118,ECX = 0x02189000,EDX = 0x6da2f76c ESP = 0x0216fa84,EBP = 0x0216facc,ESI = 0x02189000,EDI = 0x00000000 EIP = 0x6d8fefb5,EFLAGS = 0x00010246 堆栈顶部:(sp = 0x0216fa84)0x0216fa84:0216fb38 0216fae4 34497370 0216faa0 0x0216fa94: […]

写入XLSX文件(POI)时JVM崩溃

尝试写入.xlsx文件时JVM崩溃。 我正在使用POI(XSSF)。 代码中的错误位置点是write method–> workBook.write(fileOutputStream); 在控制台我得到.. A fatal error has been detected by the Java Runtime Environment: SIGBUS (0x7) at pc=0xb68d77f3, pid=14653, tid=1849355120 JRE version: 7.0_04-b20 Java VM: Java HotSpot(TM) Server VM (23.0-b21 mixed mode linux-x86 ) Problematic frame: C [libzip.so+0x47f3] newEntry+0x73 Failed to write core dump. Core dumps have been disabled. To enable core […]

JVM崩溃 – “EXCEPTION_ACCESS_VIOLATION”

今天我决定继续研究我为计算机科学课程创建的程序。 运行它后,我在控制台中受到了欢迎: # # A fatal error has been detected by the Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ffeb23c7510, pid=7320, tid=9084 # # JRE version: Java(TM) SE Runtime Environment (8.0_11-b12) (build 1.8.0_11-b12) # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.11-b03 mixed mode windows-amd64 compressed oops) # Problematic frame: # C 0x00007ffeb23c7510 # […]

Tomcat突然死了

尝试在64位Linux(CentOS)计算机上诊断一些奇怪的Tomcat( 7.0.21 )和/或JVM错误。 我正在加载测试我们的服务器应用程序并尝试使用100K消息进行测试。 推出jvisualvm并始终关注堆。 一切都看起来很棒*(见下文),直到我得到大约93K处理过的消息,然后Tomcat就死了。 在Tomcat的PID编号上输入ps以确认它已经死了。 直到这次崩溃: 负载测试已经运行了大约90分钟; 应该很快完成,因为我们在93K / 100K) CPU保持强劲45%左右 使用堆大约2GB(在GC之后加上或减去一堆)但是大约30分钟后堆大小从4GB增加到MAX_HEAP 类加载/卸载正常循环 线程转储是正常的 在服务器代码中没有任何地方调用System.exit() – 所以我们可以直接判断(是的,我已经仔细检查了!!!)。 我不确定这是Tomcat崩溃还是JVM( 我怎么说? )。 即使我知道,我似乎也找不到任何错误的迹象: 所有服务器应用程序的日志都会在没有任何错误消息的情况下停止(即使我们将日志记录设置为DEBUG及更高版本) Tomcat的catalina.out和尊重localhost_access_*文件只是停止没有任何信息 我听说有可能让Tomcat记录一个coredump,但不知道如何做到这一点,在线示例没有多大帮助。 如何诊断这个? 我应该采取哪些措施来排除所有可能的因素? 提前致谢!

如何调查JVM崩溃的原因?

一天前,经过几个月的正常工作,我们的java应用程序偶尔会崩溃并出现以下错误: # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (safepoint.cpp:247), pid=2075, tid=140042095163136 # guarantee(PageArmed == 0) failed: invariant # # JRE version: 6.0_23-b05 # Java VM: Java HotSpot(TM) 64-Bit Server VM (19.0-b09 mixed mode linux-amd64 compressed oops) # An error report file with more information is […]

Java VM:1.6.0_17和1.6.0_18都可以重现SIGSEGV,如何报告?

编辑 :这个可重现的SIGSEGV发生在具有多个proc和超过2GB内存的Linux机器上,因此Java默认为-server模式。 有趣的是,如果我强迫“-client”再也没有崩溃……(我仍然不太确定如何处理我可重复的SIGSEGV,但它仍然很有趣)。 首先请注意,这与以下内容有点相关但不同,因为在我们的情况下,它只发生了一个SIGSEGV,我们可以可靠地触发它: JVM OutOfMemory错误“死亡螺旋”(不是内存泄漏) 它是相关的,因为它发生在我们为应用程序提供“大量数据”时:数据来自文本文件然后数字嘎吱嘎吱(是的,Java中的财务数字运算)。 我只能使用有效的Java代码可靠地触发JVM到SIGSEGV。 注意 :我总是会崩溃JVM 1.6.0_17和JVM 1.6.0_18这个问题并不是关于如何解决这个问题(例如,使用VM参数可以解决问题,但我不是在那之后,我想知道如何处理这种始终可重复的SIGSEGV)。 我有一个解决方法,只是在启动我们的应用程序时使用Java 1.5(同时仍然使用Java 1.6在同一台机器上运行IntelliJ IDEA等),但我的问题是,是否应该报告这个和如果它应该,如何报告它知道日志本身包含专有信息(完整的hs_err _…_日志)。 可以排除硬件错误: 这种情况发生在经常达到几个月正常运行时间的工作站上(我只在重要的安全补丁影响我已经发布的严格和强化的Debian Linux时重新启动它,这实际上并不经常发生)以及哪些应用程序永远不会崩溃(使它非常不太可能是那台机器上的硬件问题[更多下面]) 相同的应用程序在相同负载下的JVM 1.5下在同一台机器上完美运行(这就是我测试应用程序的方式:我只需在1.5 VM下启动它) 相同的应用程序在相同(巨大)负载下的超过一百台客户端机器上运行完美(在Windows + JVM 1.5或1.6上从未崩溃一次,并且从未在OS X + JVM 1.5或1.6上崩溃一次[崩溃意味着即时电话来自客户的电话]) 同一台机器上的其他应用程序和相同的1.6.0_17或1.6.0_18 JVM永远不会崩溃(例如,我有两个IntelliJ IDEA实例作为同一台机器上的两个不同用户运行而且它们不会崩溃) 机器用memtest“定期”测试(在安装新的操作系统之前,最后一次发生在安装Debian Lenny时,不久前) 这是可重复的按需SIGSEGV: … $uname -a Linux saturn 2.6.26-2-686 #1 SMP Wed Nov 4 20:45:37 UTC 2009 i686 GNU/Linux … $ […]