xunsearch主键重复、搜索结果重复
清泛原创
try {
$xs = new XS('itech.so');
$index = $xs->index;
$doc = new XSDocument(array(
......
));
//$index->update($doc);
$index->add($doc);
} catch (XSException $e) {
print $e;
}
使用$index->update($doc);时,由于有一定的缓存时间,不是立马建立索引,所以如果两次update时间过短,就会出现主键重复的情况。但是如果第一次是$index->add($doc);,第二次是$index->update($doc);,则结果以第一次add为准,第二次update提交会忽略(验证的结果)。
至于想彻底解决重复的问题,还是得从xunsearch后端c/c++源码研究起,也许是未考虑到的bug,官方论坛有人反馈但无结果。
清泛网追记:
xunsearch 1.4.14 版本存在此问题,从 1.4.15 版本起已解决该问题,可以按照官方提供的步骤自动升级最新版本。
如何确认已升级成功,请参考:https://fun123.cn/?q=%E5%A6%82%E4%BD%95%E6%9F%A5%E7%9C%8B+xunsearch+%E7%89%88%E6%9C%AC&x=0&y=0