Następujący plik dziennika spowodował awarię JVM
.JVM uległo awarii w java.util.zip.ZipFile.getEntry
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f60ddce2058, pid=117268, tid=140052313204480
#
# JRE version: Java(TM) SE Runtime Environment (7.0_51-b13) (build 1.7.0_51-b13)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.51-b03 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libzip.so+0x5058] ZIP_GetEntry+0x78
#
# 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
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
--------------- T H R E A D ---------------
Current thread (0x00007f5f4c01a800): JavaThread "EJB default - 3" [_thread_in_native, id=117526, stack(0x00007f607850e000,0x00007f607860f000)]
siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x0000000000000278
Registers:
RAX=0x0000000000000000, RBX=0x00007f607860c3c0, RCX=0x0000003a4d2182a0, RDX=0x000000000000009e
RSP=0x00007f607860c370, RBP=0x00007f607860c3a0, RSI=0x00007f5fdc0060a1, RDI=0x0000000000000010
R8 =0x00000000000001e5, R9 =0x2e786176616a2f73, R10=0x6e6172742e6c6d78, R11=0x0000000741902898
R12=0x00007f5fdc006340, R13=0x00007f5f4c01a9e8, R14=0x0000000066c00f1d, R15=0x00007f607860c3c0
RIP=0x00007f60ddce2058, EFLAGS=0x0000000000010246, CSGSFS=0x0000000000000033, ERR=0x0000000000000004
TRAPNO=0x000000000000000e
Top of Stack: (sp=0x00007f607860c370)
0x00007f607860c370: 000000387860c3a0 00007f607860c3c0
0x00007f607860c380: 0000000000000038 00007f5f4c01a9e8
0x00007f607860c390: 00007f607860c3c0 00007f607860c818
0x00007f607860c3a0: 00007f607860c800 00007f60ddce0eed
0x00007f607860c3b0: 01007f5f4c01b6d0 00007f5fdc006340
0x00007f607860c3c0: 464e492d4154454d 656369767265732f
0x00007f607860c3d0: 2e786176616a2f73 6e6172742e6c6d78
0x00007f607860c3e0: 72542e6d726f6673 656d726f66736e61
0x00007f607860c3f0: 79726f7463614672 00007f6078600000
0x00007f607860c400: 00007f5f4c01a9e8 0000000000000000
0x00007f607860c410: 00007f607860cc90 00007f60d5006233
0x00007f607860c420: 00007f60d5005310 00007f6000000000
0x00007f607860c430: 00007f607860cce0 00007f607860cc90
0x00007f607860c440: 00007f5f4c01a800 00007f5f4c00d970
0x00007f607860c450: 00007f5f4c01b690 00007f5f4c01b6e0
0x00007f607860c460: 00007f5f4c01ba78 00000000000003d8
0x00007f607860c470: 00007f607860da90 00000005402d81a0
0x00007f607860c480: 00007f60d256f5c0 00007f5f4c01b6d8
0x00007f607860c490: 00007f607860cc90 00007f5f4c01a800
0x00007f607860c4a0: 00007f5f4c01b6d0 00007f5f4c01b6d8
0x00007f607860c4b0: 00007f607860cc90 00007f5f4c01a800
0x00007f607860c4c0: 00007f5fa8003ac0 00007f5fa8003ac0
0x00007f607860c4d0: 00007f607860cd20 00007f60decc9d8d
0x00007f607860c4e0: 00007f607860c500 00007f607860cd30
0x00007f607860c4f0: 00007f5f4c01a9e8 0000000000000000
0x00007f607860c500: 00007f607860cd80 00007f60d5006233
0x00007f607860c510: 00007f60d5005310 00007f6000000000
0x00007f607860c520: 00007f607860cdd8 00007f607860cd80
0x00007f607860c530: 00007f5f4c01a800 00007f5f4c01a800
0x00007f607860c540: 00007f5fa8003ac0 00007f5fa8003ac0
0x00007f607860c550: 00007f5f4c01b6c8 00007f60decc9d8d
0x00007f607860c560: 00007f607860c580 0000000000000410
Instructions: (pc=0x00007f60ddce2058)
0x00007f60ddce2038: 45 85 c0 0f 84 ff 00 00 00 44 89 f0 31 d2 41 f7
0x00007f60ddce2048: b4 24 88 00 00 00 49 8b 84 24 80 00 00 00 89 d2
0x00007f60ddce2058: 8b 1c 90 0f 1f 44 00 00 4d 8b ac 24 98 00 00 00
0x00007f60ddce2068: 4d 85 ed 74 1e 49 8b 7d 00 4c 89 fe e8 cf d7 ff
Register to memory mapping:
RAX=0x0000000000000000 is an unknown value
RBX=0x00007f607860c3c0 is pointing into the stack for thread: 0x00007f5f4c01a800
RCX=0x0000003a4d2182a0: <offset 0x2182a0> in /lib64/libpthread.so.0 at 0x0000003a4d000000
RDX=0x000000000000009e is an unknown value
RSP=0x00007f607860c370 is pointing into the stack for thread: 0x00007f5f4c01a800
RBP=0x00007f607860c3a0 is pointing into the stack for thread: 0x00007f5f4c01a800
RSI=0x00007f5fdc0060a1 is an unknown value
RDI=0x0000000000000010 is an unknown value
R8 =0x00000000000001e5 is an unknown value
R9 =0x2e786176616a2f73 is an unknown value
R10=0x6e6172742e6c6d78 is an unknown value
R11=0x0000000741902898 is an unknown value
R12=0x00007f5fdc006340 is an unknown value
R13=0x00007f5f4c01a9e8 is an unknown value
R14=0x0000000066c00f1d is an unknown value
R15=0x00007f607860c3c0 is pointing into the stack for thread: 0x00007f5f4c01a800
Stack: [0x00007f607850e000,0x00007f607860f000], sp=0x00007f607860c370, free space=1016k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libzip.so+0x5058] ZIP_GetEntry+0x78
C [libzip.so+0x3eed] Java_java_util_zip_ZipFile_getEntry+0xad
J java.util.zip.ZipFile.getEntry(J[BZ)J
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J java.util.zip.ZipFile.getEntry(J[BZ)J
J java.util.jar.JarFile.getEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry;
J org.jboss.modules.JarFileResourceLoader.getResource(Ljava/lang/String;)Lorg/jboss/modules/Resource;
J org.jboss.modules.ModuleClassLoader.loadResourceLocal(Ljava/lang/String;)Ljava/util/List;
J org.jboss.modules.Module.getResourceAsStream(Ljava/lang/String;)Ljava/io/InputStream;
Na raz pierwszy wystąpił jak na niektórych online materiałów Odnoszę kładę opcję JVM -Dsun.zip.disableMemoryMapping=true
. Ale wciąż ma miejsce ta sama awaria JVM. Istnieje wiele zgłaszanych problemów podobnych do tego w różnych miejscach, ale żadna z odpowiedzi nie stanowiła pewnego rozwiązania tego problemu.
Już przejrzałem następujący wpis. Ale nie widzę żadnego możliwego rozwiązania.
JVM crash while memcpy during class load
Każda pomoc jest bardzo ceniona.
Czy próbowałeś włączyć zrzut główny? –
@whiletrue tak. włączenie dumpingu podstawowego nie rozwiązuje tego problemu. Umożliwi to zrzutu pamięci (zrzut awaryjny), który zawiera informacje, aby zbadać więcej. To tylko migawka pamięci. –
Jeśli problem polega na tym, że plik jest manipulowany z innego procesu podczas próby jego odczytania, możesz utworzyć tymczasową kopię pliku zip i odczytać go z kopii. – Andreas