Lucene indexwriter.close()是必须的吗?

Lucene indexwriter.close()是必须的吗?,lucene,Lucene,我的程序运行得太慢了,在将40000个文档插入数据库之后,我不得不中途终止它,以优化部分代码,但在调用Lucene indexwriter.close之前。然后,我找不到某些记录的任何结果,这些记录似乎仅限于该特定运行中的40000个文档 这是否意味着我在程序运行期间索引的那些记录丢失了?IndexWriter必须始终完全关闭,以便将数据写入索引 提前谢谢 你不需要打电话,但是。仅分析文档并将数据缓冲到内存中,而提交将刷新挂起的更改并执行fsync 在内部调用commit,我认为这就是为什么您假

我的程序运行得太慢了,在将40000个文档插入数据库之后,我不得不中途终止它,以优化部分代码,但在调用Lucene indexwriter.close之前。然后,我找不到某些记录的任何结果,这些记录似乎仅限于该特定运行中的40000个文档

这是否意味着我在程序运行期间索引的那些记录丢失了?IndexWriter必须始终完全关闭,以便将数据写入索引


提前谢谢

你不需要打电话,但是。仅分析文档并将数据缓冲到内存中,而提交将刷新挂起的更改并执行fsync

在内部调用commit,我认为这就是为什么您假定需要关闭


但是,请注意不要太频繁地调用commit,因为与addDocument相比,此操作的成本非常高。

您需要调用commit的可能性不大。仅分析文档并将数据缓冲到内存中,而提交将刷新挂起的更改并执行fsync

在内部调用commit,我认为这就是为什么您假定需要关闭

但是,请注意不要频繁调用commit,因为与addDocument相比,此操作的成本非常高