在Debian 7 64位计算机上运行Minecraft服务器。 安装了Oracle Java 8_05 JRE 64位。 由于服务器有时会每天崩溃两次或更多次。
Java崩溃报告:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f0921139a9c, pid=25246, tid=139676902000384
#
# JRE version: Java(TM) SE Runtime Environment (8.0_05-b13) (build 1.8.0_05-b13)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.5-b02 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# V [libjvm.so+0x555a9c] G1ParCopyClosure<false, (G1Barrier)2, false>::copy_to_survivor_space(oopDesc*)+0x3c
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
#
我该如何解决?
忘记提到我使用这些启动参数:
SERVICE="spigot.jar"
MEMLOG="memory.log"
SCREEN="classic"
CPU_COUNT=4
INITMEM="2048M"
MAXMEM="12G"
INVOCATION="java -Xms$INITMEM -Xmx$MAXMEM -XX:+AggressiveOpts - XX:ParallelGCThreads=$CPU_COUNT -XX:+UseG1GC -XX:MaxGCPauseMillis=100 -Xloggc:$MEMLOG -jar $SERVICE nogui -o false"
screen -dmS $ SCREEN $ INVOCATION
任何可能导致麻烦的事情?也许是GC旗帜?
答案 0 :(得分:1)
中发生异常
V [libjvm.so+0x555a9c] G1ParCopyClosure<false, (G1Barrier)2, false>::copy_to_survivor_space(oopDesc*)+0x3c
,
似乎是垃圾收集器的一部分(假设命名类似于OpenJDK中的命名)。这不是你可以直接控制的东西,所以这可能是Java实现中的一个错误。您可以做的最好的事情就是向Oracle报告。