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