0

当字符串 arg0 太长时,org.apache.lucene.queryParser.QueryParser.parse(String arg0) 抛出 ParseException,有没有办法避免这个问题?

4

1 回答 1

0

问题是长度,那么根本问题是 TooManyClauses 例外,我猜。

您可以通过增加 max 子句来直接处理这个问题,方法是调用BooleanQuery.setMaxClauseCount().

不过,很有可能只是治疗症状。这通常表明,由于具有如此广泛的查询,您可能会预期性能不佳。您可能会考虑尝试Filter在查询的某些部分使用 s,这可能会解决问题并提高性能,或者以其他方式改进查询索引的方式。

于 2014-03-12T15:48:48.400 回答