Hello list, I have a fairly reliable way to produce a SIGSEV under Java 7u21 on Solaris Sparc with Lucene 3.6.0. All it takes is for me to call IndexWriter.deleteAll(), and the JVM instantly dies with a hotspot error. Calling IndexWriter.deleteDocuments(new MatchAllDocsQuery()) is presumably slower, but doesn't cause the same error.
I can reproduce this with both a NIOFSDirectory and a RAMDirectory, and with both 32 and 64 bit JDKs. I was not previously seeing this error with Java 6u22. Is this a known issue? My understanding was that Java 7 should have been "safe" after update 2. Thanks, Stuart Truncated hotspot error follows: # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0xffffffff78317944, pid=10263, tid=90 # # JRE version: 7.0_21-b11 # Java VM: Java HotSpot(TM) 64-Bit Server VM (23.21-b01 mixed mode solaris-sparc compressed oops) # Problematic frame: # J org.apache.lucene.index.IndexFileNames.segmentFileName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; # # Core dump written. Default location: /xxxx/core or core.10263 # # If you would like to submit a bug report, please visit: # http://bugreport.sun.com/bugreport/crash.jsp # --------------- T H R E A D --------------- Current thread (0x00000001030f9000): JavaThread "pool-154-thread-1" [_thread_in_Java, id=90, stack(0xfffffffed4a00000,0xfffffffed4b00000)] siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x000000000000000c Registers: G1=0x0000000000000000 G2=0x00000001030f9000 G3=0xfffffffffffec7ff G4=0xfffffffed4afe210 G5=0xffffffff61d249e8 G6=0xfffffffee000e000 G7=0xfffffffedfd1b200 Y=0x0000000000000000 O0=0xfffffffee23ff2c0 O1=0x00000000000000b6 O2=0x0000000000000000 O3=0xffffffff7801b648 O4=0x00000000001588a0 O5=0xfffffffed4afda71 O6=0xfffffffed4afd891 O7=0xffffffff780070f0 L0=0x0000000000000003 L1=0x0000000000e6c9c0 L2=0xffffffff61cc0b00 L3=0xfffffffed4afe328 L4=0xfffffffed4afe230 L5=0xfffffffed4afd951 L6=0xffffffff61d8a768 L7=0x00000001030f9000 I0=0x0000000000000000 I1=0xfffffffee7372de8 I2=0x00000001030f9000 I3=0x0000000000000000 I4=0x00000000001588a0 I5=0xfffffffed4afd951 I6=0xfffffffed4afd951 I7=0xffffffff78006da8 PC=0xffffffff78317944 nPC=0xffffffff78317948 Top of Stack: (sp=0xfffffffed4afe090) 0xfffffffed4afe090: 0000000000000003 0000000000e6c9c0 0xfffffffed4afe0a0: ffffffff61cc0b00 fffffffed4afe328 0xfffffffed4afe0b0: fffffffed4afe230 fffffffed4afd951 0xfffffffed4afe0c0: ffffffff61d8a768 00000001030f9000 0xfffffffed4afe0d0: 0000000000000000 fffffffee7372de8 0xfffffffed4afe0e0: 00000001030f9000 0000000000000000 0xfffffffed4afe0f0: 00000000001588a0 fffffffed4afd951 0xfffffffed4afe100: fffffffed4afd951 ffffffff78006da8 0xfffffffed4afe110: 0000000000000000 0000000000000000 0xfffffffed4afe120: fffffffed4afe150 ffffffff7801245c 0xfffffffed4afe130: ffffffff78005410 0000000200000000 0xfffffffed4afe140: 0000000000000000 0000000000000000 0xfffffffed4afe150: fffffffed4afe210 ffffffff61cc0a4e 0xfffffffed4afe160: ffffffff61cc0b00 fffffffed4afe328 0xfffffffed4afe170: fffffffed4afe230 fffffffed4afd951 0xfffffffed4afe180: ffffffff61d8a768 00000001030f9000 Instructions: (pc=0xffffffff78317944) 0xffffffff78317924: 86 18 fc 00 86 00 e3 ff c0 23 80 03 9d e3 bf 40 0xffffffff78317934: e2 06 60 0c a1 2c 70 03 a0 04 00 06 e0 04 20 0c 0xffffffff78317944: e4 06 20 0c a3 2c b0 03 a2 04 40 06 a6 10 00 18 0xffffffff78317954: 80 a4 20 00 04 40 00 59 e2 04 60 0c e4 06 20 0c Register to memory mapping: G1=0x0000000000000000 is an unknown value G2=0x00000001030f9000 is a thread G3=0xfffffffffffec7ff is an unknown value G4=0xfffffffed4afe210 is pointing into the stack for thread: 0x00000001030f9000 G5=0xffffffff61d249e8 is an oop {method} - klass: {other class} G6=0xfffffffee000e000 is an unknown value G7=0xfffffffedfd1b200 is an unknown value O0= [error occurred during error reporting (printing register info), id 0xb] Stack: [0xfffffffed4a00000,0xfffffffed4b00000], sp=0xfffffffed4afe090, free space=1016k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) J org.apache.lucene.index.IndexFileNames.segmentFileName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; j org.apache.lucene.index.TermVectorsTermsWriter.abort()V+62 j org.apache.lucene.index.TermsHash.abort()V+4 j org.apache.lucene.index.TermsHash.abort()V+31 j org.apache.lucene.index.DocInverter.abort()V+4 j org.apache.lucene.index.DocFieldProcessor.abort()V+24 j org.apache.lucene.index.DocumentsWriter.abort()V+173 j org.apache.lucene.index.IndexWriter.deleteAll()V+13