【发布时间】:2012-03-16 03:58:13
【问题描述】:
就我而言,插入到 lucene 索引中的每个文档都有其唯一 ID。将新文档添加到 lucene 索引中时,如果该文档已存在于索引中,则不应将该文档插入到索引中。如何实施这个策略?
我想我应该先用docId搜索文档,如果lucene找不到文档,那么我插入它。但是,因为我有 3 个线程共享唯一的 indexWriter 来索引,我想应该有一些错误的情况。例如:线程 1 和线程 2 正在处理两个 docId 相同的文档,如果线程 1 搜索 docId 没有找到,则将文档插入索引,但线程 2 可能会在线程 1 读取索引后将其文档插入索引。结果,索引中存在两个文档。我怎样才能避免这种情况?
【问题讨论】:
标签: lucene