我们已经实现了搜索,并且在某些情况下我们遇到了TooManyClausesException,例如,如果我们在搜索输入字段中使用了太多关键字。我不是问如何解决这个问题,它是Sitecore.ContentSearch.Lucene.DefaultIndexConfiguration.config中的一个设置。
但是,在我的本地计算机上,我可以在日志中看到异常:
24084 09:41:40错误无法创建搜索上下文。 例外:Sitecore.ContentSearch.Linq.Lucene.Exceptions.TooManyClausesException
在我们的生产系统上,此异常不会出现在日志中。日志级别与本地计算机上的日志级别相同。
通过反汇编Sitecore.ContentSearch我已经看到此异常被捕获并再次抛出:
try
{
query1 = query1.Rewrite(reader);
}
catch (BooleanQuery.TooManyClauses ex)
{
throw new TooManyClausesException();
}
任何想法,为什么这个例外只会在我们的生产环境中被“吞噬”,我觉得这是一个配置问题。
由于
答案 0 :(得分:0)
请查看以下声明
<setting name="ContentSearch.LuceneQueryClauseCount" value="1024" />
来自配置文件 Sitecore.ContentSearch.Lucene.DefaultIndexConfiguration.config 。它可能与您在本地机器和生产上的不同。您还可以查看以下链接以获取更多信息:Link