在 Win 2008 服务器上的 Tomcat 7 上运行 Solr。
我正在遍历许多变量并创建一组范围查询来创建一个包含 500 多个子句的查询。
List<ISolrQuery> queryList = new List<ISolrQuery>();
//THis is for var 1 , I have 6 sets of vars like this...
for (int n = 0; n < N; n++)
{
queryList.Add(new SolrQueryByRange<double>("VAR1_" + n, val1[n] * lowerbound, val1[n] * upperBound));
}
//...var 2
for (int n = 0; n < N; n++)
{
queryList.Add(new SolrQueryByRange<double>("VAR2_" + n, val2[n] * lowerbound, val2[n] * upperBound));
}
//...var 3... and so on...
var results = solr.Query(new SolrMultipleCriteriaQuery(queryList.ToArray<ISolrQuery>(),"OR"), new QueryOptions
{
Rows = 100,
Fields = new[] { "FileName, ID,score" },
Facet = new FacetParameters
{
Queries = new[]
{
new SolrFacetFieldQuery("Extension"),
new SolrFacetFieldQuery("FileName"),
}
}
});
我收到了来自 solr 的 400 错误请求。当我只运行 1 个 var 时,查询工作正常。我假设这是 solr 中的一些布尔查询限制。我确实将 maxBoolClauseCount(从 1024)设置为 9999。但错误仍然存在。
有任何想法吗?