JIRA throws No sub-file with id found when indexing

Still need help?

The Atlassian Community is here for you.

Ask the community

Platform Notice: Server, Data Center, and Cloud By Request - This article was written for the Atlassian server and data center platforms but may also be useful for Atlassian Cloud customers. If completing instructions in this article would help you, please contact Atlassian Support and mention it.

Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Problem

  • Re-index fails in JIRA with a RuntimeIOException

The following appears in the atlassian-jira.log:

2015-06-18 14:34:23,108 http-bio-8080-exec-19 WARN username 874x357x1 asa6is 192.168.0.10 /secure/QuickCreateIssue.jspa [atlassian.jira.index.AccumulatingResultBuilder] java.io.IOException: No sub-file with id .prx found (files: [.tii, .fnm, .frq, .tis, .fdx, .nrm, .fdt])
com.atlassian.jira.util.RuntimeIOException: java.io.IOException: No sub-file with id .prx found (files: [.tii, .fnm, .frq, .tis, .fdx, .nrm, .fdt])
at com.atlassian.jira.index.WriterWrapper.commit(WriterWrapper.java:147)
at com.atlassian.jira.index.DefaultIndexEngine$WriterReference.commit(DefaultIndexEngine.java:285)
at com.atlassian.jira.index.DefaultIndexEngine$FlushPolicy$2.commit(DefaultIndexEngine.java:78)
at com.atlassian.jira.index.DefaultIndexEngine$FlushPolicy.perform(DefaultIndexEngine.java:148)
at com.atlassian.jira.index.DefaultIndexEngine.write(DefaultIndexEngine.java:217)
at com.atlassian.jira.index.DefaultIndex.perform(DefaultIndex.java:36)
at com.atlassian.jira.index.QueueingIndex$Task.perform(QueueingIndex.java:159)
at com.atlassian.jira.index.QueueingIndex$Task.index(QueueingIndex.java:175)
at com.atlassian.jira.index.QueueingIndex$Task.run(QueueingIndex.java:133)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: No sub-file with id .prx found (files: [.tii, .fnm, .frq, .tis, .fdx, .nrm, .fdt])
at org.apache.lucene.index.CompoundFileReader.openInput(CompoundFileReader.java:155)
at org.apache.lucene.index.SegmentCoreReaders.<init>(SegmentCoreReaders.java:88)
at org.apache.lucene.index.SegmentReader.get(SegmentReader.java:114)
at org.apache.lucene.index.IndexWriter$ReaderPool.get(IndexWriter.java:702)
at org.apache.lucene.index.IndexWriter$ReaderPool.get(IndexWriter.java:677)
at org.apache.lucene.index.IndexWriter.doFlush(IndexWriter.java:3571)
at org.apache.lucene.index.IndexWriter.flush(IndexWriter.java:3508)
at org.apache.lucene.index.IndexWriter.prepareCommit(IndexWriter.java:3371)
at org.apache.lucene.index.IndexWriter.commitInternal(IndexWriter.java:3444)
at org.apache.lucene.index.IndexWriter.commit(IndexWriter.java:3426)
at org.apache.lucene.index.IndexWriter.commit(IndexWriter.java:3410)
at com.atlassian.jira.index.WriterWrapper.commit(WriterWrapper.java:143)

Cause

There is a bug in Apache Lucene which is used in JIRA for indexing, tracked as part of LUCENE-5541.

You may encounter this when attempting to read from a file without having the necessary permissions or due to a failed network request. As mentioned on JIRA Supported Platforms Network storage locations are not supported due to Lucene requirements (such as NFS mounts). Please see the IndexWriter docs for further info. 

Resolution

To resolve this problem, the indexes have to be re-built.

  1. Shutdown JIRA.
  2. Copy the contents of the JIRA HOME Directory except for the indexes folder.

    $JIRA_HOME\caches\indexes
  3. Setting your JIRA Home Directory to the server/drive where the install folder is located.
  4. Restart JIRA.
  5. Run a full re-index.

Last modified on Nov 1, 2018

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.