我的FAST Search查询返回的结果超过 100000 。我试图将结果分成5000块,如下所示:
var queryManager = SharedQueryManager.GetInstance(this.Page).QueryManager;
queryManager[0][0].ItemsPerPage = 5000;
queryManager[0][0].StartItem = 1;
queryManager[0][0].TrimDuplicates = false;
queryManager[0][0].RequestedProperties = new System.Collections.Specialized.StringCollection() { "title" };
var results = queryManager[0][0].GetResults(queryManager);
如果StartItem低于100000,它可以正常工作。但是当我尝试时它会失败:
queryManager[0][0].StartItem = 100001;
我收到一个例外:The search request was unable to execute on FAST Search Server.
,内部异常是(不是很有帮助):The creator of this fault did not specify a Reason.
我认为这是一个配置问题,因为它只发生在100000标记之后。它似乎不是超时或传输的数据太多。
我尝试更改搜索服务应用程序配置(Config:qp_MaxResultsReturned
),就像建议的here一样
但没有运气。
还有一种解决方法,建议我可以按创建日期对结果进行排序,并按日期添加额外的过滤(这样我总会收到最多5000个结果),但我觉得它有点难看。
我使用FAST Search for Sharepoint 2010 Query Logger来记录失败的查询。奇怪的是,记录的响应包含超过100000标记的搜索结果,并且没有错误的指示。
答案 0 :(得分:0)
尝试更改位于“fdispatch.addon”文件中的“maxoffset”:
%FASTSEARCH%的/ etc / config_data / RTSearch /集群网站/ fdispatch.addon
然后,重新开始搜索“nctrl restart search-1”