问题描述
我正在尝试使Sphinx设置能够处理删除,但是我无法使kbatch正常工作。我有两个索引,sp_main
和sp_delta
。后者需要最近24小时更新的所有搜索文档。我还有一个表,用于存储已删除文档的ID。
source sp_delta
{
...
sql_query_kbatch = SELECT id FROM search_documents WHERE updated > DATE_SUB( Now(),INTERVAL 24 HOUR ) UNION \
SELECT id FROM search_deleted WHERE deleted >= DATE_SUB( Now(),INTERVAL 24 HOUR ) ORDER BY id ASC
}
index sp_delta
{
source = sp_delta
...
kbatch = sp_main
}
我已经手动运行查询,并验证它返回了ID(包括我刚刚删除的文档)。但是我仍然在此删除的文档上找到搜索命中。随后,我(出于故障排除的目的)也仅搜索增量索引以确认该文档中没有该文档。
我是否对这里的配置误解了?如果我对文档的理解正确,则kbatch命令应该更新sp_main索引并执行bitflip操作,但是我看不到sp_main索引文件在文件系统中已更改其任何时间戳。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)