SphinxSearch:无法从(远程)代理获得结果

SphinxSearch: Cannot get result from (remote) agent

我在不同的服务器(即A和B)上构建了2个searchd实例,并在A上构建了一个分布式索引。但是,当我从客户端查询A时,我只得到了A的索引的结果。我的问题是我无法从 B' 索引获得结果,我很确定我的配置是正确的。

我试过: * 用 IP 地址替换主机名 * 我很确定我没有从 B 的索引中得到结果

A 的 sphinx.conf

index distributed_index
{
    type = distributed
    local = A_index
    agent = 192.168.13.189:9312:B_index
    agent_connect_timeout = 1000
    agent_query_timeout = 3000
}

客户端查询代码(python)

import sphinxapi
sphinx_host = 'A'
sphinx_port = 9312
SphinxClient = sphinxapi.SphinxClient()
SphinxClient.SetServer(sphinx_host,sphinx_port)
SphinxClient.SetMatchMode(sphinxapi.SPH_MATCH_EXTENDED)
res = SphinxClient.Query("")

当我 indexer --all --rotate 得到一个 WARNING:skipping 非普通索引 'distributed_index'

当我从客户端查询时,我希望从 A 和 B 得到结果。

我明白了,我明白了!

问题不在服务器(A&B)上,我配置正确。因为我不熟悉 API.Query() API 需要指定 关键词 以及 查询索引.

res = SphinxClient.Query("","distributed_index_name") 给我正确的结果!

如果你遇到类似的问题,尽管问,我很乐意帮助。