You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2011/10/04 19:57:10 UTC

svn commit: r1178881 - /lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiPhraseQuery.java

Author: rmuir
Date: Tue Oct  4 17:57:10 2011
New Revision: 1178881

URL: http://svn.apache.org/viewvc?rev=1178881&view=rev
Log:
LUCENE-3474: don't pull our own liveDocs in MultiPhraseQuery

Modified:
    lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiPhraseQuery.java

Modified: lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiPhraseQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiPhraseQuery.java?rev=1178881&r1=1178880&r2=1178881&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiPhraseQuery.java (original)
+++ lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/MultiPhraseQuery.java Tue Oct  4 17:57:10 2011
@@ -179,7 +179,7 @@ public class MultiPhraseQuery extends Qu
         int docFreq;
 
         if (terms.length > 1) {
-          postingsEnum = new UnionDocsAndPositionsEnum(reader, terms);
+          postingsEnum = new UnionDocsAndPositionsEnum(liveDocs, reader, terms);
 
           // coarse -- this overcounts since a given doc can
           // have more than one terms:
@@ -435,9 +435,8 @@ class UnionDocsAndPositionsEnum extends 
   private DocsQueue _queue;
   private IntQueue _posList;
 
-  public UnionDocsAndPositionsEnum(IndexReader indexReader, Term[] terms) throws IOException {
+  public UnionDocsAndPositionsEnum(Bits liveDocs, IndexReader indexReader, Term[] terms) throws IOException {
     List<DocsAndPositionsEnum> docsEnums = new LinkedList<DocsAndPositionsEnum>();
-    final Bits liveDocs = indexReader.getLiveDocs();
     for (int i = 0; i < terms.length; i++) {
       DocsAndPositionsEnum postings = indexReader.termPositionsEnum(liveDocs,
                                                                     terms[i].field(),