优化大型Lucene索引无声地失败

时间:2013-01-23 16:00:40

标签: lucene

我有一个关于优化大型Lucene索引的问题(它现在是197 Gb - 对于你们中的一些人来说可能听起来不那么大)。 我正在使用版本2.9.4的Lucene,当我需要将具有900个段的索引优化为更少数量的段(理想情况下为1-10)时,我才进入状态。我仍在调用2.9.4中可用的IndexWriter.optimize(),但设置合并因子失败的方式相同。

因此,在优化我的日志一小时后(我已经设置了所有可能的日志)会发生优化并且任何日志文件中都没有错误。一切看起来都很好,除了索引目录中的文件仍然相同 - 没有减少或删除文件的数量。 我有足够的空间驱动器(300 Gb)并且没有读者或搜索者开放 - 索引是孤立的,专注于优化。

根据索引wirter日志,合并线程合并段并从900到456迭代地打印出一些段的段然后突然它说它将所有段合并到16段(这就是我设置的段数)合并到)

有谁知道会发生什么?我合并了太多细分吗?可能有任何操作系统相关(Windows Server 2008)问题,如“打开太多文件处理程序”(我在哪里可以检查该消息)? 提前致谢

1 个答案:

答案 0 :(得分:0)

这不是失败。问题非常简单 - 您只需在优化完成后打开索引阅读器(或重新打开现有的阅读器)。就是这样。当您在几秒钟内打开阅读器时,它将用新文件列表替换旧索引文件。