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/01 05:05:07 UTC
svn commit: r1177888 [11/16] - in /lucene/dev/branches/lucene2621: ./
dev-tools/eclipse/ dev-tools/idea/lucene/contrib/ dev-tools/maven/ lucene/
lucene/contrib/ lucene/contrib/demo/src/java/org/apache/lucene/demo/
lucene/contrib/demo/src/java/org/apach...
Modified: lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUNormalizer2Filter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUNormalizer2Filter.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUNormalizer2Filter.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUNormalizer2Filter.java Sat Oct 1 03:04:53 2011
@@ -29,7 +29,7 @@ import com.ibm.icu.text.Normalizer2;
* Tests the ICUNormalizer2Filter
*/
public class TestICUNormalizer2Filter extends BaseTokenStreamTestCase {
- Analyzer a = new ReusableAnalyzerBase() {
+ Analyzer a = new Analyzer() {
@Override
public TokenStreamComponents createComponents(String fieldName, Reader reader) {
Tokenizer tokenizer = new WhitespaceTokenizer(TEST_VERSION_CURRENT, reader);
@@ -59,7 +59,7 @@ public class TestICUNormalizer2Filter ex
}
public void testAlternate() throws IOException {
- Analyzer a = new ReusableAnalyzerBase() {
+ Analyzer a = new Analyzer() {
@Override
public TokenStreamComponents createComponents(String fieldName, Reader reader) {
Tokenizer tokenizer = new WhitespaceTokenizer(TEST_VERSION_CURRENT, reader);
Modified: lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUTransformFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUTransformFilter.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUTransformFilter.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/TestICUTransformFilter.java Sat Oct 1 03:04:53 2011
@@ -26,7 +26,6 @@ import org.apache.lucene.analysis.BaseTo
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.core.KeywordTokenizer;
import org.apache.lucene.analysis.core.WhitespaceTokenizer;
-import org.apache.lucene.analysis.ReusableAnalyzerBase;
import org.apache.lucene.analysis.TokenStream;
import com.ibm.icu.text.Transliterator;
@@ -92,7 +91,7 @@ public class TestICUTransformFilter exte
/** blast some random strings through the analyzer */
public void testRandomStrings() throws Exception {
final Transliterator transform = Transliterator.getInstance("Any-Latin");
- Analyzer a = new ReusableAnalyzerBase() {
+ Analyzer a = new Analyzer() {
@Override
protected TokenStreamComponents createComponents(String fieldName, Reader reader) {
Tokenizer tokenizer = new WhitespaceTokenizer(TEST_VERSION_CURRENT, reader);
Modified: lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/segmentation/TestICUTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/segmentation/TestICUTokenizer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/segmentation/TestICUTokenizer.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/analysis/icu/segmentation/TestICUTokenizer.java Sat Oct 1 03:04:53 2011
@@ -22,7 +22,6 @@ import org.apache.lucene.analysis.BaseTo
import org.apache.lucene.analysis.TokenFilter;
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.icu.ICUNormalizer2Filter;
-import org.apache.lucene.analysis.ReusableAnalyzerBase;
import java.io.IOException;
import java.io.Reader;
@@ -61,7 +60,7 @@ public class TestICUTokenizer extends Ba
assertTokenStreamContents(tokenizer, expected);
}
- private Analyzer a = new ReusableAnalyzerBase() {
+ private Analyzer a = new Analyzer() {
@Override
protected TokenStreamComponents createComponents(String fieldName,
Reader reader) {
Modified: lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyFilter.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyFilter.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyFilter.java Sat Oct 1 03:04:53 2011
@@ -44,7 +44,7 @@ public class TestICUCollationKeyFilter e
(collator.getCollationKey(secondRangeEndOriginal).toByteArray()));
- public final class TestAnalyzer extends ReusableAnalyzerBase {
+ public final class TestAnalyzer extends Analyzer {
private Collator _collator;
TestAnalyzer(Collator collator) {
Modified: lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/java/org/apache/lucene/analysis/morfologik/MorfologikAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/java/org/apache/lucene/analysis/morfologik/MorfologikAnalyzer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/java/org/apache/lucene/analysis/morfologik/MorfologikAnalyzer.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/java/org/apache/lucene/analysis/morfologik/MorfologikAnalyzer.java Sat Oct 1 03:04:53 2011
@@ -20,10 +20,10 @@ package org.apache.lucene.analysis.morfo
import java.io.Reader;
+import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.standard.StandardFilter;
import org.apache.lucene.analysis.standard.StandardTokenizer;
-import org.apache.lucene.analysis.ReusableAnalyzerBase;
import org.apache.lucene.util.Version;
import morfologik.stemming.PolishStemmer.DICTIONARY;
@@ -32,7 +32,7 @@ import morfologik.stemming.PolishStemmer
* {@link org.apache.lucene.analysis.Analyzer} using Morfologik library.
* @see <a href="http://morfologik.blogspot.com/">Morfologik project page</a>
*/
-public class MorfologikAnalyzer extends ReusableAnalyzerBase {
+public class MorfologikAnalyzer extends Analyzer {
private final DICTIONARY dictionary;
private final Version version;
@@ -62,14 +62,14 @@ public class MorfologikAnalyzer extends
/**
* Creates a
- * {@link org.apache.lucene.analysis.ReusableAnalyzerBase.TokenStreamComponents}
+ * {@link org.apache.lucene.analysis.Analyzer.TokenStreamComponents}
* which tokenizes all the text in the provided {@link Reader}.
*
* @param field ignored field name
* @param reader source of tokens
*
* @return A
- * {@link org.apache.lucene.analysis.ReusableAnalyzerBase.TokenStreamComponents}
+ * {@link org.apache.lucene.analysis.Analyzer.TokenStreamComponents}
* built from an {@link StandardTokenizer} filtered with
* {@link StandardFilter} and {@link MorfologikFilter}.
*/
Modified: lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/test/org/apache/lucene/analysis/morfologik/TestMorfologikAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/test/org/apache/lucene/analysis/morfologik/TestMorfologikAnalyzer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/test/org/apache/lucene/analysis/morfologik/TestMorfologikAnalyzer.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/morfologik/src/test/org/apache/lucene/analysis/morfologik/TestMorfologikAnalyzer.java Sat Oct 1 03:04:53 2011
@@ -59,13 +59,13 @@ public class TestMorfologikAnalyzer exte
/** Test reuse of MorfologikFilter with leftover stems. */
public final void testLeftoverStems() throws IOException {
Analyzer a = getTestAnalyzer();
- TokenStream ts_1 = a.reusableTokenStream("dummy", new StringReader("liÅcie"));
+ TokenStream ts_1 = a.tokenStream("dummy", new StringReader("liÅcie"));
CharTermAttribute termAtt_1 = ts_1.getAttribute(CharTermAttribute.class);
ts_1.reset();
ts_1.incrementToken();
assertEquals("first stream", "liÅÄ", termAtt_1.toString());
- TokenStream ts_2 = a.reusableTokenStream("dummy", new StringReader("danych"));
+ TokenStream ts_2 = a.tokenStream("dummy", new StringReader("danych"));
CharTermAttribute termAtt_2 = ts_2.getAttribute(CharTermAttribute.class);
ts_2.reset();
ts_2.incrementToken();
@@ -96,7 +96,7 @@ public class TestMorfologikAnalyzer exte
/** Test morphosyntactic annotations. */
public final void testPOSAttribute() throws IOException {
- TokenStream ts = getTestAnalyzer().reusableTokenStream("dummy", new StringReader("liÅcie"));
+ TokenStream ts = getTestAnalyzer().tokenStream("dummy", new StringReader("liÅcie"));
assertPOSToken(ts, "liÅÄ", "subst:pl:acc.nom.voc:m3");
assertPOSToken(ts, "list", "subst:sg:loc.voc:m3");
Modified: lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/java/org/apache/lucene/analysis/cn/smart/SmartChineseAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/java/org/apache/lucene/analysis/cn/smart/SmartChineseAnalyzer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/java/org/apache/lucene/analysis/cn/smart/SmartChineseAnalyzer.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/java/org/apache/lucene/analysis/cn/smart/SmartChineseAnalyzer.java Sat Oct 1 03:04:53 2011
@@ -25,7 +25,6 @@ import java.util.Collections;
import java.util.Set;
import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.ReusableAnalyzerBase;
import org.apache.lucene.analysis.en.PorterStemFilter;
import org.apache.lucene.analysis.util.WordlistLoader;
import org.apache.lucene.analysis.TokenStream;
@@ -55,7 +54,7 @@ import org.apache.lucene.util.Version;
* </p>
* @lucene.experimental
*/
-public final class SmartChineseAnalyzer extends ReusableAnalyzerBase {
+public final class SmartChineseAnalyzer extends Analyzer {
private final Set<?> stopWords;
Modified: lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/smartcn/src/test/org/apache/lucene/analysis/cn/smart/TestSmartChineseAnalyzer.java Sat Oct 1 03:04:53 2011
@@ -177,7 +177,7 @@ public class TestSmartChineseAnalyzer ex
sb.append("æè´ä¹°äºéå
·åæè£
ã");
}
Analyzer analyzer = new SmartChineseAnalyzer(TEST_VERSION_CURRENT);
- TokenStream stream = analyzer.reusableTokenStream("", new StringReader(sb.toString()));
+ TokenStream stream = analyzer.tokenStream("", new StringReader(sb.toString()));
stream.reset();
while (stream.incrementToken()) {
}
@@ -190,7 +190,7 @@ public class TestSmartChineseAnalyzer ex
sb.append("æè´ä¹°äºéå
·åæè£
");
}
Analyzer analyzer = new SmartChineseAnalyzer(TEST_VERSION_CURRENT);
- TokenStream stream = analyzer.reusableTokenStream("", new StringReader(sb.toString()));
+ TokenStream stream = analyzer.tokenStream("", new StringReader(sb.toString()));
stream.reset();
while (stream.incrementToken()) {
}
Modified: lucene/dev/branches/lucene2621/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java (original)
+++ lucene/dev/branches/lucene2621/modules/analysis/stempel/src/java/org/apache/lucene/analysis/pl/PolishAnalyzer.java Sat Oct 1 03:04:53 2011
@@ -121,11 +121,11 @@ public final class PolishAnalyzer extend
/**
* Creates a
- * {@link org.apache.lucene.analysis.ReusableAnalyzerBase.TokenStreamComponents}
+ * {@link org.apache.lucene.analysis.Analyzer.TokenStreamComponents}
* which tokenizes all the text in the provided {@link Reader}.
*
* @return A
- * {@link org.apache.lucene.analysis.ReusableAnalyzerBase.TokenStreamComponents}
+ * {@link org.apache.lucene.analysis.Analyzer.TokenStreamComponents}
* built from an {@link StandardTokenizer} filtered with
* {@link StandardFilter}, {@link LowerCaseFilter}, {@link StopFilter}
* , {@link KeywordMarkerFilter} if a stem exclusion set is
Modified: lucene/dev/branches/lucene2621/modules/benchmark/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/benchmark/CHANGES.txt?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/benchmark/CHANGES.txt (original)
+++ lucene/dev/branches/lucene2621/modules/benchmark/CHANGES.txt Sat Oct 1 03:04:53 2011
@@ -5,6 +5,10 @@ The Benchmark contrib package contains c
For more information on past and future Lucene versions, please see:
http://s.apache.org/luceneversions
+09/25/2011
+ LUCENE-3457: Upgrade commons-compress to 1.2 (and undo LUCENE-2980's workaround).
+ (Doron Cohen)
+
05/25/2011
LUCENE-3137: ExtractReuters supports out-dir param suffixed by a slash. (Doron Cohen)
Modified: lucene/dev/branches/lucene2621/modules/benchmark/lib/commons-compress-NOTICE.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/benchmark/lib/commons-compress-NOTICE.txt?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/benchmark/lib/commons-compress-NOTICE.txt (original)
+++ lucene/dev/branches/lucene2621/modules/benchmark/lib/commons-compress-NOTICE.txt Sat Oct 1 03:04:53 2011
@@ -1,5 +1,5 @@
Apache Commons Compress
-Copyright 2002-2010 The Apache Software Foundation
+Copyright 2002-2011 The Apache Software Foundation
This product includes software developed by
The Apache Software Foundation (http://www.apache.org/).
Modified: lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/DocMaker.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/DocMaker.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/DocMaker.java (original)
+++ lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/feeds/DocMaker.java Sat Oct 1 03:04:53 2011
@@ -103,11 +103,11 @@ public class DocMaker {
numericFields = new HashMap<String,NumericField>();
// Initialize the map with the default fields.
- fields.put(BODY_FIELD, new Field(BODY_FIELD, bodyFt, ""));
- fields.put(TITLE_FIELD, new Field(TITLE_FIELD, ft, ""));
- fields.put(DATE_FIELD, new Field(DATE_FIELD, ft, ""));
- fields.put(ID_FIELD, new Field(ID_FIELD, StringField.TYPE_STORED, ""));
- fields.put(NAME_FIELD, new Field(NAME_FIELD, ft, ""));
+ fields.put(BODY_FIELD, new Field(BODY_FIELD, "", bodyFt));
+ fields.put(TITLE_FIELD, new Field(TITLE_FIELD, "", ft));
+ fields.put(DATE_FIELD, new Field(DATE_FIELD, "", ft));
+ fields.put(ID_FIELD, new Field(ID_FIELD, "", StringField.TYPE_STORED));
+ fields.put(NAME_FIELD, new Field(NAME_FIELD, "", ft));
numericFields.put(DATE_MSEC_FIELD, new NumericField(DATE_MSEC_FIELD));
numericFields.put(TIME_SEC_FIELD, new NumericField(TIME_SEC_FIELD));
@@ -127,12 +127,12 @@ public class DocMaker {
*/
Field getField(String name, FieldType ft) {
if (!reuseFields) {
- return new Field(name, ft, "");
+ return new Field(name, "", ft);
}
Field f = fields.get(name);
if (f == null) {
- f = new Field(name, ft, "");
+ f = new Field(name, "", ft);
fields.put(name, f);
}
return f;
Modified: lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/SearchTravRetLoadFieldSelectorTask.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/SearchTravRetLoadFieldSelectorTask.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/SearchTravRetLoadFieldSelectorTask.java (original)
+++ lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/SearchTravRetLoadFieldSelectorTask.java Sat Oct 1 03:04:53 2011
@@ -23,7 +23,7 @@ import java.util.StringTokenizer;
import org.apache.lucene.benchmark.byTask.PerfRunData;
import org.apache.lucene.document.Document;
-import org.apache.lucene.index.DocumentStoredFieldVisitor;
+import org.apache.lucene.document.DocumentStoredFieldVisitor;
import org.apache.lucene.index.IndexReader;
/**
Modified: lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/utils/StreamUtils.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/utils/StreamUtils.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/utils/StreamUtils.java (original)
+++ lucene/dev/branches/lucene2621/modules/benchmark/src/java/org/apache/lucene/benchmark/byTask/utils/StreamUtils.java Sat Oct 1 03:04:53 2011
@@ -54,7 +54,7 @@ public class StreamUtils {
}
private InputStream inputStream(InputStream in) throws IOException {
try {
- return csfType==null ? in : closableCompressorInputStream(this, in);
+ return csfType==null ? in : new CompressorStreamFactory().createCompressorInputStream(csfType, in);
} catch (CompressorException e) {
IOException ioe = new IOException(e.getMessage());
ioe.initCause(e);
@@ -80,7 +80,6 @@ public class StreamUtils {
extensionToType.put(".gzip", Type.GZIP);
}
-
/**
* Returns an {@link InputStream} over the requested file. This method
* attempts to identify the appropriate {@link InputStream} instance to return
@@ -106,32 +105,6 @@ public class StreamUtils {
}
/**
- * Wrap the compressor input stream so that calling close will also close
- * the underlying stream - workaround for CommonsCompress bug (COMPRESS-127).
- */
- private static InputStream closableCompressorInputStream(Type type, final InputStream is) throws CompressorException {
- final InputStream delegee = new CompressorStreamFactory().createCompressorInputStream(type.csfType, is);
- if (!Type.GZIP.equals(type)) {
- return delegee; //compressor bug affects only gzip
- }
- return new InputStream() {
- @Override public int read() throws IOException { return delegee.read(); }
- @Override public int read(byte[] b) throws IOException { return delegee.read(b); }
- @Override public int available() throws IOException { return delegee.available(); }
- @Override public synchronized void mark(int readlimit) { delegee.mark(readlimit); }
- @Override public boolean markSupported() { return delegee.markSupported(); }
- @Override public int read(byte[] b, int off, int len) throws IOException { return delegee.read(b, off, len); }
- @Override public synchronized void reset() throws IOException { delegee.reset(); }
- @Override public long skip(long n) throws IOException { return delegee.skip(n); }
- @Override
- public void close() throws IOException {
- delegee.close();
- is.close();
- }
- };
- }
-
- /**
* Returns an {@link OutputStream} over the requested file, identifying
* the appropriate {@link OutputStream} instance similar to {@link #inputStream(File)}.
*/
Modified: lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/TestPerfTasksLogic.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/TestPerfTasksLogic.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/TestPerfTasksLogic.java (original)
+++ lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/TestPerfTasksLogic.java Sat Oct 1 03:04:53 2011
@@ -1008,7 +1008,7 @@ public class TestPerfTasksLogic extends
// Default analyzer, maxShingleSize, and outputUnigrams
Benchmark benchmark = execBenchmark(getShingleConfig(""));
benchmark.getRunData().getAnalyzer().tokenStream
- ("bogus", new StringReader(text)).close();
+ ("bogus", new StringReader(text)).close();
assertEqualShingle(benchmark.getRunData().getAnalyzer(), text,
new String[] {"one", "one two", "two", "two three",
"three", "three four", "four", "four five",
Modified: lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/WriteLineDocTaskTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/WriteLineDocTaskTest.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/WriteLineDocTaskTest.java (original)
+++ lucene/dev/branches/lucene2621/modules/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/WriteLineDocTaskTest.java Sat Oct 1 03:04:53 2011
@@ -161,6 +161,7 @@ public class WriteLineDocTaskTest extend
break;
case GZIP:
in = csFactory.createCompressorInputStream(CompressorStreamFactory.GZIP, in);
+ break;
case PLAIN:
break; // nothing to do
default:
Modified: lucene/dev/branches/lucene2621/modules/facet/build.xml
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/build.xml?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/build.xml (original)
+++ lucene/dev/branches/lucene2621/modules/facet/build.xml Sat Oct 1 03:04:53 2011
@@ -29,6 +29,14 @@
<property name="build.dir" location="build/" />
<property name="dist.dir" location="dist/" />
+ <property name="examples.dir" location="src/examples"/>
+
+ <path id="classpath">
+ <path refid="base.classpath" />
+ <pathelement location="${build.dir}/classes/java" />
+ <pathelement location="${build.dir}/classes/examples" />
+ </path>
+
<path id="examples.classpath">
<path refid="classpath" />
<pathelement location="${build.dir}/classes/java" />
@@ -49,7 +57,7 @@
</path>
<target name="compile-examples" description="Compiles Facets examples">
- <compile srcdir="src/examples" destdir="${build.dir}/classes/examples">
+ <compile srcdir="${examples.dir}" destdir="${build.dir}/classes/examples">
<classpath refid="examples.classpath" />
</compile>
</target>
@@ -64,4 +72,22 @@
<target name="jar-core" depends="common.jar-core,jar-examples" />
+ <target name="javadocs" depends="compile-core">
+ <sequential>
+ <mkdir dir="${javadoc.dir}/contrib-${name}"/>
+ <copy todir="${javadoc.dir}/contrib-${name}" file="docs/userguide.html" />
+ <!-- javadoc core classes -->
+ <invoke-javadoc
+ destdir="${javadoc.dir}/contrib-${name}"
+ title="${Name} ${version} contrib-${name} API">
+ <sources>
+ <link href=""/>
+ <packageset dir="${src.dir}"/>
+ <packageset dir="${examples.dir}"/>
+ </sources>
+ </invoke-javadoc>
+ <jarify basedir="${javadoc.dir}/contrib-${name}" destfile="${build.dir}/${final.name}-javadoc.jar"/>
+ </sequential>
+ </target>
+
</project>
Modified: lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/association/AssociationIndexer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/association/AssociationIndexer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/association/AssociationIndexer.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/association/AssociationIndexer.java Sat Oct 1 03:04:53 2011
@@ -93,7 +93,7 @@ public class AssociationIndexer {
// create a plain Lucene document and add some regular Lucene fields
// to it
Document doc = new Document();
- doc.add(new Field(SimpleUtils.TITLE, TextField.TYPE_STORED, SimpleUtils.docTitles[docNum]));
+ doc.add(new Field(SimpleUtils.TITLE, SimpleUtils.docTitles[docNum], TextField.TYPE_STORED));
doc.add(new TextField(SimpleUtils.TEXT, SimpleUtils.docTexts[docNum]));
// invoke the category document builder for adding categories to the
Modified: lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/merge/TaxonomyMergeUtils.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/merge/TaxonomyMergeUtils.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/merge/TaxonomyMergeUtils.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/merge/TaxonomyMergeUtils.java Sat Oct 1 03:04:53 2011
@@ -62,10 +62,10 @@ public class TaxonomyMergeUtils {
* Merges the given taxonomy and index directories and commits the changes to
* the given writers. This method uses {@link MemoryOrdinalMap} to store the
* mapped ordinals. If you cannot afford the memory, you can use
- * {@link #merge(Directory, Directory, OrdinalMap, IndexWriter, LuceneTaxonomyWriter)}
+ * {@link #merge(Directory, Directory, LuceneTaxonomyWriter.OrdinalMap, IndexWriter, LuceneTaxonomyWriter)}
* by passing {@link DiskOrdinalMap}.
*
- * @see #merge(Directory, Directory, OrdinalMap, IndexWriter, LuceneTaxonomyWriter)
+ * @see #merge(Directory, Directory, LuceneTaxonomyWriter.OrdinalMap, IndexWriter, LuceneTaxonomyWriter)
*/
public static void merge(Directory srcIndexDir, Directory srcTaxDir,
IndexWriter destIndexWriter,
Modified: lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/multiCL/MultiCLIndexer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/multiCL/MultiCLIndexer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/multiCL/MultiCLIndexer.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/multiCL/MultiCLIndexer.java Sat Oct 1 03:04:53 2011
@@ -173,7 +173,7 @@ public class MultiCLIndexer {
// create a plain Lucene document and add some regular Lucene fields
// to it
Document doc = new Document();
- doc.add(new Field(SimpleUtils.TITLE, TextField.TYPE_STORED, docTitles[docNum]));
+ doc.add(new Field(SimpleUtils.TITLE, docTitles[docNum], TextField.TYPE_STORED));
doc.add(new TextField(SimpleUtils.TEXT, docTexts[docNum]));
// finally add the document to the index
Modified: lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/simple/SimpleIndexer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/simple/SimpleIndexer.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/simple/SimpleIndexer.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/examples/org/apache/lucene/facet/example/simple/SimpleIndexer.java Sat Oct 1 03:04:53 2011
@@ -70,7 +70,7 @@ public class SimpleIndexer {
// create a plain Lucene document and add some regular Lucene fields to it
Document doc = new Document();
- doc.add(new Field(SimpleUtils.TITLE, TextField.TYPE_STORED, SimpleUtils.docTitles[docNum]));
+ doc.add(new Field(SimpleUtils.TITLE, SimpleUtils.docTitles[docNum], TextField.TYPE_STORED));
doc.add(new TextField(SimpleUtils.TEXT, SimpleUtils.docTexts[docNum]));
// invoke the category document builder for adding categories to the document and,
Modified: lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/index/CategoryDocumentBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/index/CategoryDocumentBuilder.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/index/CategoryDocumentBuilder.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/index/CategoryDocumentBuilder.java Sat Oct 1 03:04:53 2011
@@ -187,7 +187,7 @@ public class CategoryDocumentBuilder imp
// super.build())
FieldType ft = new FieldType(TextField.TYPE_UNSTORED);
ft.setOmitNorms(true);
- fieldList.add(new Field(e.getKey(), ft, stream));
+ fieldList.add(new Field(e.getKey(), stream, ft));
}
return this;
Modified: lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/package.html
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/package.html?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/package.html (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/package.html Sat Oct 1 03:04:53 2011
@@ -3,6 +3,6 @@
<title>Faceted Indexing and Search</title>
</head>
<body>
- Provides faceted indexing and search capabilities.
+ Provides faceted indexing and search capabilities. The <a href="../../../../userguide.html">userguide</a> is recommended for a start.
</body>
</html>
\ No newline at end of file
Modified: lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/taxonomy/lucene/LuceneTaxonomyWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/taxonomy/lucene/LuceneTaxonomyWriter.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/taxonomy/lucene/LuceneTaxonomyWriter.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/java/org/apache/lucene/facet/taxonomy/lucene/LuceneTaxonomyWriter.java Sat Oct 1 03:04:53 2011
@@ -181,8 +181,8 @@ public class LuceneTaxonomyWriter implem
FieldType ft = new FieldType(TextField.TYPE_UNSTORED);
ft.setOmitNorms(true);
- parentStreamField = new Field(Consts.FIELD_PAYLOADS, ft, parentStream);
- fullPathField = new Field(Consts.FULL, StringField.TYPE_STORED, "");
+ parentStreamField = new Field(Consts.FIELD_PAYLOADS, parentStream, ft);
+ fullPathField = new Field(Consts.FULL, "", StringField.TYPE_STORED);
this.nextID = indexWriter.maxDoc();
Modified: lucene/dev/branches/lucene2621/modules/facet/src/java/overview.html
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/java/overview.html?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/java/overview.html (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/java/overview.html Sat Oct 1 03:04:53 2011
@@ -21,6 +21,6 @@
</title>
</head>
<body>
- facet
+ Provides faceted indexing and search capabilities (checkout the <a href="userguide.html">userguide</a>).
</body>
</html>
\ No newline at end of file
Modified: lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestBase.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestBase.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestBase.java Sat Oct 1 03:04:53 2011
@@ -245,7 +245,7 @@ public abstract class FacetTestBase exte
CategoryDocumentBuilder builder = new CategoryDocumentBuilder(tw, iParams);
builder.setCategoryPaths(categories);
builder.build(d);
- d.add(new Field("content", TextField.TYPE_STORED, content));
+ d.add(new Field("content", content, TextField.TYPE_STORED));
iw.addDocument(d);
}
Modified: lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestUtils.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestUtils.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestUtils.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/FacetTestUtils.java Sat Oct 1 03:04:53 2011
@@ -128,7 +128,7 @@ public class FacetTestUtils {
cps.add(cp);
Document d = new Document();
new CategoryDocumentBuilder(tw, iParams).setCategoryPaths(cps).build(d);
- d.add(new Field("content", TextField.TYPE_STORED, "alpha"));
+ d.add(new Field("content", "alpha", TextField.TYPE_STORED));
iw.addDocument(d);
}
Modified: lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java Sat Oct 1 03:04:53 2011
@@ -137,7 +137,7 @@ public class CategoryListIteratorTest ex
DataTokenStream dts2 = new DataTokenStream("2",new SortingIntEncoder(
new UniqueValuesIntEncoder(new DGapIntEncoder(new VInt8IntEncoder()))));
// this test requires that no payloads ever be randomly present!
- final Analyzer noPayloadsAnalyzer = new ReusableAnalyzerBase() {
+ final Analyzer noPayloadsAnalyzer = new Analyzer() {
@Override
public TokenStreamComponents createComponents(String fieldName, Reader reader) {
return new TokenStreamComponents(new MockTokenizer(reader, MockTokenizer.KEYWORD, false));
Modified: lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/TestTopKInEachNodeResultHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/TestTopKInEachNodeResultHandler.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/TestTopKInEachNodeResultHandler.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/search/TestTopKInEachNodeResultHandler.java Sat Oct 1 03:04:53 2011
@@ -328,7 +328,7 @@ public class TestTopKInEachNodeResultHan
cps.add(cp);
Document d = new Document();
new CategoryDocumentBuilder(tw, iParams).setCategoryPaths(cps).build(d);
- d.add(new Field("content", TextField.TYPE_STORED, "alpha"));
+ d.add(new Field("content", "alpha", TextField.TYPE_STORED));
iw.addDocument(d);
}
Modified: lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java (original)
+++ lucene/dev/branches/lucene2621/modules/facet/src/test/org/apache/lucene/facet/util/TestScoredDocIDsUtils.java Sat Oct 1 03:04:53 2011
@@ -210,7 +210,7 @@ public class TestScoredDocIDsUtils exten
// assert that those docs are not returned by all-scored-doc-IDs.
FieldType ft = new FieldType();
ft.setStored(true);
- doc.add(new Field("del", ft, Integer.toString(docNum)));
+ doc.add(new Field("del", Integer.toString(docNum), ft));
}
if (haveAlpha(docNum)) {
Modified: lucene/dev/branches/lucene2621/modules/grouping/src/java/org/apache/lucene/search/grouping/AbstractFirstPassGroupingCollector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/grouping/src/java/org/apache/lucene/search/grouping/AbstractFirstPassGroupingCollector.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/grouping/src/java/org/apache/lucene/search/grouping/AbstractFirstPassGroupingCollector.java (original)
+++ lucene/dev/branches/lucene2621/modules/grouping/src/java/org/apache/lucene/search/grouping/AbstractFirstPassGroupingCollector.java Sat Oct 1 03:04:53 2011
@@ -213,9 +213,7 @@ abstract public class AbstractFirstPassG
// We already tested that the document is competitive, so replace
// the bottom group with this new group.
-
- // java 6-only: final CollectedSearchGroup bottomGroup = orderedGroups.pollLast();
- final CollectedSearchGroup<GROUP_VALUE_TYPE> bottomGroup = pollLast();
+ final CollectedSearchGroup<GROUP_VALUE_TYPE> bottomGroup = orderedGroups.pollLast();
assert orderedGroups.size() == topNGroups -1;
groupMap.remove(bottomGroup.groupValue);
@@ -351,13 +349,5 @@ abstract public class AbstractFirstPassG
*/
protected abstract GROUP_VALUE_TYPE copyDocGroupValue(GROUP_VALUE_TYPE groupValue, GROUP_VALUE_TYPE reuse);
-
-
- protected CollectedSearchGroup<GROUP_VALUE_TYPE> pollLast() {
- // java 6-only: final CollectedSearchGroup bottomGroup = orderedGroups.pollLast();
- final CollectedSearchGroup<GROUP_VALUE_TYPE> bottomGroup = orderedGroups.last();
- orderedGroups.remove(bottomGroup);
- return bottomGroup;
- }
}
Modified: lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TermAllGroupsCollectorTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TermAllGroupsCollectorTest.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TermAllGroupsCollectorTest.java (original)
+++ lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TermAllGroupsCollectorTest.java Sat Oct 1 03:04:53 2011
@@ -45,51 +45,51 @@ public class TermAllGroupsCollectorTest
new MockAnalyzer(random)).setMergePolicy(newLogMergePolicy()));
// 0
Document doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author1"));
- doc.add(new Field("content", TextField.TYPE_STORED, "random text"));
- doc.add(new Field("id", customType, "1"));
+ doc.add(new Field(groupField, "author1", TextField.TYPE_STORED));
+ doc.add(new Field("content", "random text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "1", customType));
w.addDocument(doc);
// 1
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author1"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some more random text blob"));
- doc.add(new Field("id", customType, "2"));
+ doc.add(new Field(groupField, "author1", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some more random text blob", TextField.TYPE_STORED));
+ doc.add(new Field("id", "2", customType));
w.addDocument(doc);
// 2
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author1"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some more random textual data"));
- doc.add(new Field("id", customType, "3"));
+ doc.add(new Field(groupField, "author1", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some more random textual data", TextField.TYPE_STORED));
+ doc.add(new Field("id", "3", customType));
w.addDocument(doc);
w.commit(); // To ensure a second segment
// 3
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author2"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some random text"));
- doc.add(new Field("id", customType, "4"));
+ doc.add(new Field(groupField, "author2", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some random text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "4", customType));
w.addDocument(doc);
// 4
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author3"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some more random text"));
- doc.add(new Field("id", customType, "5"));
+ doc.add(new Field(groupField, "author3", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some more random text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "5", customType));
w.addDocument(doc);
// 5
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author3"));
- doc.add(new Field("content", TextField.TYPE_STORED, "random blob"));
- doc.add(new Field("id", customType, "6"));
+ doc.add(new Field(groupField, "author3", TextField.TYPE_STORED));
+ doc.add(new Field("content", "random blob", TextField.TYPE_STORED));
+ doc.add(new Field("id", "6", customType));
w.addDocument(doc);
// 6 -- no author field
doc = new Document();
- doc.add(new Field("content", TextField.TYPE_STORED, "random word stuck in alot of other text"));
- doc.add(new Field("id", customType, "6"));
+ doc.add(new Field("content", "random word stuck in alot of other text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "6", customType));
w.addDocument(doc);
IndexSearcher indexSearcher = new IndexSearcher(w.getReader());
Modified: lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java (original)
+++ lucene/dev/branches/lucene2621/modules/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java Sat Oct 1 03:04:53 2011
@@ -61,50 +61,50 @@ public class TestGrouping extends Lucene
new MockAnalyzer(random)).setMergePolicy(newLogMergePolicy()));
// 0
Document doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author1"));
- doc.add(new Field("content", TextField.TYPE_STORED, "random text"));
- doc.add(new Field("id", customType, "1"));
+ doc.add(new Field(groupField, "author1", TextField.TYPE_STORED));
+ doc.add(new Field("content", "random text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "1", customType));
w.addDocument(doc);
// 1
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author1"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some more random text"));
- doc.add(new Field("id", customType, "2"));
+ doc.add(new Field(groupField, "author1", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some more random text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "2", customType));
w.addDocument(doc);
// 2
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author1"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some more random textual data"));
- doc.add(new Field("id", customType, "3"));
+ doc.add(new Field(groupField, "author1", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some more random textual data", TextField.TYPE_STORED));
+ doc.add(new Field("id", "3", customType));
w.addDocument(doc);
// 3
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author2"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some random text"));
- doc.add(new Field("id", customType, "4"));
+ doc.add(new Field(groupField, "author2", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some random text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "4", customType));
w.addDocument(doc);
// 4
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author3"));
- doc.add(new Field("content", TextField.TYPE_STORED, "some more random text"));
- doc.add(new Field("id", customType, "5"));
+ doc.add(new Field(groupField, "author3", TextField.TYPE_STORED));
+ doc.add(new Field("content", "some more random text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "5", customType));
w.addDocument(doc);
// 5
doc = new Document();
- doc.add(new Field(groupField, TextField.TYPE_STORED, "author3"));
- doc.add(new Field("content", TextField.TYPE_STORED, "random"));
- doc.add(new Field("id", customType, "6"));
+ doc.add(new Field(groupField, "author3", TextField.TYPE_STORED));
+ doc.add(new Field("content", "random", TextField.TYPE_STORED));
+ doc.add(new Field("id", "6", customType));
w.addDocument(doc);
// 6 -- no author field
doc = new Document();
- doc.add(new Field("content", TextField.TYPE_STORED, "random word stuck in alot of other text"));
- doc.add(new Field("id", customType, "6"));
+ doc.add(new Field("content", "random word stuck in alot of other text", TextField.TYPE_STORED));
+ doc.add(new Field("id", "6", customType));
w.addDocument(doc);
IndexSearcher indexSearcher = new IndexSearcher(w.getReader());
Modified: lucene/dev/branches/lucene2621/modules/join/src/java/org/apache/lucene/search/join/BlockJoinQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/join/src/java/org/apache/lucene/search/join/BlockJoinQuery.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/join/src/java/org/apache/lucene/search/join/BlockJoinQuery.java (original)
+++ lucene/dev/branches/lucene2621/modules/join/src/java/org/apache/lucene/search/join/BlockJoinQuery.java Sat Oct 1 03:04:53 2011
@@ -38,6 +38,7 @@ import org.apache.lucene.search.Scorer.C
import org.apache.lucene.search.Weight;
import org.apache.lucene.search.grouping.TopGroups;
import org.apache.lucene.util.ArrayUtil;
+import org.apache.lucene.util.Bits;
import org.apache.lucene.util.FixedBitSet;
/**
@@ -146,9 +147,10 @@ public class BlockJoinQuery extends Quer
}
@Override
- public Scorer scorer(AtomicReaderContext readerContext, ScorerContext context) throws IOException {
+ public Scorer scorer(AtomicReaderContext readerContext, boolean scoreDocsInOrder,
+ boolean topScorer, Bits acceptDocs) throws IOException {
// Pass scoreDocsInOrder true, topScorer false to our sub:
- final Scorer childScorer = childWeight.scorer(readerContext, ScorerContext.def().scoreDocsInOrder(true).topScorer(false));
+ final Scorer childScorer = childWeight.scorer(readerContext, true, false, acceptDocs);
if (childScorer == null) {
// No matches
@@ -322,6 +324,9 @@ public class BlockJoinQuery extends Quer
return parentDoc = NO_MORE_DOCS;
}
+ // Every parent must have at least one child:
+ assert parentTarget != 0;
+
final int prevParentDoc = parentBits.prevSetBit(parentTarget-1);
//System.out.println(" rolled back to prevParentDoc=" + prevParentDoc + " vs parentDoc=" + parentDoc);
Modified: lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/BooleanFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/BooleanFilter.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/BooleanFilter.java (original)
+++ lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/BooleanFilter.java Sat Oct 1 03:04:53 2011
@@ -20,6 +20,7 @@ package org.apache.lucene.queries;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Iterator;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexReader.AtomicReaderContext;
@@ -38,11 +39,9 @@ import org.apache.lucene.util.FixedBitSe
* The resulting Filter is NOT'd with the NOT Filters
* The resulting Filter is AND'd with the MUST Filters
*/
-public class BooleanFilter extends Filter {
+public class BooleanFilter extends Filter implements Iterable<FilterClause> {
- List<Filter> shouldFilters = null;
- List<Filter> notFilters = null;
- List<Filter> mustFilters = null;
+ private final List<FilterClause> clauses = new ArrayList<FilterClause>();
/**
* Returns the a DocIdSetIterator representing the Boolean composition
@@ -52,9 +51,10 @@ public class BooleanFilter extends Filte
public DocIdSet getDocIdSet(AtomicReaderContext context) throws IOException {
FixedBitSet res = null;
final IndexReader reader = context.reader;
- if (shouldFilters != null) {
- for (int i = 0; i < shouldFilters.size(); i++) {
- final DocIdSetIterator disi = getDISI(shouldFilters, i, context);
+
+ for (final FilterClause fc : clauses) {
+ if (fc.getOccur() == Occur.SHOULD) {
+ final DocIdSetIterator disi = getDISI(fc.getFilter(), context);
if (disi == null) continue;
if (res == null) {
res = new FixedBitSet(reader.maxDoc());
@@ -63,22 +63,22 @@ public class BooleanFilter extends Filte
}
}
- if (notFilters != null) {
- for (int i = 0; i < notFilters.size(); i++) {
+ for (final FilterClause fc : clauses) {
+ if (fc.getOccur() == Occur.MUST_NOT) {
if (res == null) {
res = new FixedBitSet(reader.maxDoc());
res.set(0, reader.maxDoc()); // NOTE: may set bits on deleted docs
}
- final DocIdSetIterator disi = getDISI(notFilters, i, context);
+ final DocIdSetIterator disi = getDISI(fc.getFilter(), context);
if (disi != null) {
res.andNot(disi);
}
}
}
- if (mustFilters != null) {
- for (int i = 0; i < mustFilters.size(); i++) {
- final DocIdSetIterator disi = getDISI(mustFilters, i, context);
+ for (final FilterClause fc : clauses) {
+ if (fc.getOccur() == Occur.MUST) {
+ final DocIdSetIterator disi = getDISI(fc.getFilter(), context);
if (disi == null) {
return DocIdSet.EMPTY_DOCIDSET; // no documents can match
}
@@ -94,35 +94,39 @@ public class BooleanFilter extends Filte
return res != null ? res : DocIdSet.EMPTY_DOCIDSET;
}
+ private static DocIdSetIterator getDISI(Filter filter, AtomicReaderContext context)
+ throws IOException {
+ final DocIdSet set = filter.getDocIdSet(context);
+ return (set == null || set == DocIdSet.EMPTY_DOCIDSET) ? null : set.iterator();
+ }
+
/**
* Adds a new FilterClause to the Boolean Filter container
* @param filterClause A FilterClause object containing a Filter and an Occur parameter
*/
public void add(FilterClause filterClause) {
- if (filterClause.getOccur().equals(Occur.MUST)) {
- if (mustFilters == null) {
- mustFilters = new ArrayList<Filter>();
- }
- mustFilters.add(filterClause.getFilter());
- } else if (filterClause.getOccur().equals(Occur.SHOULD)) {
- if (shouldFilters == null) {
- shouldFilters = new ArrayList<Filter>();
- }
- shouldFilters.add(filterClause.getFilter());
- } else if (filterClause.getOccur().equals(Occur.MUST_NOT)) {
- if (notFilters == null) {
- notFilters = new ArrayList<Filter>();
- }
- notFilters.add(filterClause.getFilter());
- }
+ clauses.add(filterClause);
}
-
- private DocIdSetIterator getDISI(List<Filter> filters, int index, AtomicReaderContext context)
- throws IOException {
- final DocIdSet set = filters.get(index).getDocIdSet(context);
- return (set == null) ? null : set.iterator();
+
+ public final void add(Filter filter, Occur occur) {
+ add(new FilterClause(filter, occur));
}
+ /**
+ * Returns the list of clauses
+ */
+ public List<FilterClause> clauses() {
+ return clauses;
+ }
+
+ /** Returns an iterator on the clauses in this query. It implements the {@link Iterable} interface to
+ * make it possible to do:
+ * <pre>for (FilterClause clause : booleanFilter) {}</pre>
+ */
+ public final Iterator<FilterClause> iterator() {
+ return clauses().iterator();
+ }
+
@Override
public boolean equals(Object obj) {
if (this == obj) {
@@ -133,44 +137,26 @@ public class BooleanFilter extends Filte
return false;
}
- BooleanFilter other = (BooleanFilter)obj;
- return equalFilters(notFilters, other.notFilters)
- && equalFilters(mustFilters, other.mustFilters)
- && equalFilters(shouldFilters, other.shouldFilters);
- }
-
- private boolean equalFilters(List<Filter> filters1, List<Filter> filters2) {
- return (filters1 == filters2) || ((filters1 != null) && filters1.equals(filters2));
+ final BooleanFilter other = (BooleanFilter)obj;
+ return clauses.equals(other.clauses);
}
@Override
public int hashCode() {
- int hash = 7;
- hash = 31 * hash + (null == mustFilters ? 0 : mustFilters.hashCode());
- hash = 31 * hash + (null == notFilters ? 0 : notFilters.hashCode());
- hash = 31 * hash + (null == shouldFilters ? 0 : shouldFilters.hashCode());
- return hash;
+ return 657153718 ^ clauses.hashCode();
}
- /** Prints a user-readable version of this query. */
+ /** Prints a user-readable version of this Filter. */
@Override
public String toString() {
- StringBuilder buffer = new StringBuilder();
- buffer.append("BooleanFilter(");
- appendFilters(shouldFilters, "", buffer);
- appendFilters(mustFilters, "+", buffer);
- appendFilters(notFilters, "-", buffer);
- buffer.append(")");
- return buffer.toString();
- }
-
- private void appendFilters(List<Filter> filters, String occurString, StringBuilder buffer) {
- if (filters != null) {
- for (Filter filter : filters) {
+ final StringBuilder buffer = new StringBuilder("BooleanFilter(");
+ final int minLen = buffer.length();
+ for (final FilterClause c : clauses) {
+ if (buffer.length() > minLen) {
buffer.append(' ');
- buffer.append(occurString);
- buffer.append(filter.toString());
}
+ buffer.append(c);
}
- }
+ return buffer.append(')').toString();
+ }
}
Modified: lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java (original)
+++ lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/CustomScoreQuery.java Sat Oct 1 03:04:53 2011
@@ -30,6 +30,7 @@ import org.apache.lucene.search.Query;
import org.apache.lucene.search.Weight;
import org.apache.lucene.search.Scorer;
import org.apache.lucene.search.IndexSearcher;
+import org.apache.lucene.util.Bits;
import org.apache.lucene.util.ToStringUtils;
/**
@@ -224,19 +225,20 @@ public class CustomScoreQuery extends Qu
}
@Override
- public Scorer scorer(AtomicReaderContext context, ScorerContext scorerContext) throws IOException {
+ public Scorer scorer(AtomicReaderContext context, boolean scoreDocsInOrder,
+ boolean topScorer, Bits acceptDocs) throws IOException {
// Pass true for "scoresDocsInOrder", because we
// require in-order scoring, even if caller does not,
// since we call advance on the valSrcScorers. Pass
// false for "topScorer" because we will not invoke
// score(Collector) on these scorers:
- Scorer subQueryScorer = subQueryWeight.scorer(context, ScorerContext.def());
+ Scorer subQueryScorer = subQueryWeight.scorer(context, true, false, acceptDocs);
if (subQueryScorer == null) {
return null;
}
Scorer[] valSrcScorers = new Scorer[valSrcWeights.length];
for(int i = 0; i < valSrcScorers.length; i++) {
- valSrcScorers[i] = valSrcWeights[i].scorer(context, scorerContext.scoreDocsInOrder(true));
+ valSrcScorers[i] = valSrcWeights[i].scorer(context, true, topScorer, acceptDocs);
}
return new CustomScorer(CustomScoreQuery.this.getCustomScoreProvider(context), this, getBoost(), subQueryScorer, valSrcScorers);
}
Modified: lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/FilterClause.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/FilterClause.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/FilterClause.java (original)
+++ lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/FilterClause.java Sat Oct 1 03:04:53 2011
@@ -26,36 +26,57 @@ import org.apache.lucene.search.Filter;
* (Follows the boolean logic in BooleanClause for composition
* of queries.)
*/
-public class FilterClause {
+public final class FilterClause {
- private final Occur occur;
- private final Filter filter;
+ private final Occur occur;
+ private final Filter filter;
- /**
- * Create a new FilterClause
- * @param filter A Filter object containing a BitSet
- * @param occur A parameter implementation indicating SHOULD, MUST or MUST NOT
- */
-
- public FilterClause(Filter filter, Occur occur) {
- this.occur = occur;
- this.filter = filter;
- }
-
- /**
- * Returns this FilterClause's filter
- * @return A Filter object
- */
- public Filter getFilter() {
- return filter;
- }
-
- /**
- * Returns this FilterClause's occur parameter
- * @return An Occur object
- */
- public Occur getOccur() {
- return occur;
- }
+ /**
+ * Create a new FilterClause
+ * @param filter A Filter object containing a BitSet
+ * @param occur A parameter implementation indicating SHOULD, MUST or MUST NOT
+ */
+
+ public FilterClause(Filter filter, Occur occur) {
+ this.occur = occur;
+ this.filter = filter;
+ }
+
+ /**
+ * Returns this FilterClause's filter
+ * @return A Filter object
+ */
+ public Filter getFilter() {
+ return filter;
+ }
+
+ /**
+ * Returns this FilterClause's occur parameter
+ * @return An Occur object
+ */
+ public Occur getOccur() {
+ return occur;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (o == this)
+ return true;
+ if (o == null || !(o instanceof FilterClause))
+ return false;
+ final FilterClause other = (FilterClause)o;
+ return this.filter.equals(other.filter)
+ && this.occur == other.occur;
+ }
+
+ @Override
+ public int hashCode() {
+ return filter.hashCode() ^ occur.hashCode();
+ }
+
+ @Override
+ public String toString() {
+ return occur.toString() + filter.toString();
+ }
}
Modified: lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java (original)
+++ lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/BoostedQuery.java Sat Oct 1 03:04:53 2011
@@ -20,6 +20,7 @@ package org.apache.lucene.queries.functi
import org.apache.lucene.search.*;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.util.Bits;
import org.apache.lucene.util.ToStringUtils;
import java.io.IOException;
@@ -91,8 +92,10 @@ public class BoostedQuery extends Query
}
@Override
- public Scorer scorer(AtomicReaderContext context, ScorerContext scorerContext) throws IOException {
- Scorer subQueryScorer = qWeight.scorer(context, ScorerContext.def());
+ public Scorer scorer(AtomicReaderContext context, boolean scoreDocsInOrder,
+ boolean topScorer, Bits acceptDocs) throws IOException {
+ // we are gonna advance() the subscorer
+ Scorer subQueryScorer = qWeight.scorer(context, true, false, acceptDocs);
if(subQueryScorer == null) {
return null;
}
Modified: lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java (original)
+++ lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/FunctionQuery.java Sat Oct 1 03:04:53 2011
@@ -89,13 +89,14 @@ public class FunctionQuery extends Query
}
@Override
- public Scorer scorer(AtomicReaderContext context, ScorerContext scorerContext) throws IOException {
- return new AllScorer(context, this, queryWeight);
+ public Scorer scorer(AtomicReaderContext context, boolean scoreDocsInOrder,
+ boolean topScorer, Bits acceptDocs) throws IOException {
+ return new AllScorer(context, acceptDocs, this, queryWeight);
}
@Override
public Explanation explain(AtomicReaderContext context, int doc) throws IOException {
- return ((AllScorer)scorer(context, ScorerContext.def().scoreDocsInOrder(true).topScorer(true))).explain(doc);
+ return ((AllScorer)scorer(context, true, true, context.reader.getLiveDocs())).explain(doc);
}
}
@@ -106,18 +107,15 @@ public class FunctionQuery extends Query
final float qWeight;
int doc=-1;
final DocValues vals;
- final boolean hasDeletions;
final Bits liveDocs;
- public AllScorer(AtomicReaderContext context, FunctionWeight w, float qWeight) throws IOException {
+ public AllScorer(AtomicReaderContext context, Bits acceptDocs, FunctionWeight w, float qWeight) throws IOException {
super(w);
this.weight = w;
this.qWeight = qWeight;
this.reader = context.reader;
this.maxDoc = reader.maxDoc();
- this.hasDeletions = reader.hasDeletions();
- this.liveDocs = MultiFields.getLiveDocs(reader);
- assert !hasDeletions || liveDocs != null;
+ this.liveDocs = acceptDocs;
vals = func.getValues(weight.context, context);
}
@@ -137,7 +135,7 @@ public class FunctionQuery extends Query
if (doc>=maxDoc) {
return doc=NO_MORE_DOCS;
}
- if (hasDeletions && !liveDocs.get(doc)) continue;
+ if (liveDocs != null && !liveDocs.get(doc)) continue;
return doc;
}
}
Modified: lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/valuesource/QueryValueSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/valuesource/QueryValueSource.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/valuesource/QueryValueSource.java (original)
+++ lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/function/valuesource/QueryValueSource.java Sat Oct 1 03:04:53 2011
@@ -22,7 +22,7 @@ import org.apache.lucene.queries.functio
import org.apache.lucene.queries.function.ValueSource;
import org.apache.lucene.queries.function.docvalues.FloatDocValues;
import org.apache.lucene.search.*;
-import org.apache.lucene.search.Weight.ScorerContext;
+import org.apache.lucene.util.Bits;
import org.apache.lucene.util.ReaderUtil;
import org.apache.lucene.util.mutable.MutableValue;
import org.apache.lucene.util.mutable.MutableValueFloat;
@@ -77,6 +77,7 @@ public class QueryValueSource extends Va
class QueryDocValues extends FloatDocValues {
final AtomicReaderContext readerContext;
+ final Bits acceptDocs;
final Weight weight;
final float defVal;
final Map fcontext;
@@ -95,6 +96,7 @@ class QueryDocValues extends FloatDocVal
super(vs);
this.readerContext = readerContext;
+ this.acceptDocs = readerContext.reader.getLiveDocs();
this.defVal = vs.defVal;
this.q = vs.q;
this.fcontext = fcontext;
@@ -121,7 +123,7 @@ class QueryDocValues extends FloatDocVal
try {
if (doc < lastDocRequested) {
if (noMatches) return defVal;
- scorer = weight.scorer(readerContext, ScorerContext.def());
+ scorer = weight.scorer(readerContext, true, false, acceptDocs);
if (scorer==null) {
noMatches = true;
return defVal;
@@ -152,7 +154,7 @@ class QueryDocValues extends FloatDocVal
try {
if (doc < lastDocRequested) {
if (noMatches) return false;
- scorer = weight.scorer(readerContext, ScorerContext.def());
+ scorer = weight.scorer(readerContext, true, false, acceptDocs);
scorerDoc = -1;
if (scorer==null) {
noMatches = true;
@@ -210,7 +212,7 @@ class QueryDocValues extends FloatDocVal
mval.exists = false;
return;
}
- scorer = weight.scorer(readerContext, ScorerContext.def());
+ scorer = weight.scorer(readerContext, true, false, acceptDocs);
scorerDoc = -1;
if (scorer==null) {
noMatches = true;
Modified: lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/mlt/MoreLikeThis.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/mlt/MoreLikeThis.java?rev=1177888&r1=1177887&r2=1177888&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/mlt/MoreLikeThis.java (original)
+++ lucene/dev/branches/lucene2621/modules/queries/src/java/org/apache/lucene/queries/mlt/MoreLikeThis.java Sat Oct 1 03:04:53 2011
@@ -707,12 +707,10 @@ public final class MoreLikeThis {
if (vector == null) {
Document d = ir.document(docNum);
IndexableField fields[] = d.getFields(fieldName);
- if (fields != null) {
- for (int j = 0; j < fields.length; j++) {
- final String stringValue = fields[j].stringValue();
- if (stringValue != null) {
- addTermFrequencies(new StringReader(stringValue), termFreqMap, fieldName);
- }
+ for (int j = 0; j < fields.length; j++) {
+ final String stringValue = fields[j].stringValue();
+ if (stringValue != null) {
+ addTermFrequencies(new StringReader(stringValue), termFreqMap, fieldName);
}
}
} else {
@@ -765,7 +763,7 @@ public final class MoreLikeThis {
throw new UnsupportedOperationException("To use MoreLikeThis without " +
"term vectors, you must provide an Analyzer");
}
- TokenStream ts = analyzer.reusableTokenStream(fieldName, r);
+ TokenStream ts = analyzer.tokenStream(fieldName, r);
int tokenCount = 0;
// for every token
CharTermAttribute termAtt = ts.addAttribute(CharTermAttribute.class);