Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-5899

shenandoah GC can cause "ClassCastException: org.apache.lucene.codecs.MappingMultiDocsEnum cannot be cast to org.apache.lucene.index.DocsAndPositionsEnum"

Details

    • New

    Description

      User report of bizare ClassCastException when running some lucene code with the (experimental) shenandoah GC

      Exception in thread "Lucene Merge Thread #0" org.apache.lucene.index.MergePolicy$MergeException: java.lang.ClassCastException: org.apache.lucene.codecs.MappingMultiDocsEnum cannot be cast to org.apache.lucene.index.DocsAndPositionsEnum
      	at org.apache.lucene.index.ConcurrentMergeScheduler.handleMergeException(ConcurrentMergeScheduler.java:545)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:518)
      Caused by: java.lang.ClassCastException: org.apache.lucene.codecs.MappingMultiDocsEnum cannot be cast to org.apache.lucene.index.DocsAndPositionsEnum
      	at org.apache.lucene.codecs.PostingsConsumer.merge(PostingsConsumer.java:127)
      	at org.apache.lucene.codecs.TermsConsumer.merge(TermsConsumer.java:110)
      	at org.apache.lucene.codecs.FieldsConsumer.merge(FieldsConsumer.java:72)
      	at org.apache.lucene.index.SegmentMerger.mergeTerms(SegmentMerger.java:399)
      	at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:112)
      	at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4163)
      	at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3759)
      	at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:405)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:482)
      
      Exception in thread "Lucene Merge Thread #0" org.apache.lucene.index.MergePolicy$MergeException: java.io.IOException: Invalid vLong detected (negative values disallowed)
      	at org.apache.lucene.index.ConcurrentMergeScheduler.handleMergeException(ConcurrentMergeScheduler.java:545)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:518)
      Caused by: java.io.IOException: Invalid vLong detected (negative values disallowed)
      	at org.apache.lucene.store.DataInput.readVLong(DataInput.java:193)
      	at org.apache.lucene.codecs.blocktree.BlockTreeTermsReader.<init>(BlockTreeTermsReader.java:169)
      	at org.apache.lucene.codecs.lucene41.Lucene41PostingsFormat.fieldsProducer(Lucene41PostingsFormat.java:441)
      	at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat$FieldsReader.<init>(PerFieldPostingsFormat.java:197)
      	at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat.fieldsProducer(PerFieldPostingsFormat.java:254)
      	at org.apache.lucene.index.SegmentCoreReaders.<init>(SegmentCoreReaders.java:120)
      	at org.apache.lucene.index.SegmentReader.<init>(SegmentReader.java:107)
      	at org.apache.lucene.index.ReadersAndUpdates.getReader(ReadersAndUpdates.java:143)
      	at org.apache.lucene.index.ReadersAndUpdates.getReaderForMerge(ReadersAndUpdates.java:668)
      	at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4099)
      	at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3759)
      	at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:405)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:482)
      
      Exception in thread "Lucene Merge Thread #0" org.apache.lucene.index.MergePolicy$MergeException: java.lang.NullPointerException
      	at org.apache.lucene.index.ConcurrentMergeScheduler.handleMergeException(ConcurrentMergeScheduler.java:545)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:518)
      Caused by: java.lang.NullPointerException
      	at org.apache.lucene.codecs.blocktree.BlockTreeTermsReader.<init>(BlockTreeTermsReader.java:169)
      	at org.apache.lucene.codecs.lucene41.Lucene41PostingsFormat.fieldsProducer(Lucene41PostingsFormat.java:441)
      	at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat$FieldsReader.<init>(PerFieldPostingsFormat.java:197)
      	at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat.fieldsProducer(PerFieldPostingsFormat.java:254)
      	at org.apache.lucene.index.SegmentCoreReaders.<init>(SegmentCoreReaders.java:120)
      	at org.apache.lucene.index.SegmentReader.<init>(SegmentReader.java:107)
      	at org.apache.lucene.index.ReadersAndUpdates.getReader(ReadersAndUpdates.java:143)
      	at org.apache.lucene.index.ReadersAndUpdates.getReaderForMerge(ReadersAndUpdates.java:668)
      	at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4099)
      	at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3759)
      	at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:405)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:482)
      Exception in thread "Lucene Merge Thread #0" org.apache.lucene.index.MergePolicy$MergeException: java.lang.NullPointerException
      	at org.apache.lucene.index.ConcurrentMergeScheduler.handleMergeException(ConcurrentMergeScheduler.java:545)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:518)
      Caused by: java.lang.NullPointerException
      	at org.apache.lucene.codecs.MappingMultiDocsAndPositionsEnum.reset(MappingMultiDocsAndPositionsEnum.java:50)
      	at org.apache.lucene.codecs.TermsConsumer.merge(TermsConsumer.java:188)
      	at org.apache.lucene.codecs.FieldsConsumer.merge(FieldsConsumer.java:72)
      	at org.apache.lucene.index.SegmentMerger.mergeTerms(SegmentMerger.java:399)
      	at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:112)
      	at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4163)
      	at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3759)
      	at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:405)
      	at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:482)
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            cnstar9988 Littlestar
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: