Unclosed index input in TestIndexWriterWithThreads [LUCENE-9891]
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
This cannot be easily reporoduced form the same seed but is recurring. I think it's a bug somewhere.
```Java
> Caused by:
> java.lang.RuntimeException: unclosed IndexInput: _7_LuceneFixedGap_0.doc
> at org.apache.lucene.store.MockDirectoryWrapper.addFileHandle(MockDirectoryWrapper.java:774)
> at org.apache.lucene.store.MockDirectoryWrapper.openInput(MockDirectoryWrapper.java:826)
> at org.apache.lucene.codecs.lucene90.Lucene90PostingsReader.(Lucene90PostingsReader.java:82)
> at org.apache.lucene.codecs.blockterms.LuceneFixedGap.fieldsProducer(LuceneFixedGap.java:88)
> at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat$FieldsReader.(PerFieldPostingsFormat.java:334)
> at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat.fieldsProducer(PerFieldPostingsFormat.java:412)
> at org.apache.lucene.index.SegmentCoreReaders.(SegmentCoreReaders.java:117)
> at org.apache.lucene.index.SegmentReader.(SegmentReader.java:89)
> at org.apache.lucene.index.ReadersAndUpdates.getReader(ReadersAndUpdates.java:179)
> at org.apache.lucene.index.BufferedUpdatesStream$SegmentState.(BufferedUpdatesStream.java:295)
> at org.apache.lucene.index.IndexWriter.openSegmentStates(IndexWriter.java:6167)
> at org.apache.lucene.index.IndexWriter.forceApply(IndexWriter.java:5941)
> at org.apache.lucene.index.IndexWriter.tryApply(IndexWriter.java:5875)
> at org.apache.lucene.index.IndexWriter.lambda$publishFrozenUpdates$10(IndexWriter.java:2771)
> at org.apache.lucene.index.IndexWriter$EventQueue.processEventsInternal(IndexWriter.java:323)
> at org.apache.lucene.index.IndexWriter$EventQueue.processEvents(IndexWriter.java:312)
> at org.apache.lucene.index.IndexWriter.processEvents(IndexWriter.java:5718)
> at org.apache.lucene.index.IndexWriter.maybeProcessEvents(IndexWriter.java:5711)
> at org.apache.lucene.index.IndexWriter.updateDocuments(IndexWriter.java:1539)
> at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1816)
> at org.apache.lucene.index.TestIndexWriterWithThreads$IndexerThread.run(TestIndexWriterWithThreads.java:91)
```
---
Migrated from [LUCENE-9891](https://issues.apache.org/jira/browse/LUCENE-9891) by Dawid Weiss (@dweiss)
Contributor guide
Research direction
Start with TestIndexWriterWithThreads.java, especially IndexerThread.run at line 91, and trace the stack through IndexWriter, ReadersAndUpdates, SegmentReader, and the postings readers. Investigate the recurring unclosed IndexInput reported by MockDirectoryWrapper and determine a reproducible cause; done means the leak is explained and covered by a regression test.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- search
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100