Luceneを使用している私のインデクサは、約16GBのインデックスファイルを作成した後、インデックス作成中にクラッシュするようです。Lucene.net - インデックス作成中にクラッシュする
コンソールに書き込まれたスタックトレースは、わからない理由で3回繰り返されます。簡潔にするために、私は繰り返した部分だけを提供しました。ここでのLuceneによってconolseに書き込まれたとしてスタックトレースです:私はそれが壊れていたためと思われるインデックスが削除されたルークのジャワ版(で生成されたログを開くと
Lucene.Net.Index.MergePolicy+MergeException: Exception of type 'Lucene.Net.Index.MergePolicy+MergeException' was thrown. --->
System.IO.FileNotFoundException: Could not find file 'PATH_TO_MY_INDEX_DIRECTORY\_xx.cfs'.
File name: 'PATH_TO_MY_INDEX_DIRECTORY\_xx.cfs'
at Lucene.Net.Index.IndexWriter.HandleMergeException(Exception t, OneMerge merge)
at Lucene.Net.Index.IndexWriter.Merge(OneMerge merge)
at Lucene.Net.Index.ConcurrentMergeScheduler.MergeThread.Run()
--- End of inner exception stack trace ---
at Lucene.Net.Index.ConcurrentMergeScheduler.HandleMergeException(Exception exc)
at Lucene.Net.Index.ConcurrentMergeScheduler.MergeThread.Run()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
は、「write.lock」ファイルが残っているが、たとえば、これはLukeのバグや誤った設定かもしれませんが。
このインデックスの作成には約36時間かかりますが、3回目にもう一度やり直す必要はありません(これは初めてのことではありません)。
何が原因なのかわかりません。私に何ができる?
私はLucene.net 2.9.2を使用しています。これは.NET 3.5用にビルドされた最後のバージョンだからです。
ローカルドライブにインデックスを作成していますか? –
はい、ローカルドライブです。インデックスファイルを使用するプロセスは他にありません。インデクシングプログラムにはIndexWriterインスタンスが1つあります。 – Dai
これはlucene javaで考えられる理由は、ファイルハンドルが不足していることです。Lucene.net thoには当てはまりません –