试图将一些 Lucene 3 代码转换为 Lucene 4,
我想使用 termEnums.docs(ir.getLiveDocs()) 仅返回未针对特定术语删除的文档。但是 getLiveDocs() 仅适用于 AtomicReader,虽然我只有一个索引,但它是基于文件的并使用 DirectoryReader(它是 CompositeReader 的子类)。
所以我想我可以使用 SlowCompositeReaderWrapper 但这个名字阻止了我,但我不明白的是,不是几乎每个人都使用基于文件系统的索引,不是几乎每个人都使用 CompositeReaders 吗?
然而文档似乎暗示我们应该使用 AtomicReaders 但我不明白如何使用基于文件的索引来做到这一点,也许如果基于文件的索引只有一个段,但不是由 Lucene 创建的段,因为它需要它们,并且通常不受最终用户应用程序的密切控制。