如何知道Lucene索引生成过程何时完成

时间:2009-06-23 18:47:35

标签: lucene lucene.net

我有一个.net windows服务,它每晚都会生成Lucene搜索索引。 我首先从数据库中获取所有记录,然后使用IndexWriter的AddDocument方法将其添加到Lucene索引,然后在从方法返回之前调用Optimize方法。 由于获取的记录非常大,索引编制大约需要2-3分钟才能完成。 如您所知,Lucene在生成索引时生成中间段文件,并在调用Optimize时将整个索引压缩为3个文件。

无论如何我可以知道这个索引生成过程是由Lucene完成的,索引是否可以搜索? 我需要知道这一点,因为我想在完成流程时调用另一种方法。

2 个答案:

答案 0 :(得分:4)

答案 1 :(得分:0)

我不明白为什么你需要知道Lucene什么时候完成索引。您可以在Lucene编制索引时执行搜索。事实上,我认为你可以在优化时进行搜索。

我个人不喜欢搜索锁定文件的想法。在调用writer.optimize()后,你能不能设置一个布尔值并切换它?