Unable to Index JIRA due to The specified network name is no longer available
症状
Attempting to index JIRA fails with either of the below exceptions:
The following appears in the browser:
また、atlassian-jira.log
には次の内容が表示される。
java.lang.NullPointerException
at org.apache.lucene.index.SegmentNorms.decRef(SegmentNorms.java:102)
at org.apache.lucene.index.SegmentNorms.decRef(SegmentNorms.java:94)
at org.apache.lucene.index.SegmentReader.doClose(SegmentReader.java:384)
at org.apache.lucene.index.IndexReader.decRef(IndexReader.java:242)
at org.apache.lucene.index.DirectoryReader.doClose(DirectoryReader.java:895)
at org.apache.lucene.index.IndexReader.decRef(IndexReader.java:242)
at org.apache.lucene.index.IndexReader.close(IndexReader.java:1208)
at com.atlassian.jira.index.DefaultIndexEngine$SearcherFactoryImpl.release(DefaultIndexEngine.java:392)
at com.atlassian.jira.index.DefaultIndexEngine.close(DefaultIndexEngine.java:166)
at com.atlassian.jira.index.DefaultIndexEngine.clean(DefaultIndexEngine.java:137)
at com.atlassian.jira.index.DefaultManager.deleteIndexDirectory(DefaultManager.java:43)
at com.atlassian.jira.issue.index.DefaultIssueIndexer.deleteIndexes(DefaultIssueIndexer.java:205)
at com.atlassian.jira.issue.index.DefaultIndexManager.doStopTheWorldReindex(DefaultIndexManager.java:826)
at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexAll(DefaultIndexManager.java:337)
at com.atlassian.jira.issue.index.DefaultIndexManager.reIndexAll(DefaultIndexManager.java:303)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
診断
The JIRA indexes directory, $JIRA_HOME/caches/indexes
, is mounted on a remote network share using NFS.
原因
The JIRA indexes are created using Java functionality called Lucene. Lucene does not support NFS mounts as stipulated in their IndexWriter docs. This is also listed in our JIRA Supported Platforms.
ソリューション
This can be resolved by moving the indexes directory, $JIRA_HOME/caches/indexes
, to a local mount on the server that is running JIRA. This depends upon the OS that is being used - for Windows the Assign a mount point folder path to a drive TechNet article will be of assistance.