SolrNet / Solr - 大量范围查询导致400个错误请求

时间:2012-06-30 15:58:25

标签: solr solrnet

在Win 2008 Server上的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中的一些bool查询限制。我确实将maxBoolClauseCount(从1024)设置为9999. BUt错误仍然存​​在。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

可能是因为它遇到了码头的默认GET参数尺寸限制吗?

请参阅此回答Solr search query returning full head exception