JDK-7129299 : JVM crash issue related to jar files
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.util.jar
  • Affected Version: 6u16
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris
  • CPU: generic
  • Submitted: 2012-01-12
  • Updated: 2012-02-02
  • Resolved: 2012-02-01
Related Reports
Duplicate :  
The customer often experience a JVM crash issue. Full HotSpot logs attached to this bug report.

The log file doesn't show a HotSpot issue, this is a JDK issue.
Some parts of the log file:

# A fatal error has been detected by the Java Runtime Environment:
#  SIGSEGV (0xb) at pc=0xff380700, pid=583, tid=3156104
# JRE version: 6.0_16-b01
# Java VM: Java HotSpot(TM) Server VM (14.2-b01 mixed mode solaris-sparc )
# Problematic frame:
# C  [libc_psr.so.1+0x700]  memcpy+0x2f8
---------------  T H R E A D  ---------------

Current thread (0x00746400):  JavaThread "p: default-threadpool; w: Idle" daemon [_thread_in_native, id=3156104, stack(0xb0c00000,0xb0c80000)]

siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0xfe0cc000

 O0=0xfe0cbfc0 O1=0x00000000 O2=0xc3230063 O3=0x6f727465
 O4=0x6d612f67 O5=0x70726f63 O6=0xb0c7c890 O7=0xfe202378
 G1=0x00054000 G2=0x00c4f5d0 G3=0x00000000 G4=0xff140000
 G5=0x03785238 G6=0x00000000 G7=0xb7314200 Y=0x00000000
 PC=0xff380700 nPC=0xff380704

Top of Stack: (sp=0xb0c7c890)
0xb0c7c890:   fe0c77d2 00000008 00000065 00007200
0xb0c7c8a0:   00000072 96898d9b ffffffff 00000000
0xb0c7c8b0:   03789a00 fe0cbfc0 0000002c 00001d80
0xb0c7c8c0:   ff3303a8 00000000 b0c7c8f0 fe20d194
0xb0c7c8d0:   00c4f5e4 00000000 00000001 00000000
0xb0c7c8e0:   00000000 00000000 00000001 00c4f608
0xb0c7c8f0:   fe0c77d2 00000076 00000065 00007200
0xb0c7c900:   00000072 96898d9b ffffffff 00000000 

Instructions: (pc=0xff380700)
0xff3806f0:   d8 5e 60 30 da 5e 60 38 d6 f6 20 20 d8 f6 20 28
0xff380700:   d4 5e 60 40 d6 5e 60 48 da f6 20 30 d4 f6 20 38 

Stack: [0xb0c00000,0xb0c80000],  sp=0xb0c7c890,  free space=498k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [libc_psr.so.1+0x700]  memcpy+0x2f8
C  [libzip.so+0xd19c]
C  [libzip.so+0x2380]  ZIP_GetEntry+0xe4
C  [libzip.so+0x2800]  Java_java_util_zip_ZipFile_getEntry+0xc4
j  java.util.zip.ZipFile.getEntry(JLjava/lang/String;Z)J+0
j  java.util.zip.ZipFile.getEntry(JLjava/lang/String;Z)J+0
j  java.util.zip.ZipFile.getEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry;+31
j  java.util.jar.JarFile.getEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry;+2
j  java.util.jar.JarFile.getJarEntry(Ljava/lang/String;)Ljava/util/jar/JarEntry;+2

EVALUATION This may be another cases where a zip/JAR file is overwritten while it is being used. In JDK7 the property sun.zip.disableMemoryMapping can be used to disable the mmapping of the central directory to avoid this when there is stepping on toes.