当字符串 arg0 太长时,org.apache.lucene.queryParser.QueryParser.parse(String arg0) 抛出 ParseException,有没有办法避免这个问题?
问问题
129 次
1 回答
0
问题是长度,那么根本问题是 TooManyClauses 例外,我猜。
您可以通过增加 max 子句来直接处理这个问题,方法是调用BooleanQuery.setMaxClauseCount()
.
不过,很有可能只是治疗症状。这通常表明,由于具有如此广泛的查询,您可能会预期性能不佳。您可能会考虑尝试Filter
在查询的某些部分使用 s,这可能会解决问题并提高性能,或者以其他方式改进查询索引的方式。
于 2014-03-12T15:48:48.400 回答