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

IndexFileDeleter AssertionError in presence of *_upgraded.si files

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 4.7
    • None
    • None
    • None
    • New

    Description

      When calling IndexWriter.deleteUnusedFiles against an index that contains 3.x segments, i am seeing the following exception:

      java.lang.AssertionError: failAndDumpStackJunitStatment: RefCount is 0 pre-decrement for file "_0_upgraded.si"
              at org.apache.lucene.index.IndexFileDeleter$RefCount.DecRef(IndexFileDeleter.java:630)
              at org.apache.lucene.index.IndexFileDeleter.decRef(IndexFileDeleter.java:514)
              at org.apache.lucene.index.IndexFileDeleter.deleteCommits(IndexFileDeleter.java:286)
              at org.apache.lucene.index.IndexFileDeleter.revisitPolicy(IndexFileDeleter.java:393)
              at org.apache.lucene.index.IndexWriter.deleteUnusedFiles(IndexWriter.java:4617)
      

      I believe this is caused by IndexFileDeleter not being aware of the Lucene3x Segment Infos Format (notably the _upgraded.si files created to "upgrade" an old index)

      This is new in 4.7 and did not occur in 4.6.1

      Still trying to track down a workaround/fix

      Attachments

        Issue Links

          Activity

            People

              mikemccand Michael McCandless
              tsmith Tim Smith
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated: