You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ro...@apache.org on 2014/12/08 12:45:27 UTC

svn commit: r1643791 - in /lucene/dev/branches/lucene2878/lucene/core/src: java/org/apache/lucene/search/ test/org/apache/lucene/ test/org/apache/lucene/search/

Author: romseygeek
Date: Mon Dec  8 11:45:26 2014
New Revision: 1643791

URL: http://svn.apache.org/r1643791
Log:
LUCENE-2878: Remove postingsFeatures() from Collector

Modified:
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/BooleanScorer.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/CachingCollector.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Collector.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterCollector.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/MultiCollector.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SimpleCollector.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TimeLimitingCollector.java
    lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TotalHitCountCollector.java
    lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/TestSearchForDuplicates.java
    lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestBooleanQueryVisitSubscorers.java
    lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestCachingCollector.java

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/BooleanScorer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/BooleanScorer.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/BooleanScorer.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/BooleanScorer.java Mon Dec  8 11:45:26 2014
@@ -17,12 +17,11 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
-import org.apache.lucene.index.DocsEnum;
-import org.apache.lucene.search.BooleanQuery.BooleanWeight;
-
 import java.io.IOException;
 import java.util.List;
 
+import org.apache.lucene.search.BooleanQuery.BooleanWeight;
+
 /* Description from Doug Cutting (excerpted from
  * LUCENE-1483):
  *
@@ -99,11 +98,6 @@ final class BooleanScorer extends BulkSc
       return true;
     }
 
-    @Override
-    public int postingFeatures() {
-      return DocsEnum.FLAG_FREQS;
-    }
-
   }
 
   static final class Bucket {

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/CachingCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/CachingCollector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/CachingCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/CachingCollector.java Mon Dec  8 11:45:26 2014
@@ -128,11 +128,6 @@ public abstract class CachingCollector e
       docs = new ArrayList<>();
     }
 
-    @Override
-    public int postingFeatures() {
-      return in.postingFeatures();
-    }
-
     protected NoScoreCachingLeafCollector wrap(LeafCollector in, int maxDocsToCache) {
       return new NoScoreCachingLeafCollector(in, maxDocsToCache);
     }
@@ -341,7 +336,7 @@ public abstract class CachingCollector e
    * @param acceptDocsOutOfOrder
    *          whether documents are allowed to be collected out-of-order
    */
-  public static CachingCollector create(final boolean acceptDocsOutOfOrder, final int flags, boolean cacheScores, double maxRAMMB) {
+  public static CachingCollector create(final boolean acceptDocsOutOfOrder, boolean cacheScores, double maxRAMMB) {
     Collector other = new SimpleCollector() {
       @Override
       public boolean acceptsDocsOutOfOrder() {
@@ -349,11 +344,6 @@ public abstract class CachingCollector e
       }
 
       @Override
-      public int postingFeatures() {
-        return flags;
-      }
-
-      @Override
       public void collect(int doc) {}
 
     };

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Collector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Collector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Collector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/Collector.java Mon Dec  8 11:45:26 2014
@@ -17,10 +17,10 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
-import org.apache.lucene.index.LeafReaderContext;
-
 import java.io.IOException;
 
+import org.apache.lucene.index.LeafReaderContext;
+
 /**
  * <p>Expert: Collectors are primarily meant to be used to
  * gather raw results from a search, and implement sorting
@@ -73,9 +73,4 @@ public interface Collector {
    */
   LeafCollector getLeafCollector(LeafReaderContext context) throws IOException;
   
-  /**
-   * Returns the posting features required by this collector.
-   */
-  public int postingFeatures();
-  
 }

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterCollector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/FilterCollector.java Mon Dec  8 11:45:26 2014
@@ -1,9 +1,9 @@
 package org.apache.lucene.search;
 
-import org.apache.lucene.index.LeafReaderContext;
-
 import java.io.IOException;
 
+import org.apache.lucene.index.LeafReaderContext;
+
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -41,11 +41,6 @@ public class FilterCollector implements
   }
 
   @Override
-  public int postingFeatures() {
-    return in.postingFeatures();
-  }
-
-  @Override
   public String toString() {
     return getClass().getSimpleName() + "(" + in + ")";
   }

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java Mon Dec  8 11:45:26 2014
@@ -17,7 +17,23 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
+import java.util.NoSuchElementException;
+import java.util.Set;
+import java.util.concurrent.Callable;
+import java.util.concurrent.CompletionService;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.Executor;
+import java.util.concurrent.ExecutorCompletionService;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.locks.Lock;
+import java.util.concurrent.locks.ReentrantLock;
+
 import org.apache.lucene.index.DirectoryReader;
+import org.apache.lucene.index.DocsEnum;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexReaderContext;
 import org.apache.lucene.index.IndexWriter;
@@ -34,21 +50,6 @@ import org.apache.lucene.search.similari
 import org.apache.lucene.store.NIOFSDirectory;
 import org.apache.lucene.util.ThreadInterruptedException;
 
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.NoSuchElementException;
-import java.util.Set;
-import java.util.concurrent.Callable;
-import java.util.concurrent.CompletionService;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Executor;
-import java.util.concurrent.ExecutorCompletionService;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.locks.Lock;
-import java.util.concurrent.locks.ReentrantLock;
-
 /** Implements search over a single IndexReader.
  *
  * <p>Applications usually need only call the inherited
@@ -608,7 +609,7 @@ public class IndexSearcher {
         // continue with the following leaf
         continue;
       }
-      BulkScorer scorer = weight.bulkScorer(ctx, !leafCollector.acceptsDocsOutOfOrder(), collector.postingFeatures(), ctx.reader().getLiveDocs());
+      BulkScorer scorer = weight.bulkScorer(ctx, !leafCollector.acceptsDocsOutOfOrder(), DocsEnum.FLAG_FREQS, ctx.reader().getLiveDocs());
       if (scorer != null) {
         try {
           scorer.score(leafCollector);

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/MultiCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/MultiCollector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/MultiCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/MultiCollector.java Mon Dec  8 11:45:26 2014
@@ -17,11 +17,11 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
-import org.apache.lucene.index.LeafReaderContext;
-
 import java.io.IOException;
 import java.util.Arrays;
 
+import org.apache.lucene.index.LeafReaderContext;
+
 /**
  * A {@link Collector} which allows running a search with several
  * {@link Collector}s. It offers a static {@link #wrap} method which accepts a
@@ -101,16 +101,6 @@ public class MultiCollector implements C
     return new MultiLeafCollector(leafCollectors);
   }
 
-  @Override
-  public int postingFeatures() {
-    int pf = 0;
-    for (Collector collector : collectors) {
-      pf |= collector.postingFeatures();
-    }
-    return pf;
-  }
-
-
   private static class MultiLeafCollector implements LeafCollector {
 
     private final LeafCollector[] collectors;

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SimpleCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SimpleCollector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SimpleCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/SimpleCollector.java Mon Dec  8 11:45:26 2014
@@ -17,8 +17,6 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
-import org.apache.lucene.index.DocsEnum;
-
 import java.io.IOException;
 
 import org.apache.lucene.index.LeafReaderContext;
@@ -52,9 +50,4 @@ public abstract class SimpleCollector im
   @Override
   public abstract void collect(int doc) throws IOException;
 
-  @Override
-  public int postingFeatures() {
-    return DocsEnum.FLAG_FREQS;
-  }
-
 }

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TimeLimitingCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TimeLimitingCollector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TimeLimitingCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TimeLimitingCollector.java Mon Dec  8 11:45:26 2014
@@ -17,12 +17,12 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
+import java.io.IOException;
+
 import org.apache.lucene.index.LeafReaderContext;
 import org.apache.lucene.util.Counter;
 import org.apache.lucene.util.ThreadInterruptedException;
 
-import java.io.IOException;
-
 /**
  * The {@link TimeLimitingCollector} is used to timeout search requests that
  * take longer than the maximum allowed search time limit. After this time is
@@ -157,11 +157,6 @@ public class TimeLimitingCollector imple
     };
   }
 
-  @Override
-  public int postingFeatures() {
-    return collector.postingFeatures();
-  }
-
   /**
    * This is so the same timer can be used with a multi-phase search process such as grouping. 
    * We don't want to create a new TimeLimitingCollector for each phase because that would 

Modified: lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TotalHitCountCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TotalHitCountCollector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TotalHitCountCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/java/org/apache/lucene/search/TotalHitCountCollector.java Mon Dec  8 11:45:26 2014
@@ -37,15 +37,6 @@ public class TotalHitCountCollector exte
   }
 
   @Override
-  public int postingFeatures() {
-    // nocommit: we don't need frequencies here, but it causes test failures if
-    // we don't ask for them because our leafcollectors sometimes get wrapped in
-    // RandomOrderCollectors, which call score(), and that trips an assertion
-    // in AssertingLeafReader.freq() when the freq turns out to be 0.
-    return DocsEnum.FLAG_FREQS;
-  }
-
-  @Override
   public boolean acceptsDocsOutOfOrder() {
     return true;
   }

Modified: lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/TestSearchForDuplicates.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/TestSearchForDuplicates.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/TestSearchForDuplicates.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/TestSearchForDuplicates.java Mon Dec  8 11:45:26 2014
@@ -22,13 +22,32 @@ import java.io.PrintWriter;
 import java.io.StringWriter;
 import java.util.Random;
 
-import org.apache.lucene.store.*;
-import org.apache.lucene.document.*;
-import org.apache.lucene.analysis.*;
-import org.apache.lucene.index.*;
-import org.apache.lucene.search.*;
+import com.carrotsearch.randomizedtesting.annotations.Seed;
+import org.apache.lucene.analysis.Analyzer;
+import org.apache.lucene.analysis.MockAnalyzer;
+import org.apache.lucene.document.Document;
+import org.apache.lucene.document.Field;
+import org.apache.lucene.document.IntField;
+import org.apache.lucene.document.NumericDocValuesField;
+import org.apache.lucene.index.DirectoryReader;
+import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.IndexWriterConfig;
+import org.apache.lucene.index.MergePolicy;
+import org.apache.lucene.index.StoredDocument;
+import org.apache.lucene.index.Term;
+import org.apache.lucene.search.BooleanClause;
+import org.apache.lucene.search.BooleanQuery;
+import org.apache.lucene.search.IndexSearcher;
+import org.apache.lucene.search.Query;
+import org.apache.lucene.search.ScoreDoc;
+import org.apache.lucene.search.Sort;
+import org.apache.lucene.search.SortField;
+import org.apache.lucene.search.TermQuery;
+import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.LuceneTestCase;
 
+@Seed("1614EBB06B1F4D76:B454400327B737DA")
 public class TestSearchForDuplicates extends LuceneTestCase {
 
   static final String PRIORITY_FIELD ="priority";

Modified: lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestBooleanQueryVisitSubscorers.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestBooleanQueryVisitSubscorers.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestBooleanQueryVisitSubscorers.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestBooleanQueryVisitSubscorers.java Mon Dec  8 11:45:26 2014
@@ -17,15 +17,22 @@ package org.apache.lucene.search;
  * limitations under the License.
  */
 
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.MockAnalyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field.Store;
 import org.apache.lucene.document.TextField;
-import org.apache.lucene.index.DocsEnum;
-import org.apache.lucene.index.LeafReaderContext;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriterConfig;
+import org.apache.lucene.index.LeafReaderContext;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.BooleanClause.Occur;
@@ -33,14 +40,6 @@ import org.apache.lucene.search.Scorer.C
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.LuceneTestCase;
 
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
 // TODO: refactor to a base class, that collects freqs from the scorer tree
 // and test all queries with it
 public class TestBooleanQueryVisitSubscorers extends LuceneTestCase {
@@ -255,11 +254,6 @@ public class TestBooleanQueryVisitSubsco
       };
     }
 
-    @Override
-    public int postingFeatures() {
-      return DocsEnum.FLAG_NONE;
-    }
-
     private static void summarizeScorer(final StringBuilder builder, final Scorer scorer, final int indent) {
       builder.append(scorer.getClass().getSimpleName());
       if (scorer instanceof TermScorer) {

Modified: lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestCachingCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestCachingCollector.java?rev=1643791&r1=1643790&r2=1643791&view=diff
==============================================================================
--- lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestCachingCollector.java (original)
+++ lucene/dev/branches/lucene2878/lucene/core/src/test/org/apache/lucene/search/TestCachingCollector.java Mon Dec  8 11:45:26 2014
@@ -19,7 +19,6 @@ package org.apache.lucene.search;
 
 import java.io.IOException;
 
-import org.apache.lucene.index.DocsEnum;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
 
@@ -202,7 +201,7 @@ public class TestCachingCollector extend
   public void testNoWrappedCollector() throws Exception {
     for (boolean cacheScores : new boolean[] { false, true }) {
       // create w/ null wrapped collector, and test that the methods work
-      CachingCollector cc = CachingCollector.create(true, DocsEnum.FLAG_NONE, cacheScores, 50 * ONE_BYTE);
+      CachingCollector cc = CachingCollector.create(true, cacheScores, 50 * ONE_BYTE);
       LeafCollector acc = cc.getLeafCollector(null);
       acc.setScorer(new MockScorer());
       acc.collect(0);