簡體   English   中英

將Document添加到索引后忘記關閉Lucene IndexWriter

[英]Forgot to close the Lucene IndexWriter after adding Documents to the index

我有一個程序運行2天來為大約1.6億個文本文件構建一個Lucene索引,在程序結束后,我嘗試搜索索引並發現索引沒有正確構建,indexReader.numDocs()返回0.我檢查過索引目錄,看起來不錯,所有索引數據似乎都在那里,目錄大小為1.5千兆字節。

我檢查了我的代碼,發現我忘了調用indexWriter.optimize()和indexWriter.close(),我想知道是否有可能重新優化()索引,所以我不需要重建整個索引從頭開始? 我真的不希望該計划再花2天時間。

調用IndexWriter.optimize()不是必需的,可以稍后通過重新打開索引來調用。 它只是優化索引中的文檔以獲得更好的讀取性能,並且不會影響任何內容。

如果您忘記調用IndexWriter.close()那么您的索引可能不完整。 由於您處理了如此多的文檔,因此可能會刷新大部分文檔,所以希望您只需要重新索引最后一個文檔。 使用Luke建議用戶界面快速瀏覽索引以查看其狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM