我正在尝试使用 zend lucene 删除文档。以下是我的代码
$index = Zend_Search_Lucene::open('data/index');
foreach ($index->find('pk:' . $this->getId()) as $hit) {
$index->delete($hit->id);
}
$index->commit();
当我运行它并检查我的索引文件夹时,会创建一个这样的新文件
_f4t5_1.del
但是当我进行搜索时,已删除的文档在搜索中可用,并且还检查了
$index->numDocs();
此方法还返回删除前后相同的计数。
任何帮助表示赞赏。
最佳答案
刚刚发现问题。问题是由于我的代码中的逻辑错误造成的。删除后,我正在调用另一个函数,该函数再次将文档添加到索引中。当我检查文档 ID 时,如果发现它在删除后有所不同,这有助于我跟踪问题。谢谢您的帮助
关于zend-lucene - Zend Lucene 删除文档问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13992406/