メソッドを使用updateDocument()
して、luceneインデックスのドキュメントを更新しています。これが私がやっている方法です。
writer.updateDocument(new Term(Constants.DOC_ID_FIELD, doc.get(Constants.DOC_ID_FIELD)), doc);
Lukeでインデックスデータを確認したところ、インデックス作成の2回目の実行時に、Lukeがそのように指示していることがわかりましたDeleted Document - not available
。したがって、基本的に、ドキュメントは削除済みとしてマークされますが、それでもインデックスに存在します。
これらのマークされた削除済みドキュメントを保持したくありません。私はそれを間違っていますか?
また、ドキュメントを更新すると、古いドキュメントが削除されてから新しいドキュメントが追加されることも理解していました。そうではありませんか?