| Index: src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java |
| =================================================================== |
| --- src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java (révision 1149488) |
| +++ src/java/org/apache/lucene/search/vectorhighlight/FieldQuery.java (copie de travail) |
| @@ -95,11 +95,22 @@ |
| if( pq.getTerms().length > 1 ) |
| flatQueries.add( pq ); |
| else if( pq.getTerms().length == 1 ){ |
| - flatQueries.add( new TermQuery( pq.getTerms()[0] ) ); |
| + flatten( new TermQuery( pq.getTerms()[0] ), flatQueries ); |
| } |
| } |
| } |
| - // else discard queries |
| + else { |
| + // Fallback to using extracted terms |
| + Set<Term> terms = new HashSet<Term>(); |
| + try { |
| + sourceQuery.extractTerms(terms); |
| + } catch (UnsupportedOperationException ignore) { // thrown by default impl |
| + return; // ignore error and discard query |
| + } |
| + for (Term term : terms) { |
| + flatten( new TermQuery(term), flatQueries ); |
| + } |
| + } |
| } |
| |
| /* |
| Index: ../CHANGES.txt |
| =================================================================== |
| --- ../CHANGES.txt (révision 1149488) |
| +++ ../CHANGES.txt (copie de travail) |
| @@ -55,6 +55,9 @@ |
| |
| Bug Fixes |
| |
| + * LUCENE-3332: Default handling of highlighting for FastVectorHighlither |
| + using extracted terms. (Olivier Favre) |
| + |
| * LUCENE-3045: fixed QueryNodeImpl.containsTag(String key) that was |
| not lowercasing the key before checking for the tag (Adriano Crestani) |
| |