如何解决JVM崩溃?

时间:2012-06-26 16:52:09

标签: java jvm

我遇到了以下JVM崩溃错误。我可以知道如何解决这个问题吗?请参阅以下hs_err日志。

#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  Internal Error (50532D41524B33574545502445434F5241544F520E4350500024), pid=18211, tid=1137465664
#
# Java VM: Java HotSpot(TM) 64-Bit Server VM (1.5.0_22-b03 mixed mode)

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

Current thread (0x00002aab6407df10):  VMThread [id=18260]

Stack: [0x0000000043bc5000,0x0000000043cc6000),  sp=0x0000000043cc4850,  free space=1022k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x667711]
V  [libjvm.so+0x2e4c66]
V  [libjvm.so+0x5a899d]
V  [libjvm.so+0x5a8ade]
V  [libjvm.so+0x5b11f4]
V  [libjvm.so+0x5a76e6]
V  [libjvm.so+0x5b29bb]
V  [libjvm.so+0x57d04d]
V  [libjvm.so+0x67003a]
V  [libjvm.so+0x66fa5a]
V  [libjvm.so+0x66f176]
V  [libjvm.so+0x66f3eb]
V  [libjvm.so+0x66ef7a]
V  [libjvm.so+0x56ff45]

VM_Operation (0x000000004138c420): parallel gc failed allocation, mode: safepoint, requested by thread 0x000000001ed29460


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

Java Threads: ( => current thread )
  0x000000001ed29460 JavaThread "CobolThread 362" daemon [_thread_blocked, id=6054]
  0x000000001ac8e4f0 JavaThread "CobolThread 361" daemon [_thread_blocked, id=6038]...

我是否可以通过更改JVM参数来解决上述错误?以下是当前使用的JVM参数。

-Xms2048m -Xmx2048m -XX:MaxPermSize=768m -XX:+UseParallelGC 

1 个答案:

答案 0 :(得分:8)

您使用旧VM并使用明确不稳定的选项指定GC算法:

  

使用-XX指定的选项不稳定且受制于   如有更改,恕不另行通知。

(来自http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html

此行跟踪显示失败与并行gc:

有关
VM_Operation (0x000000004138c420): parallel gc failed allocation

因此,如果您没有确切的理由使用此参数化,请将其删除。您应该在知道原因时选择GC算法。并更新您的VM,因为搜索旧版本的错误更加困难。