我需要在配置文件中为每个索引使用两个sql_attr_uint值。我从之前的帖子中发现,不要通过命令行对搜索命令过于信任。 Sphinx PHP API order differs from Search Daemon
我当前的问题是我可以在PHP API访问时检索两个sql_attr_uint值(但是当通过命令行使用搜索时,会出现两个sql_attr_uint值)
下面是我的配置文件.. http://pastebin.com/30Si7bw5
通过PHP API获取结果时,我只能看到sql_attr_uint table_id,而不能看到名为pub_id的sql_attr_uint。
任何人都可以建议为什么会这样做?
$cl = new SphinxClient();
$cl->SetServer($CONF['sphinx_host'], $CONF['sphinx_port']);
$cl->SetMatchMode($mode);
$cl->SetLimits(0, 1000);
// below line commented out atm - to only show those rows with this sql_attr_uint of 760 (is this the correct syntax?)
//$cl->SetFilter ( 'pub_id', array(760), FALSE );
$result = $cl->Query($q);
答案 0 :(得分:2)
我猜你不会继续推进搜索。您仍然使用旧索引。
重新编制索引时,请确保使用--rotate,以使searchd重新加载。
失败了。完全停止搜索,重新索引索引并启动一个干净的启动。
(你的语法是正确的,还有其他的事情发生了)