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);