我们最近从Lucene 3.6升级到Lucene 4.7.2,并且正面临着
创建WildCardQuery
*java.lang.OutOfMemoryError: GC overhead limit exceeded*
代码:
Query query = new WildcardQuery(new Term("id", "someTerm"));
堆栈跟踪:
java.lang.OutOfMemoryError: GC overhead limit exceeded at
org.apache.lucene.util.automaton.Automaton.clone(Automaton.java:646) at
org.apache.lucene.util.automaton.SpecialOperations.getCommonSuffixBytesRef(SpecialOperations.java:163) at
org.apache.lucene.util.automaton.CompiledAutomaton.
(CompiledAutomaton.java:168) at
org.apache.lucene.util.automaton.CompiledAutomaton.
(CompiledAutomaton.java:91) at
org.apache.lucene.search.AutomatonQuery.(AutomatonQuery.java:67) at
org.apache.lucene.search.WildcardQuery.(WildcardQuery.java:57)
注意:由于搜索字词是由最终用户输入的,因此我们不确定 什么术语引起了它。
谢谢, P上。