You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by si...@apache.org on 2011/02/21 15:13:40 UTC
svn commit: r1072973 [7/11] - in /lucene/dev/branches/docvalues: ./
dev-tools/eclipse/ dev-tools/idea/.idea/ dev-tools/idea/lucene/contrib/ant/
dev-tools/idea/lucene/contrib/demo/
dev-tools/idea/lucene/contrib/highlighter/ dev-tools/idea/lucene/contrib...
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockFixedIntBlockCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockFixedIntBlockCodec.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockFixedIntBlockCodec.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockFixedIntBlockCodec.java Mon Feb 21 14:13:28 2011
@@ -126,7 +126,7 @@ public class MockFixedIntBlockCodec exte
success = false;
try {
- FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter, BytesRef.getUTF8SortedAsUnicodeComparator());
+ FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter);
success = true;
return ret;
} finally {
@@ -170,7 +170,6 @@ public class MockFixedIntBlockCodec exte
state.segmentInfo.name,
postingsReader,
state.readBufferSize,
- BytesRef.getUTF8SortedAsUnicodeComparator(),
StandardCodec.TERMS_CACHE_SIZE,
state.codecId);
success = true;
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockVariableIntBlockCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockVariableIntBlockCodec.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockVariableIntBlockCodec.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockintblock/MockVariableIntBlockCodec.java Mon Feb 21 14:13:28 2011
@@ -150,7 +150,7 @@ public class MockVariableIntBlockCodec e
success = false;
try {
- FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter, BytesRef.getUTF8SortedAsUnicodeComparator());
+ FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter);
success = true;
return ret;
} finally {
@@ -195,7 +195,6 @@ public class MockVariableIntBlockCodec e
state.segmentInfo.name,
postingsReader,
state.readBufferSize,
- BytesRef.getUTF8SortedAsUnicodeComparator(),
StandardCodec.TERMS_CACHE_SIZE,
state.codecId);
success = true;
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockrandom/MockRandomCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockrandom/MockRandomCodec.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockrandom/MockRandomCodec.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mockrandom/MockRandomCodec.java Mon Feb 21 14:13:28 2011
@@ -18,15 +18,17 @@ package org.apache.lucene.index.codecs.m
*/
import java.io.IOException;
+import java.util.ArrayList;
import java.util.Iterator;
+import java.util.List;
import java.util.Random;
import java.util.Set;
+import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.SegmentInfo;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SegmentWriteState;
-import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.codecs.BlockTermsReader;
import org.apache.lucene.index.codecs.BlockTermsWriter;
import org.apache.lucene.index.codecs.Codec;
@@ -46,6 +48,9 @@ import org.apache.lucene.index.codecs.mo
import org.apache.lucene.index.codecs.mocksep.MockSingleIntFactory;
import org.apache.lucene.index.codecs.pulsing.PulsingPostingsReaderImpl;
import org.apache.lucene.index.codecs.pulsing.PulsingPostingsWriterImpl;
+import org.apache.lucene.index.codecs.sep.IntIndexInput;
+import org.apache.lucene.index.codecs.sep.IntIndexOutput;
+import org.apache.lucene.index.codecs.sep.IntStreamFactory;
import org.apache.lucene.index.codecs.sep.SepPostingsReaderImpl;
import org.apache.lucene.index.codecs.sep.SepPostingsWriterImpl;
import org.apache.lucene.index.codecs.standard.StandardPostingsReader;
@@ -71,11 +76,57 @@ public class MockRandomCodec extends Cod
this.seedRandom = new Random(random.nextLong());
}
+ // Chooses random IntStreamFactory depending on file's extension
+ private static class MockIntStreamFactory extends IntStreamFactory {
+ private final int salt;
+ private final List<IntStreamFactory> delegates = new ArrayList<IntStreamFactory>();
+
+ public MockIntStreamFactory(Random random) {
+ salt = random.nextInt();
+ delegates.add(new MockSingleIntFactory());
+ final int blockSize = _TestUtil.nextInt(random, 1, 2000);
+ delegates.add(new MockFixedIntBlockCodec.MockIntFactory(blockSize));
+ final int baseBlockSize = _TestUtil.nextInt(random, 1, 127);
+ delegates.add(new MockVariableIntBlockCodec.MockIntFactory(baseBlockSize));
+ // TODO: others
+ }
+
+ private static String getExtension(String fileName) {
+ final int idx = fileName.indexOf('.');
+ assert idx != -1;
+ return fileName.substring(idx);
+ }
+
+ @Override
+ public IntIndexInput openInput(Directory dir, String fileName, int readBufferSize) throws IOException {
+ // Must only use extension, because IW.addIndexes can
+ // rename segment!
+ final IntStreamFactory f = delegates.get((Math.abs(salt ^ getExtension(fileName).hashCode())) % delegates.size());
+ if (LuceneTestCase.VERBOSE) {
+ System.out.println("MockRandomCodec: read using int factory " + f + " from fileName=" + fileName);
+ }
+ return f.openInput(dir, fileName, readBufferSize);
+ }
+
+ @Override
+ public IntIndexOutput createOutput(Directory dir, String fileName) throws IOException {
+ final IntStreamFactory f = delegates.get((Math.abs(salt ^ getExtension(fileName).hashCode())) % delegates.size());
+ if (LuceneTestCase.VERBOSE) {
+ System.out.println("MockRandomCodec: write using int factory " + f + " to fileName=" + fileName);
+ }
+ return f.createOutput(dir, fileName);
+ }
+ }
+
@Override
public FieldsConsumer fieldsConsumer(SegmentWriteState state) throws IOException {
final long seed = seedRandom.nextLong();
+ if (LuceneTestCase.VERBOSE) {
+ System.out.println("MockRandomCodec: writing to seg=" + state.segmentName + " seed=" + seed);
+ }
+
final String seedFileName = IndexFileNames.segmentFileName(state.segmentName, state.codecId, SEED_EXT);
final IndexOutput out = state.directory.createOutput(seedFileName);
out.writeLong(seed);
@@ -83,25 +134,9 @@ public class MockRandomCodec extends Cod
final Random random = new Random(seed);
PostingsWriterBase postingsWriter;
- final int n = random.nextInt(4);
- if (n == 0) {
- if (LuceneTestCase.VERBOSE) {
- System.out.println("MockRandomCodec: writing MockSep postings");
- }
- postingsWriter = new SepPostingsWriterImpl(state, new MockSingleIntFactory());
- } else if (n == 1) {
- final int blockSize = _TestUtil.nextInt(random, 1, 2000);
- if (LuceneTestCase.VERBOSE) {
- System.out.println("MockRandomCodec: writing MockFixedIntBlock(" + blockSize + ") postings");
- }
- postingsWriter = new SepPostingsWriterImpl(state, new MockFixedIntBlockCodec.MockIntFactory(blockSize));
- } else if (n == 2) {
- final int baseBlockSize = _TestUtil.nextInt(random, 1, 127);
- if (LuceneTestCase.VERBOSE) {
- System.out.println("MockRandomCodec: writing MockVariableIntBlock(" + baseBlockSize + ") postings");
- }
- postingsWriter = new SepPostingsWriterImpl(state, new MockVariableIntBlockCodec.MockIntFactory(baseBlockSize));
+ if (random.nextBoolean()) {
+ postingsWriter = new SepPostingsWriterImpl(state, new MockIntStreamFactory(random));
} else {
if (LuceneTestCase.VERBOSE) {
System.out.println("MockRandomCodec: writing Standard postings");
@@ -151,7 +186,7 @@ public class MockRandomCodec extends Cod
@Override
public boolean isIndexTerm(BytesRef term, TermStats stats) {
- return random.nextInt(gap) == 17;
+ return rand.nextInt(gap) == 17;
}
@Override
@@ -170,7 +205,7 @@ public class MockRandomCodec extends Cod
success = false;
try {
- FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter, BytesRef.getUTF8SortedAsUnicodeComparator());
+ FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter);
success = true;
return ret;
} finally {
@@ -190,32 +225,17 @@ public class MockRandomCodec extends Cod
final String seedFileName = IndexFileNames.segmentFileName(state.segmentInfo.name, state.codecId, SEED_EXT);
final IndexInput in = state.dir.openInput(seedFileName);
final long seed = in.readLong();
+ if (LuceneTestCase.VERBOSE) {
+ System.out.println("MockRandomCodec: reading from seg=" + state.segmentInfo.name + " seed=" + seed);
+ }
in.close();
final Random random = new Random(seed);
PostingsReaderBase postingsReader;
- final int n = random.nextInt(4);
- if (n == 0) {
- if (LuceneTestCase.VERBOSE) {
- System.out.println("MockRandomCodec: reading MockSep postings");
- }
- postingsReader = new SepPostingsReaderImpl(state.dir, state.segmentInfo,
- state.readBufferSize, new MockSingleIntFactory(), state.codecId);
- } else if (n == 1) {
- final int blockSize = _TestUtil.nextInt(random, 1, 2000);
- if (LuceneTestCase.VERBOSE) {
- System.out.println("MockRandomCodec: reading MockFixedIntBlock(" + blockSize + ") postings");
- }
- postingsReader = new SepPostingsReaderImpl(state.dir, state.segmentInfo,
- state.readBufferSize, new MockFixedIntBlockCodec.MockIntFactory(blockSize), state.codecId);
- } else if (n == 2) {
- final int baseBlockSize = _TestUtil.nextInt(random, 1, 127);
- if (LuceneTestCase.VERBOSE) {
- System.out.println("MockRandomCodec: reading MockVariableIntBlock(" + baseBlockSize + ") postings");
- }
+ if (random.nextBoolean()) {
postingsReader = new SepPostingsReaderImpl(state.dir, state.segmentInfo,
- state.readBufferSize, new MockVariableIntBlockCodec.MockIntFactory(baseBlockSize), state.codecId);
+ state.readBufferSize, new MockIntStreamFactory(random), state.codecId);
} else {
if (LuceneTestCase.VERBOSE) {
System.out.println("MockRandomCodec: reading Standard postings");
@@ -286,7 +306,6 @@ public class MockRandomCodec extends Cod
state.segmentInfo.name,
postingsReader,
state.readBufferSize,
- BytesRef.getUTF8SortedAsUnicodeComparator(),
termsCacheSize,
state.codecId);
success = true;
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSepCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSepCodec.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSepCodec.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSepCodec.java Mon Feb 21 14:13:28 2011
@@ -70,7 +70,7 @@ public class MockSepCodec extends Codec
success = false;
try {
- FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter, BytesRef.getUTF8SortedAsUnicodeComparator());
+ FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, postingsWriter);
success = true;
return ret;
} finally {
@@ -114,7 +114,6 @@ public class MockSepCodec extends Codec
state.segmentInfo.name,
postingsReader,
state.readBufferSize,
- BytesRef.getUTF8SortedAsUnicodeComparator(),
StandardCodec.TERMS_CACHE_SIZE,
state.codecId);
success = true;
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexInput.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexInput.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexInput.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexInput.java Mon Feb 21 14:13:28 2011
@@ -83,16 +83,6 @@ public class MockSingleIntIndexInput ext
}
@Override
- public void read(IntIndexInput.Reader indexIn, boolean absolute)
- throws IOException {
- if (absolute) {
- fp = indexIn.readVLong();
- } else {
- fp += indexIn.readVLong();
- }
- }
-
- @Override
public void set(IntIndexInput.Index other) {
fp = ((Index) other).fp;
}
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexOutput.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexOutput.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexOutput.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/index/codecs/mocksep/MockSingleIntIndexOutput.java Mon Feb 21 14:13:28 2011
@@ -77,17 +77,6 @@ public class MockSingleIntIndexOutput ex
}
lastFP = fp;
}
-
- @Override
- public void write(IntIndexOutput indexOut, boolean absolute)
- throws IOException {
- if (absolute) {
- indexOut.writeVLong(fp);
- } else {
- indexOut.writeVLong(fp - lastFP);
- }
- lastFP = fp;
- }
@Override
public String toString() {
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/search/QueryUtils.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/search/QueryUtils.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/search/QueryUtils.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/search/QueryUtils.java Mon Feb 21 14:13:28 2011
@@ -1,19 +1,14 @@
package org.apache.lucene.search;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
import java.util.Random;
-import java.lang.reflect.Method;
import junit.framework.Assert;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.Document;
-import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.MultiReader;
@@ -23,6 +18,7 @@ import org.apache.lucene.store.MockDirec
import org.apache.lucene.store.RAMDirectory;
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.ReaderUtil;
+import org.apache.lucene.util._TestUtil;
import static org.apache.lucene.util.LuceneTestCase.TEST_VERSION_CURRENT;
@@ -102,7 +98,6 @@ public class QueryUtils {
* @see #checkFirstSkipTo
* @see #checkSkipTo
* @see #checkExplanations
- * @see #checkSerialization
* @see #checkEqual
*/
public static void check(Random random, Query q1, IndexSearcher s) {
@@ -124,7 +119,6 @@ public class QueryUtils {
wrapped.close();
}
checkExplanations(q1,s);
- checkSerialization(q1,s);
Query q2 = (Query)q1.clone();
checkEqual(s.rewrite(q1),
@@ -178,16 +172,7 @@ public class QueryUtils {
}
w.commit();
w.deleteDocuments( new MatchAllDocsQuery() );
- try {
- // Carefully invoke what is a package-private (test
- // only, internal) method on IndexWriter:
- Method m = IndexWriter.class.getDeclaredMethod("keepFullyDeletedSegments");
- m.setAccessible(true);
- m.invoke(w);
- } catch (Exception e) {
- // Should not happen?
- throw new RuntimeException(e);
- }
+ _TestUtil.keepFullyDeletedSegments(w);
w.commit();
if (0 < numDeletedDocs)
@@ -204,31 +189,6 @@ public class QueryUtils {
r.close();
return d;
}
-
-
- /** check that the query weight is serializable.
- * @throws IOException if serialization check fail.
- */
- private static void checkSerialization(Query q, IndexSearcher s) throws IOException {
- Weight w = q.weight(s);
- try {
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- ObjectOutputStream oos = new ObjectOutputStream(bos);
- oos.writeObject(w);
- oos.close();
- ObjectInputStream ois = new ObjectInputStream(new ByteArrayInputStream(bos.toByteArray()));
- ois.readObject();
- ois.close();
-
- //skip equals() test for now - most weights don't override equals() and we won't add this just for the tests.
- //TestCase.assertEquals("writeObject(w) != w. ("+w+")",w2,w);
-
- } catch (Exception e) {
- IOException e2 = new IOException("Serialization failed for "+w);
- e2.initCause(e);
- throw e2;
- }
- }
/** alternate scorer skipTo(),skipTo(),next(),next(),skipTo(),skipTo(), etc
* and ensure a hitcollector receives same docs and scores
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/store/MockDirectoryWrapper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/store/MockDirectoryWrapper.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/store/MockDirectoryWrapper.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/store/MockDirectoryWrapper.java Mon Feb 21 14:13:28 2011
@@ -38,6 +38,18 @@ import org.apache.lucene.util._TestUtil;
/**
* This is a Directory Wrapper that adds methods
* intended to be used only by unit tests.
+ * It also adds a number of features useful for testing:
+ * <ul>
+ * <li> Instances created by {@link LuceneTestCase#newDirectory()} are tracked
+ * to ensure they are closed by the test.
+ * <li> When a MockDirectoryWrapper is closed, it will throw an exception if
+ * it has any open files against it (with a stacktrace indicating where
+ * they were opened from).
+ * <li> When a MockDirectoryWrapper is closed, it runs CheckIndex to test if
+ * the index was corrupted.
+ * <li> MockDirectoryWrapper simulates some "features" of Windows, such as
+ * refusing to write/delete to open files.
+ * </ul>
*/
public class MockDirectoryWrapper extends Directory {
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LineFileDocs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LineFileDocs.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LineFileDocs.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LineFileDocs.java Mon Feb 21 14:13:28 2011
@@ -32,9 +32,9 @@ import java.util.Random;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-// Minimal port of contrib/benchmark's LneDocSource +
-// DocMaker, so tests can enum docs from a line file created
-// by contrib/benchmark's WriteLineDoc task
+/** Minimal port of contrib/benchmark's LneDocSource +
+ * DocMaker, so tests can enum docs from a line file created
+ * by contrib/benchmark's WriteLineDoc task */
public class LineFileDocs implements Closeable {
private BufferedReader reader;
@@ -42,8 +42,8 @@ public class LineFileDocs implements Clo
private final AtomicInteger id = new AtomicInteger();
private final String path;
- // If forever is true, we rewind the file at EOF (repeat
- // the docs over and over)
+ /** If forever is true, we rewind the file at EOF (repeat
+ * the docs over and over) */
public LineFileDocs(Random random, String path) throws IOException {
this.path = path;
open(random);
@@ -138,7 +138,7 @@ public class LineFileDocs implements Clo
private final ThreadLocal<DocState> threadDocs = new ThreadLocal<DocState>();
- // Document instance is re-used per-thread
+ /** Note: Document instance is re-used per-thread */
public Document nextDoc() throws IOException {
String line;
synchronized(this) {
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LuceneTestCase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LuceneTestCase.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LuceneTestCase.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/LuceneTestCase.java Mon Feb 21 14:13:28 2011
@@ -708,7 +708,7 @@ public abstract class LuceneTestCase ext
}
/**
- * Convinience method for logging an iterator.
+ * Convenience method for logging an iterator.
*
* @param label String logged before/after the items in the iterator
* @param iter Each next() is toString()ed and logged on it's own line. If iter is null this is logged differnetly then an empty iterator.
@@ -728,7 +728,7 @@ public abstract class LuceneTestCase ext
}
/**
- * Convinience method for logging an array. Wraps the array in an iterator and delegates
+ * Convenience method for logging an array. Wraps the array in an iterator and delegates
*
* @see #dumpIterator(String,Iterator,PrintStream)
*/
@@ -743,6 +743,7 @@ public abstract class LuceneTestCase ext
return newIndexWriterConfig(random, v, a);
}
+ /** create a new index writer config with random defaults using the specified random */
public static IndexWriterConfig newIndexWriterConfig(Random r, Version v, Analyzer a) {
IndexWriterConfig c = new IndexWriterConfig(v, a);
if (r.nextBoolean()) {
@@ -835,6 +836,10 @@ public abstract class LuceneTestCase ext
return newDirectory(random);
}
+ /**
+ * Returns a new Directory instance, using the specified random.
+ * See {@link #newDirectory()} for more information.
+ */
public static MockDirectoryWrapper newDirectory(Random r) throws IOException {
Directory impl = newDirectoryImpl(r, TEST_DIRECTORY);
MockDirectoryWrapper dir = new MockDirectoryWrapper(r, impl);
@@ -889,6 +894,11 @@ public abstract class LuceneTestCase ext
}
}
+ /**
+ * Returns a new Directory instance, using the specified random
+ * with contents copied from the provided directory. See
+ * {@link #newDirectory()} for more information.
+ */
public static MockDirectoryWrapper newDirectory(Random r, Directory d) throws IOException {
Directory impl = newDirectoryImpl(r, TEST_DIRECTORY);
for (String file : d.listAll()) {
@@ -899,26 +909,45 @@ public abstract class LuceneTestCase ext
return dir;
}
+ /** Returns a new field instance.
+ * See {@link #newField(String, String, Store, Index, TermVector)} for more information */
public static Field newField(String name, String value, Index index) {
return newField(random, name, value, index);
}
+ /** Returns a new field instance.
+ * See {@link #newField(String, String, Store, Index, TermVector)} for more information */
public static Field newField(String name, String value, Store store, Index index) {
return newField(random, name, value, store, index);
}
+ /**
+ * Returns a new Field instance. Use this when the test does not
+ * care about some specific field settings (most tests)
+ * <ul>
+ * <li>If the store value is set to Store.NO, sometimes the field will be randomly stored.
+ * <li>More term vector data than you ask for might be indexed, for example if you choose YES
+ * it might index term vectors with offsets too.
+ * </ul>
+ */
public static Field newField(String name, String value, Store store, Index index, TermVector tv) {
return newField(random, name, value, store, index, tv);
}
+ /** Returns a new field instance, using the specified random.
+ * See {@link #newField(String, String, Store, Index, TermVector)} for more information */
public static Field newField(Random random, String name, String value, Index index) {
return newField(random, name, value, Store.NO, index);
}
+ /** Returns a new field instance, using the specified random.
+ * See {@link #newField(String, String, Store, Index, TermVector)} for more information */
public static Field newField(Random random, String name, String value, Store store, Index index) {
return newField(random, name, value, store, index, TermVector.NO);
}
+ /** Returns a new field instance, using the specified random.
+ * See {@link #newField(String, String, Store, Index, TermVector)} for more information */
public static Field newField(Random random, String name, String value, Store store, Index index, TermVector tv) {
if (!index.isIndexed())
return new Field(name, value, store, index);
@@ -1029,7 +1058,8 @@ public abstract class LuceneTestCase ext
}
}
- /** create a new searcher over the reader */
+ /** create a new searcher over the reader.
+ * This searcher might randomly use threads. */
public static IndexSearcher newSearcher(IndexReader r) throws IOException {
if (random.nextBoolean()) {
return new IndexSearcher(r);
@@ -1243,7 +1273,7 @@ public abstract class LuceneTestCase ext
}
@Override
- public String toString() {
+ public synchronized String toString() {
return "RandomCodecProvider: " + previousMappings.toString();
}
}
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/_TestUtil.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/_TestUtil.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/_TestUtil.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/_TestUtil.java Mon Feb 21 14:13:28 2011
@@ -25,6 +25,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintStream;
+import java.lang.reflect.Method;
import java.util.Enumeration;
import java.util.Random;
import java.util.Map;
@@ -51,6 +52,9 @@ public class _TestUtil {
return new File(LuceneTestCase.TEMP_DIR, desc + "." + new Random().nextLong());
}
+ /**
+ * Deletes a directory and everything underneath it.
+ */
public static void rmDir(File dir) throws IOException {
if (dir.exists()) {
for (File f : dir.listFiles()) {
@@ -154,6 +158,9 @@ public class _TestUtil {
return randomUnicodeString(r, 20);
}
+ /**
+ * Returns a random string up to a certain length.
+ */
public static String randomUnicodeString(Random r, int maxLength) {
final int end = r.nextInt(maxLength);
if (end == 0) {
@@ -310,8 +317,8 @@ public class _TestUtil {
}
}
- // just tries to configure things to keep the open file
- // count lowish
+ /** just tries to configure things to keep the open file
+ * count lowish */
public static void reduceOpenFiles(IndexWriter w) {
// keep number of open files lowish
LogMergePolicy lmp = (LogMergePolicy) w.getConfig().getMergePolicy();
@@ -336,4 +343,17 @@ public class _TestUtil {
});
Assert.assertEquals("Reflection does not produce same map", reflectedValues, map);
}
+
+ public static void keepFullyDeletedSegments(IndexWriter w) {
+ try {
+ // Carefully invoke what is a package-private (test
+ // only, internal) method on IndexWriter:
+ Method m = IndexWriter.class.getDeclaredMethod("keepFullyDeletedSegments");
+ m.setAccessible(true);
+ m.invoke(w);
+ } catch (Exception e) {
+ // Should not happen?
+ throw new RuntimeException(e);
+ }
+ }
}
Modified: lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/automaton/AutomatonTestUtil.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/automaton/AutomatonTestUtil.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/automaton/AutomatonTestUtil.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test-framework/org/apache/lucene/util/automaton/AutomatonTestUtil.java Mon Feb 21 14:13:28 2011
@@ -80,9 +80,9 @@ public class AutomatonTestUtil {
return new String(buffer, 0, end);
}
- // picks a random int code point, avoiding surrogates;
- // throws IllegalArgumentException if this transition only
- // accepts surrogates
+ /** picks a random int code point, avoiding surrogates;
+ * throws IllegalArgumentException if this transition only
+ * accepts surrogates */
private static int getRandomCodePoint(final Random r, final Transition t) {
final int code;
if (t.max < UnicodeUtil.UNI_SUR_HIGH_START ||
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/TestExternalCodecs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/TestExternalCodecs.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/TestExternalCodecs.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/TestExternalCodecs.java Mon Feb 21 14:13:28 2011
@@ -510,139 +510,13 @@ public class TestExternalCodecs extends
}
}
- public static class MyCodecs extends CodecProvider {
- MyCodecs() {
- Codec ram = new RAMOnlyCodec();
- register(ram);
- setDefaultFieldCodec(ram.name);
- }
- }
-
- // copied from PulsingCodec, just changing the terms
- // comparator
- private static class PulsingReverseTermsCodec extends Codec {
-
- public PulsingReverseTermsCodec() {
- name = "PulsingReverseTerms";
- }
-
- @Override
- public FieldsConsumer fieldsConsumer(SegmentWriteState state) throws IOException {
- PostingsWriterBase docsWriter = new StandardPostingsWriter(state);
-
- // Terms that have <= freqCutoff number of docs are
- // "pulsed" (inlined):
- final int freqCutoff = 1;
- PostingsWriterBase pulsingWriter = new PulsingPostingsWriterImpl(freqCutoff, docsWriter);
-
- // Terms dict index
- TermsIndexWriterBase indexWriter;
- boolean success = false;
- try {
- indexWriter = new FixedGapTermsIndexWriter(state) {
- // We sort in reverse unicode order, so, we must
- // disable the suffix-stripping opto that
- // FixedGapTermsIndexWriter does by default!
- @Override
- protected int indexedTermPrefixLength(BytesRef priorTerm, BytesRef indexedTerm) {
- return indexedTerm.length;
- }
- };
- success = true;
- } finally {
- if (!success) {
- pulsingWriter.close();
- }
- }
-
- // Terms dict
- success = false;
- try {
- FieldsConsumer ret = new BlockTermsWriter(indexWriter, state, pulsingWriter, reverseUnicodeComparator);
- success = true;
- return ret;
- } finally {
- if (!success) {
- try {
- pulsingWriter.close();
- } finally {
- indexWriter.close();
- }
- }
- }
- }
-
- @Override
- public FieldsProducer fieldsProducer(SegmentReadState state) throws IOException {
-
- PostingsReaderBase docsReader = new StandardPostingsReader(state.dir, state.segmentInfo, state.readBufferSize, state.codecId);
- PostingsReaderBase pulsingReader = new PulsingPostingsReaderImpl(docsReader);
-
- // Terms dict index reader
- TermsIndexReaderBase indexReader;
-
- boolean success = false;
- try {
- indexReader = new FixedGapTermsIndexReader(state.dir,
- state.fieldInfos,
- state.segmentInfo.name,
- state.termsIndexDivisor,
- reverseUnicodeComparator,
- state.codecId);
- success = true;
- } finally {
- if (!success) {
- pulsingReader.close();
- }
- }
-
- // Terms dict reader
- success = false;
- try {
- FieldsProducer ret = new BlockTermsReader(indexReader,
- state.dir,
- state.fieldInfos,
- state.segmentInfo.name,
- pulsingReader,
- state.readBufferSize,
- reverseUnicodeComparator,
- StandardCodec.TERMS_CACHE_SIZE,
- state.codecId);
- success = true;
- return ret;
- } finally {
- if (!success) {
- try {
- pulsingReader.close();
- } finally {
- indexReader.close();
- }
- }
- }
- }
-
- @Override
- public void files(Directory dir, SegmentInfo segmentInfo, String codecId, Set<String> files) throws IOException {
- StandardPostingsReader.files(dir, segmentInfo, codecId, files);
- BlockTermsReader.files(dir, segmentInfo, codecId, files);
- FixedGapTermsIndexReader.files(dir, segmentInfo, codecId, files);
- }
-
- @Override
- public void getExtensions(Set<String> extensions) {
- StandardCodec.getStandardExtensions(extensions);
- }
- }
-
-
// tests storing "id" and "field2" fields as pulsing codec,
// whose term sort is backwards unicode code point, and
// storing "field1" as a custom entirely-in-RAM codec
public void testPerFieldCodec() throws Exception {
- CodecProvider provider = new MyCodecs();
- Codec pulsing = new PulsingReverseTermsCodec();
- provider.register(pulsing);
-
+ CodecProvider provider = new CoreCodecProvider();
+ provider.register(new RAMOnlyCodec());
+ provider.setDefaultFieldCodec("RamOnly");
final int NUM_DOCS = 173;
MockDirectoryWrapper dir = newDirectory();
@@ -659,11 +533,11 @@ public class TestExternalCodecs extends
doc.add(newField("field1", "this field uses the standard codec as the test", Field.Store.NO, Field.Index.ANALYZED));
// uses pulsing codec:
Field field2 = newField("field2", "this field uses the pulsing codec as the test", Field.Store.NO, Field.Index.ANALYZED);
- provider.setFieldCodec(field2.name(), pulsing.name);
+ provider.setFieldCodec(field2.name(), "Pulsing");
doc.add(field2);
Field idField = newField("id", "", Field.Store.NO, Field.Index.NOT_ANALYZED);
- provider.setFieldCodec(idField.name(), pulsing.name);
+ provider.setFieldCodec(idField.name(), "Pulsing");
doc.add(idField);
for(int i=0;i<NUM_DOCS;i++) {
@@ -673,16 +547,13 @@ public class TestExternalCodecs extends
w.commit();
}
}
+ if (VERBOSE) {
+ System.out.println("TEST: now delete id=77");
+ }
w.deleteDocuments(new Term("id", "77"));
IndexReader r = IndexReader.open(w, true);
IndexReader[] subs = r.getSequentialSubReaders();
- // test each segment
- for(int i=0;i<subs.length;i++) {
- testTermsOrder(subs[i]);
- }
- // test each multi-reader
- testTermsOrder(r);
assertEquals(NUM_DOCS-1, r.numDocs());
IndexSearcher s = newSearcher(r);
@@ -703,7 +574,6 @@ public class TestExternalCodecs extends
assertEquals(0, s.search(new TermQuery(new Term("id", "77")), 1).totalHits);
assertEquals(0, s.search(new TermQuery(new Term("id", "44")), 1).totalHits);
- testTermsOrder(r);
r.close();
s.close();
@@ -711,25 +581,4 @@ public class TestExternalCodecs extends
dir.close();
}
-
- private void testTermsOrder(IndexReader r) throws Exception {
-
- // Verify sort order matches what my comparator said:
- BytesRef lastBytesRef = null;
- TermsEnum terms = MultiFields.getFields(r).terms("id").iterator();
- //System.out.println("id terms:");
- while(true) {
- BytesRef t = terms.next();
- if (t == null) {
- break;
- }
- //System.out.println(" " + t);
- if (lastBytesRef == null) {
- lastBytesRef = new BytesRef(t);
- } else {
- assertTrue("terms in wrong order last=" + lastBytesRef.utf8ToString() + " current=" + t.utf8ToString(), reverseUnicodeComparator.compare(lastBytesRef, t) < 0);
- lastBytesRef.copy(t);
- }
- }
- }
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestDoc.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestDoc.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestDoc.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestDoc.java Mon Feb 21 14:13:28 2011
@@ -57,6 +57,9 @@ public class TestDoc extends LuceneTestC
@Override
public void setUp() throws Exception {
super.setUp();
+ if (VERBOSE) {
+ System.out.println("TEST: setUp");
+ }
workDir = new File(TEMP_DIR,"TestDoc");
workDir.mkdirs();
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexReaderCloneNorms.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexReaderCloneNorms.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexReaderCloneNorms.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexReaderCloneNorms.java Mon Feb 21 14:13:28 2011
@@ -43,7 +43,7 @@ public class TestIndexReaderCloneNorms e
private class SimilarityOne extends DefaultSimilarity {
@Override
- public float computeNorm(String fieldName, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
// diable length norm
return state.getBoost();
}
@@ -106,13 +106,17 @@ public class TestIndexReaderCloneNorms e
Directory dir3 = newDirectory();
createIndex(random, dir3);
+ if (VERBOSE) {
+ System.out.println("TEST: now addIndexes/optimize");
+ }
IndexWriter iw = new IndexWriter(
dir3,
newIndexWriterConfig(TEST_VERSION_CURRENT, anlzr).
setOpenMode(OpenMode.APPEND).
setMaxBufferedDocs(5).
- setMergePolicy(newLogMergePolicy(3))
+ setMergePolicy(newLogMergePolicy(3))
);
+ iw.setInfoStream(VERBOSE ? System.out : null);
iw.addIndexes(dir1, dir2);
iw.optimize();
iw.close();
@@ -146,6 +150,9 @@ public class TestIndexReaderCloneNorms e
// try cloning and reopening the norms
private void doTestNorms(Random random, Directory dir) throws IOException {
+ if (VERBOSE) {
+ System.out.println("TEST: now doTestNorms");
+ }
addDocs(random, dir, 12, true);
IndexReader ir = IndexReader.open(dir, false);
verifyIndex(ir);
@@ -237,13 +244,20 @@ public class TestIndexReaderCloneNorms e
}
private void createIndex(Random random, Directory dir) throws IOException {
+ if (VERBOSE) {
+ System.out.println("TEST: createIndex");
+ }
IndexWriter iw = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, anlzr).setOpenMode(OpenMode.CREATE)
.setMaxBufferedDocs(5).setSimilarityProvider(similarityOne).setMergePolicy(newLogMergePolicy()));
+
LogMergePolicy lmp = (LogMergePolicy) iw.getConfig().getMergePolicy();
lmp.setMergeFactor(3);
lmp.setUseCompoundFile(true);
iw.close();
+ if (VERBOSE) {
+ System.out.println("TEST: done createIndex");
+ }
}
private void modifyNormsForF1(IndexReader ir) throws IOException {
@@ -298,6 +312,7 @@ public class TestIndexReaderCloneNorms e
lmp.setMergeFactor(3);
lmp.setUseCompoundFile(compound);
IndexWriter iw = new IndexWriter(dir, conf);
+ iw.setInfoStream(VERBOSE ? System.out : null);
for (int i = 0; i < ndocs; i++) {
iw.addDocument(newDoc());
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriter.java Mon Feb 21 14:13:28 2011
@@ -286,7 +286,7 @@ public class TestIndexWriter extends Luc
// Import to use same term index interval else a
// smaller one here could increase the disk usage and
// cause a false failure:
- writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer()).setOpenMode(OpenMode.APPEND).setTermIndexInterval(termIndexInterval));
+ writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer()).setOpenMode(OpenMode.APPEND).setTermIndexInterval(termIndexInterval).setMergePolicy(newLogMergePolicy()));
writer.setInfoStream(VERBOSE ? System.out : null);
writer.optimize();
writer.close();
@@ -2784,6 +2784,9 @@ public class TestIndexWriter extends Luc
final String id = ""+i;
idField.setValue(id);
docs.put(id, doc);
+ if (VERBOSE) {
+ System.out.println("TEST: add doc id=" + id);
+ }
for(int field: fieldIDs) {
final String s;
@@ -2802,7 +2805,7 @@ public class TestIndexWriter extends Luc
if (rand.nextInt(5) == 3 && i > 0) {
final String delID = ""+rand.nextInt(i);
if (VERBOSE) {
- System.out.println("TEST: delete doc " + delID);
+ System.out.println("TEST: delete doc id=" + delID);
}
w.deleteDocuments(new Term("id", delID));
docs.remove(delID);
@@ -2825,6 +2828,9 @@ public class TestIndexWriter extends Luc
for(int iter=0;iter<1000*RANDOM_MULTIPLIER;iter++) {
String testID = idsList[rand.nextInt(idsList.length)];
+ if (VERBOSE) {
+ System.out.println("TEST: test id=" + testID);
+ }
TopDocs hits = s.search(new TermQuery(new Term("id", testID)), 1);
assertEquals(1, hits.totalHits);
Document doc = r.document(hits.scoreDocs[0].doc);
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterDelete.java Mon Feb 21 14:13:28 2011
@@ -81,7 +81,7 @@ public class TestIndexWriterDelete exten
IndexWriter modifier = new IndexWriter(dir, newIndexWriterConfig(
TEST_VERSION_CURRENT, new MockAnalyzer(MockTokenizer.WHITESPACE, false)).setMaxBufferedDocs(2)
.setMaxBufferedDeleteTerms(2));
-
+ modifier.setInfoStream(VERBOSE ? System.out : null);
int id = 0;
int value = 100;
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java Mon Feb 21 14:13:28 2011
@@ -464,11 +464,11 @@ public class TestIndexWriterOnDiskFull e
setReaderPooling(true).
setMergePolicy(newLogMergePolicy(2))
);
+ _TestUtil.keepFullyDeletedSegments(w);
Document doc = new Document();
doc.add(newField("f", "doctor who", Field.Store.YES, Field.Index.ANALYZED));
w.addDocument(doc);
-
w.commit();
w.deleteDocuments(new Term("f", "who"));
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIndexWriterReader.java Mon Feb 21 14:13:28 2011
@@ -124,7 +124,11 @@ public class TestIndexWriterReader exten
} else {
iwc.setMergePolicy(NoMergePolicy.COMPOUND_FILES);
}
+ if (VERBOSE) {
+ System.out.println("TEST: make index");
+ }
IndexWriter writer = new IndexWriter(dir1, iwc);
+ writer.setInfoStream(VERBOSE ? System.out : null);
// create the index
createIndexNoClose(!optimize, "index1", writer);
@@ -146,6 +150,9 @@ public class TestIndexWriterReader exten
IndexReader r2 = writer.getReader();
assertTrue(r2.isCurrent());
assertEquals(0, count(new Term("id", id10), r2));
+ if (VERBOSE) {
+ System.out.println("TEST: verify id");
+ }
assertEquals(1, count(new Term("id", Integer.toString(8000)), r2));
r1.close();
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIsCurrent.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIsCurrent.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIsCurrent.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestIsCurrent.java Mon Feb 21 14:13:28 2011
@@ -68,7 +68,7 @@ public class TestIsCurrent extends Lucen
// assert index has a document and reader is up2date
assertEquals("One document should be in the index", 1, writer.numDocs());
- assertTrue("Document added, reader should be stale ", reader.isCurrent());
+ assertTrue("One document added, reader should be current", reader.isCurrent());
// remove document
Term idTerm = new Term("UUID", "1");
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMaxTermFrequency.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMaxTermFrequency.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMaxTermFrequency.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMaxTermFrequency.java Mon Feb 21 14:13:28 2011
@@ -109,7 +109,7 @@ public class TestMaxTermFrequency extend
}
@Override
- public float computeNorm(String field, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
return (float) state.getMaxTermFrequency();
}
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMultiFields.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMultiFields.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMultiFields.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestMultiFields.java Mon Feb 21 14:13:28 2011
@@ -32,6 +32,7 @@ public class TestMultiFields extends Luc
Directory dir = newDirectory();
IndexWriter w = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer()).setMergePolicy(NoMergePolicy.COMPOUND_FILES));
+ _TestUtil.keepFullyDeletedSegments(w);
Map<BytesRef,List<Integer>> docs = new HashMap<BytesRef,List<Integer>>();
Set<Integer> deleted = new HashSet<Integer>();
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNRTReaderWithThreads.java Mon Feb 21 14:13:28 2011
@@ -36,6 +36,7 @@ public class TestNRTReaderWithThreads ex
setMaxBufferedDocs(10).
setMergePolicy(newLogMergePolicy(false,2))
);
+ writer.setInfoStream(VERBOSE ? System.out : null);
IndexReader reader = writer.getReader(); // start pooling readers
reader.close();
RunThread[] indexThreads = new RunThread[4];
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNorms.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNorms.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNorms.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestNorms.java Mon Feb 21 14:13:28 2011
@@ -42,7 +42,7 @@ public class TestNorms extends LuceneTes
private class SimilarityOne extends DefaultSimilarity {
@Override
- public float computeNorm(String fieldName, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
// Disable length norm
return state.getBoost();
}
@@ -252,7 +252,7 @@ public class TestNorms extends LuceneTes
}
@Override
- public float computeNorm(String field, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
return (float) state.getLength();
}
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestOmitTf.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestOmitTf.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestOmitTf.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestOmitTf.java Mon Feb 21 14:13:28 2011
@@ -36,7 +36,7 @@ import org.apache.lucene.search.Explanat
public class TestOmitTf extends LuceneTestCase {
public static class SimpleSimilarity extends Similarity implements SimilarityProvider {
- @Override public float computeNorm(String field, FieldInvertState state) { return state.getBoost(); }
+ @Override public float computeNorm(FieldInvertState state) { return state.getBoost(); }
@Override public float tf(float freq) { return freq; }
@Override public float sloppyFreq(int distance) { return 2.0f; }
@Override public float idf(int docFreq, int numDocs) { return 1.0f; }
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/index/TestThreadedOptimize.java Mon Feb 21 14:13:28 2011
@@ -71,7 +71,7 @@ public class TestThreadedOptimize extend
}
((LogMergePolicy) writer.getConfig().getMergePolicy()).setMergeFactor(4);
- //writer.setInfoStream(System.out);
+ writer.setInfoStream(VERBOSE ? System.out : null);
Thread[] threads = new Thread[NUM_THREADS];
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/queryParser/TestQueryParser.java Mon Feb 21 14:13:28 2011
@@ -35,6 +35,7 @@ import org.apache.lucene.analysis.TokenS
import org.apache.lucene.analysis.Tokenizer;
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
+import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
import org.apache.lucene.document.DateTools;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
@@ -58,6 +59,7 @@ import org.apache.lucene.search.Wildcard
import org.apache.lucene.search.BooleanClause.Occur;
import org.apache.lucene.store.Directory;
import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util.Version;
import org.apache.lucene.util.automaton.BasicAutomata;
import org.apache.lucene.util.automaton.CharacterRunAutomaton;
import org.apache.lucene.util.automaton.RegExp;
@@ -1175,5 +1177,87 @@ public class TestQueryParser extends Luc
// expected
}
}
+
+ /**
+ * adds synonym of "dog" for "dogs".
+ */
+ private class MockSynonymFilter extends TokenFilter {
+ CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
+ PositionIncrementAttribute posIncAtt = addAttribute(PositionIncrementAttribute.class);
+ boolean addSynonym = false;
+
+ public MockSynonymFilter(TokenStream input) {
+ super(input);
+ }
+
+ @Override
+ public final boolean incrementToken() throws IOException {
+ if (addSynonym) { // inject our synonym
+ clearAttributes();
+ termAtt.setEmpty().append("dog");
+ posIncAtt.setPositionIncrement(0);
+ addSynonym = false;
+ return true;
+ }
+
+ if (input.incrementToken()) {
+ addSynonym = termAtt.toString().equals("dogs");
+ return true;
+ } else {
+ return false;
+ }
+ }
+ }
+
+ /** whitespace+lowercase analyzer with synonyms */
+ private class Analyzer1 extends Analyzer {
+ @Override
+ public TokenStream tokenStream(String fieldName, Reader reader) {
+ return new MockSynonymFilter(new MockTokenizer(reader, MockTokenizer.WHITESPACE, true));
+ }
+ }
+
+ /** whitespace+lowercase analyzer without synonyms */
+ private class Analyzer2 extends Analyzer {
+ @Override
+ public TokenStream tokenStream(String fieldName, Reader reader) {
+ return new MockTokenizer(reader, MockTokenizer.WHITESPACE, true);
+ }
+ }
+
+ /** query parser that doesn't expand synonyms when users use double quotes */
+ private class SmartQueryParser extends QueryParser {
+ Analyzer morePrecise = new Analyzer2();
+
+ public SmartQueryParser() {
+ super(TEST_VERSION_CURRENT, "field", new Analyzer1());
+ }
+ @Override
+ protected Query getFieldQuery(String field, String queryText, boolean quoted)
+ throws ParseException {
+ if (quoted)
+ return newFieldQuery(morePrecise, field, queryText, quoted);
+ else
+ return super.getFieldQuery(field, queryText, quoted);
+ }
+ }
+
+ public void testNewFieldQuery() throws Exception {
+ /** ordinary behavior, synonyms form uncoordinated boolean query */
+ QueryParser dumb = new QueryParser(TEST_VERSION_CURRENT, "field", new Analyzer1());
+ BooleanQuery expanded = new BooleanQuery(true);
+ expanded.add(new TermQuery(new Term("field", "dogs")), BooleanClause.Occur.SHOULD);
+ expanded.add(new TermQuery(new Term("field", "dog")), BooleanClause.Occur.SHOULD);
+ assertEquals(expanded, dumb.parse("\"dogs\""));
+ /** even with the phrase operator the behavior is the same */
+ assertEquals(expanded, dumb.parse("dogs"));
+
+ /** custom behavior, the synonyms are expanded, unless you use quote operator */
+ QueryParser smart = new SmartQueryParser();
+ assertEquals(expanded, smart.parse("dogs"));
+
+ Query unexpanded = new TermQuery(new Term("field", "dogs"));
+ assertEquals(unexpanded, smart.parse("\"dogs\""));
+ }
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/JustCompileSearch.java Mon Feb 21 14:13:28 2011
@@ -248,7 +248,7 @@ final class JustCompileSearch {
}
@Override
- public float computeNorm(String fieldName, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
throw new UnsupportedOperationException(UNSUPPORTED_MSG);
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestAutomatonQuery.java Mon Feb 21 14:13:28 2011
@@ -79,6 +79,9 @@ public class TestAutomatonQuery extends
}
private int automatonQueryNrHits(AutomatonQuery query) throws IOException {
+ if (VERBOSE) {
+ System.out.println("TEST: run aq=" + query);
+ }
return searcher.search(query, 5).totalHits;
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingSpanFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingSpanFilter.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingSpanFilter.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingSpanFilter.java Mon Feb 21 14:13:28 2011
@@ -29,6 +29,7 @@ import org.apache.lucene.index.Term;
import org.apache.lucene.search.spans.SpanTermQuery;
import org.apache.lucene.store.Directory;
import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util._TestUtil;
public class TestCachingSpanFilter extends LuceneTestCase {
@@ -73,7 +74,9 @@ public class TestCachingSpanFilter exten
docs = searcher.search(constantScore, 1);
assertEquals("[just filter] Should find a hit...", 1, docs.totalHits);
- // now delete the doc, refresh the reader, and see that it's not there
+ // now delete the doc, refresh the reader, and see that
+ // it's not there
+ _TestUtil.keepFullyDeletedSegments(writer.w);
writer.deleteDocuments(new Term("id", "1"));
reader = refreshReader(reader);
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCachingWrapperFilter.java Mon Feb 21 14:13:28 2011
@@ -22,8 +22,8 @@ import java.io.IOException;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.RandomIndexWriter;
import org.apache.lucene.index.SerialMergeScheduler;
import org.apache.lucene.index.SlowMultiReaderWrapper;
@@ -32,6 +32,7 @@ import org.apache.lucene.store.Directory
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.OpenBitSet;
import org.apache.lucene.util.OpenBitSetDISI;
+import org.apache.lucene.util._TestUtil;
public class TestCachingWrapperFilter extends LuceneTestCase {
@@ -196,6 +197,7 @@ public class TestCachingWrapperFilter ex
assertEquals("[just filter] Should find a hit...", 1, docs.totalHits);
// now delete the doc, refresh the reader, and see that it's not there
+ _TestUtil.keepFullyDeletedSegments(writer.w);
writer.deleteDocuments(new Term("id", "1"));
reader = refreshReader(reader);
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCustomSearcherSort.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCustomSearcherSort.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCustomSearcherSort.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestCustomSearcherSort.java Mon Feb 21 14:13:28 2011
@@ -17,7 +17,6 @@ package org.apache.lucene.search;
*/
import java.io.IOException;
-import java.io.Serializable;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Map;
@@ -34,7 +33,7 @@ import org.apache.lucene.store.Directory
import org.apache.lucene.util.LuceneTestCase;
/** Unit test for sorting code. */
-public class TestCustomSearcherSort extends LuceneTestCase implements Serializable {
+public class TestCustomSearcherSort extends LuceneTestCase {
private Directory index = null;
private IndexReader reader;
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestDisjunctionMaxQuery.java Mon Feb 21 14:13:28 2011
@@ -62,7 +62,7 @@ public class TestDisjunctionMaxQuery ext
}
@Override
- public float computeNorm(String fieldName, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
// Disable length norm
return state.getBoost();
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestMultiTermConstantScore.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestMultiTermConstantScore.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestMultiTermConstantScore.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestMultiTermConstantScore.java Mon Feb 21 14:13:28 2011
@@ -23,6 +23,7 @@ import org.apache.lucene.document.Docume
import org.apache.lucene.document.Field;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexReader.AtomicReaderContext;
+import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.RandomIndexWriter;
import org.apache.lucene.index.Term;
import org.apache.lucene.store.Directory;
@@ -59,7 +60,9 @@ public class TestMultiTermConstantScore
"X 4 5 6" };
small = newDirectory();
- RandomIndexWriter writer = new RandomIndexWriter(random, small, new MockAnalyzer(MockTokenizer.WHITESPACE, false));
+ RandomIndexWriter writer = new RandomIndexWriter(random, small,
+ newIndexWriterConfig(TEST_VERSION_CURRENT,
+ new MockAnalyzer(MockTokenizer.WHITESPACE, false)).setMergePolicy(newInOrderLogMergePolicy()));
for (int i = 0; i < data.length; i++) {
Document doc = new Document();
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarity.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarity.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarity.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarity.java Mon Feb 21 14:13:28 2011
@@ -40,7 +40,7 @@ import org.apache.lucene.search.Explanat
public class TestSimilarity extends LuceneTestCase {
public static class SimpleSimilarity extends Similarity implements SimilarityProvider {
- @Override public float computeNorm(String field, FieldInvertState state) { return state.getBoost(); }
+ @Override public float computeNorm(FieldInvertState state) { return state.getBoost(); }
@Override public float tf(float freq) { return freq; }
@Override public float sloppyFreq(int distance) { return 2.0f; }
@Override public float idf(int docFreq, int numDocs) { return 1.0f; }
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSimilarityProvider.java Mon Feb 21 14:13:28 2011
@@ -107,7 +107,7 @@ public class TestSimilarityProvider exte
private class Sim1 extends Similarity {
@Override
- public float computeNorm(String field, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
return 1f;
}
@@ -129,7 +129,7 @@ public class TestSimilarityProvider exte
private class Sim2 extends Similarity {
@Override
- public float computeNorm(String field, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
return 10f;
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSort.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSort.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSort.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/TestSort.java Mon Feb 21 14:13:28 2011
@@ -18,7 +18,6 @@ package org.apache.lucene.search;
*/
import java.io.IOException;
-import java.io.Serializable;
import java.text.Collator;
import java.util.ArrayList;
import java.util.BitSet;
@@ -65,7 +64,7 @@ import org.apache.lucene.util._TestUtil;
* @since lucene 1.4
*/
-public class TestSort extends LuceneTestCase implements Serializable {
+public class TestSort extends LuceneTestCase {
private static final int NUM_STRINGS = 6000 * RANDOM_MULTIPLIER;
private IndexSearcher full;
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java Mon Feb 21 14:13:28 2011
@@ -299,14 +299,14 @@ public class TestPayloadNearQuery extend
// must be static for weight serialization tests
static class BoostingSimilarity extends DefaultSimilarity {
- @Override public float scorePayload(int docId, String fieldName, int start, int end, byte[] payload, int offset, int length) {
+ @Override public float scorePayload(int docId, int start, int end, byte[] payload, int offset, int length) {
//we know it is size 4 here, so ignore the offset/length
return payload[offset];
}
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
//Make everything else 1 so we see the effect of the payload
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- @Override public float computeNorm(String fieldName, FieldInvertState state) {
+ @Override public float computeNorm(FieldInvertState state) {
return state.getBoost();
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java Mon Feb 21 14:13:28 2011
@@ -287,7 +287,7 @@ public class TestPayloadTermQuery extend
// TODO: Remove warning after API has been finalized
@Override
- public float scorePayload(int docId, String fieldName, int start, int end, byte[] payload, int offset, int length) {
+ public float scorePayload(int docId, int start, int end, byte[] payload, int offset, int length) {
//we know it is size 4 here, so ignore the offset/length
return payload[offset];
}
@@ -296,7 +296,7 @@ public class TestPayloadTermQuery extend
//Make everything else 1 so we see the effect of the payload
//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@Override
- public float computeNorm(String fieldName, FieldInvertState state) {
+ public float computeNorm(FieldInvertState state) {
return state.getBoost();
}
Modified: lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java (original)
+++ lucene/dev/branches/docvalues/lucene/src/test/org/apache/lucene/store/TestRAMDirectory.java Mon Feb 21 14:13:28 2011
@@ -139,18 +139,6 @@ public class TestRAMDirectory extends Lu
writer.close();
}
-
- public void testSerializable() throws IOException {
- Directory dir = new RAMDirectory();
- ByteArrayOutputStream bos = new ByteArrayOutputStream(1024);
- assertEquals("initially empty", 0, bos.size());
- ObjectOutput out = new ObjectOutputStream(bos);
- int headerSize = bos.size();
- out.writeObject(dir);
- out.close();
- assertTrue("contains more then just header", headerSize < bos.size());
- }
-
@Override
public void tearDown() throws Exception {
// cleanup
Modified: lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/ByteVector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/ByteVector.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/ByteVector.java (original)
+++ lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/ByteVector.java Mon Feb 21 14:13:28 2011
@@ -18,14 +18,12 @@
package org.apache.lucene.analysis.compound.hyphenation;
-import java.io.Serializable;
-
/**
* This class implements a simple byte vector with access to the underlying
* array.
* This class has been taken from the Apache FOP project (http://xmlgraphics.apache.org/fop/). They have been slightly modified.
*/
-public class ByteVector implements Serializable {
+public class ByteVector {
/**
* Capacity increment size
Modified: lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/CharVector.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/CharVector.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/CharVector.java (original)
+++ lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/CharVector.java Mon Feb 21 14:13:28 2011
@@ -17,15 +17,13 @@
package org.apache.lucene.analysis.compound.hyphenation;
-import java.io.Serializable;
-
/**
* This class implements a simple char vector with access to the underlying
* array.
*
* This class has been taken from the Apache FOP project (http://xmlgraphics.apache.org/fop/). They have been slightly modified.
*/
-public class CharVector implements Cloneable, Serializable {
+public class CharVector implements Cloneable {
/**
* Capacity increment size
Modified: lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/Hyphen.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/Hyphen.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/Hyphen.java (original)
+++ lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/Hyphen.java Mon Feb 21 14:13:28 2011
@@ -17,8 +17,6 @@
package org.apache.lucene.analysis.compound.hyphenation;
-import java.io.Serializable;
-
/**
* This class represents a hyphen. A 'full' hyphen is made of 3 parts: the
* pre-break text, post-break text and no-break. If no line-break is generated
@@ -32,7 +30,7 @@ import java.io.Serializable;
* This class has been taken from the Apache FOP project (http://xmlgraphics.apache.org/fop/). They have been slightly modified.
*/
-public class Hyphen implements Serializable {
+public class Hyphen {
public String preBreak;
public String noBreak;
Modified: lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java (original)
+++ lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/HyphenationTree.java Mon Feb 21 14:13:28 2011
@@ -18,7 +18,6 @@
package org.apache.lucene.analysis.compound.hyphenation;
import java.io.File;
-import java.io.Serializable;
import java.net.MalformedURLException;
import java.util.ArrayList;
import java.util.HashMap;
@@ -31,10 +30,7 @@ import org.xml.sax.InputSource;
*
* This class has been taken from the Apache FOP project (http://xmlgraphics.apache.org/fop/). They have been slightly modified.
*/
-public class HyphenationTree extends TernaryTree implements PatternConsumer,
- Serializable {
-
- private static final long serialVersionUID = -7842107987915665573L;
+public class HyphenationTree extends TernaryTree implements PatternConsumer {
/**
* value space: stores the interletter values
Modified: lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java (original)
+++ lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/compound/hyphenation/TernaryTree.java Mon Feb 21 14:13:28 2011
@@ -19,7 +19,6 @@ package org.apache.lucene.analysis.compo
import java.util.Enumeration;
import java.util.Stack;
-import java.io.Serializable;
/**
* <h2>Ternary Search Tree.</h2>
@@ -63,7 +62,7 @@ import java.io.Serializable;
* This class has been taken from the Apache FOP project (http://xmlgraphics.apache.org/fop/). They have been slightly modified.
*/
-public class TernaryTree implements Cloneable, Serializable {
+public class TernaryTree implements Cloneable {
/**
* We use 4 arrays to represent a node. I guess I should have created a proper
Modified: lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/standard/ASCIITLD.jflex-macro
URL: http://svn.apache.org/viewvc/lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/standard/ASCIITLD.jflex-macro?rev=1072973&r1=1072972&r2=1072973&view=diff
==============================================================================
--- lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/standard/ASCIITLD.jflex-macro (original)
+++ lucene/dev/branches/docvalues/modules/analysis/common/src/java/org/apache/lucene/analysis/standard/ASCIITLD.jflex-macro Mon Feb 21 14:13:28 2011
@@ -15,8 +15,8 @@
*/
// Generated from IANA Root Zone Database <http://www.internic.net/zones/root.zone>
-// file version from Wednesday, January 5, 2011 12:34:09 PM UTC
-// generated on Thursday, January 6, 2011 5:09:41 AM UTC
+// file version from Wednesday, February 9, 2011 12:34:10 PM UTC
+// generated on Wednesday, February 9, 2011 4:45:18 PM UTC
// by org.apache.lucene.analysis.standard.GenerateJflexTLDMacros
ASCIITLD = "." (
@@ -285,13 +285,19 @@ ASCIITLD = "." (
| [wW][sS]
| [xX][nN]--0[zZ][wW][mM]56[dD]
| [xX][nN]--11[bB]5[bB][sS]3[aA]9[aA][jJ]6[gG]
+ | [xX][nN]--3[eE]0[bB]707[eE]
+ | [xX][nN]--45[bB][rR][jJ]9[cC]
| [xX][nN]--80[aA][kK][hH][bB][yY][kK][nN][jJ]4[fF]
| [xX][nN]--9[tT]4[bB]11[yY][iI]5[aA]
+ | [xX][nN]--[cC][lL][cC][hH][cC]0[eE][aA]0[bB]2[gG]2[aA]9[gG][cC][dD]
| [xX][nN]--[dD][eE][bB][aA]0[aA][dD]
| [xX][nN]--[fF][iI][qQ][sS]8[sS]
| [xX][nN]--[fF][iI][qQ][zZ]9[sS]
+ | [xX][nN]--[fF][pP][cC][rR][jJ]9[cC]3[dD]
| [xX][nN]--[fF][zZ][cC]2[cC]9[eE]2[cC]
| [xX][nN]--[gG]6[wW]251[dD]
+ | [xX][nN]--[gG][eE][cC][rR][jJ]9[cC]
+ | [xX][nN]--[hH]2[bB][rR][jJ]9[cC]
| [xX][nN]--[hH][gG][bB][kK]6[aA][jJ]7[fF]53[bB][bB][aA]
| [xX][nN]--[hH][lL][cC][jJ]6[aA][yY][aA]9[eE][sS][cC]7[aA]
| [xX][nN]--[jJ]6[wW]193[gG]
@@ -301,13 +307,18 @@ ASCIITLD = "." (
| [xX][nN]--[kK][pP][rR][yY]57[dD]
| [xX][nN]--[mM][gG][bB][aA][aA][mM]7[aA]8[hH]
| [xX][nN]--[mM][gG][bB][aA][yY][hH]7[gG][pP][aA]
+ | [xX][nN]--[mM][gG][bB][bB][hH]1[aA]71[eE]
| [xX][nN]--[mM][gG][bB][eE][rR][pP]4[aA]5[dD]4[aA][rR]
| [xX][nN]--[oO]3[cC][wW]4[hH]
+ | [xX][nN]--[oO][gG][bB][pP][fF]8[fF][lL]
| [xX][nN]--[pP]1[aA][iI]
| [xX][nN]--[pP][gG][bB][sS]0[dD][hH]
+ | [xX][nN]--[sS]9[bB][rR][jJ]9[cC]
| [xX][nN]--[wW][gG][bB][hH]1[cC]
| [xX][nN]--[wW][gG][bB][lL]6[aA]
| [xX][nN]--[xX][kK][cC]2[aA][lL]3[hH][yY][eE]2[aA]
+ | [xX][nN]--[xX][kK][cC]2[dD][lL]3[aA]5[eE][eE]0[hH]
+ | [xX][nN]--[yY][fF][rR][oO]4[iI]67[oO]
| [xX][nN]--[yY][gG][bB][iI]2[aA][mM][mM][xX]
| [xX][nN]--[zZ][cC][kK][zZ][aA][hH]
| [yY][eE]