我正在使用updateDocument()
方法来更新我在 lucene 索引中的文档。这是我的做法。
writer.updateDocument(new Term(Constants.DOC_ID_FIELD, doc.get(Constants.DOC_ID_FIELD)), doc);
我用 Luke 检查了我的索引数据,发现在第二次索引运行时,Luke 告诉了Deleted Document - not available
. 所以基本上,文档被标记为已删除,但它仍然驻留在索引中。
我不想保留这些标记为已删除的文档。我做错了吗?
另外,我的理解是,当我更新文档时,它会删除旧文档,然后添加新文档。不是这样吗?