【问题标题】:Why Lucene IndexWriter over write previous documents?为什么 Lucene IndexWriter 会覆盖以前的文档?
【发布时间】:2013-03-14 21:35:59
【问题描述】:

我不明白这个关于 Lucene 索引器的问题。打开 indexwriter 后,添加一些新文档,然后将其关闭。使用同一目录重新打开 indexwriter,添加一些新文档。然后所有以前的文件都不见了。我只是想不通它为什么会这样。

【问题讨论】:

  • 这永远不会发生。您是否确保该目录包含在第一次写入操作后具有某些内容的索引?您可以尝试使用 Luke 来研究相同的内容,或者只是检查目录的大小。
  • 帕尼,谢谢。你很有帮助。愚蠢的我,我没有将 deletePolicy 设置为 false。
  • 您是否将 create 参数引用到 IndexWriter ctor(在以后的版本中被 IndexWriterConfig.OpenMode 替换)?还是您实际上指的是IndexDeletionPolicy

标签: lucene


【解决方案1】:

正如 Zincup 上面提到的,在将文档添加到现有索引时,您需要将 deletePolicy 设置为 false。 (添加在这里,所以这个问题有一个正式的答案。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-16
    • 2016-09-12
    • 1970-01-01
    • 2016-04-30
    • 1970-01-01
    • 1970-01-01
    • 2012-10-15
    • 2020-03-06
    相关资源
    最近更新 更多