Author: tommaso
Date: Mon Nov 30 08:57:19 2015
New Revision: 1717203

URL: http://svn.apache.org/viewvc?rev=1717203&view=rev
Log:
OAK-3407 - fixed QP instantiation to avoid 'too many clause' exception

Modified:
    
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java?rev=1717203&r1=1717202&r2=1717203&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java
 Mon Nov 30 08:57:19 2015
@@ -77,7 +77,6 @@ import org.apache.lucene.index.MultiFiel
 import org.apache.lucene.index.StoredFieldVisitor;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.queries.CustomScoreQuery;
-import org.apache.lucene.queryparser.classic.MultiFieldQueryParser;
 import org.apache.lucene.queryparser.classic.ParseException;
 import org.apache.lucene.queryparser.classic.QueryParser;
 import org.apache.lucene.queryparser.flexible.core.QueryNodeException;
@@ -432,8 +431,10 @@ public class LucenePropertyIndex impleme
 
                         List<Lookup.LookupResult> lookupResults = 
SuggestHelper.getSuggestions(indexNode.getLookup(), suggestQuery);
 
-                        Collection<String> indexedFields = 
MultiFields.getIndexedFields(searcher.getIndexReader());
-                        QueryParser qp = new 
MultiFieldQueryParser(Version.LUCENE_47, indexedFields.toArray(new 
String[indexedFields.size()]), indexNode.getDefinition().getAnalyzer());
+                        QueryParser qp =  new QueryParser(Version.LUCENE_47, 
FieldNames.SUGGEST,
+                                indexNode.getDefinition().isSuggestAnalyzed() 
? indexNode.getDefinition().getAnalyzer() :
+                                SuggestHelper.getAnalyzer());
+
                         // ACL filter suggestions
                         for (Lookup.LookupResult suggestion : lookupResults) {
                             Query query = qp.parse("\"" + 
suggestion.key.toString() + "\"");


Reply via email to