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 2014/08/21 18:28:17 UTC
svn commit: r1619477 [2/2] - in /lucene/dev/branches/branch_4x: ./ lucene/
lucene/codecs/ lucene/codecs/src/java/org/apache/lucene/codecs/simpletext/
lucene/core/ lucene/core/src/java/org/apache/lucene/codecs/
lucene/core/src/java/org/apache/lucene/cod...
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/SegmentReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/SegmentReader.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/SegmentReader.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/index/SegmentReader.java Thu Aug 21 16:28:16 2014
@@ -18,18 +18,15 @@ package org.apache.lucene.index;
*/
import java.io.IOException;
-import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
-import java.util.IdentityHashMap;
-import java.util.List;
import java.util.Map;
-import java.util.Set;
import org.apache.lucene.codecs.Codec;
import org.apache.lucene.codecs.DocValuesFormat;
import org.apache.lucene.codecs.DocValuesProducer;
import org.apache.lucene.codecs.FieldInfosFormat;
+import org.apache.lucene.codecs.NormsProducer;
import org.apache.lucene.codecs.StoredFieldsReader;
import org.apache.lucene.codecs.TermVectorsReader;
import org.apache.lucene.index.FieldInfo.DocValuesType;
@@ -41,8 +38,6 @@ import org.apache.lucene.util.Bits;
import org.apache.lucene.util.CloseableThreadLocal;
import org.apache.lucene.util.IOUtils;
import org.apache.lucene.util.RamUsageEstimator;
-import org.apache.lucene.util.StringHelper;
-import org.apache.lucene.util.Version;
/**
* IndexReader implementation over a single segment.
@@ -56,7 +51,6 @@ public final class SegmentReader extends
private static final long BASE_RAM_BYTES_USED =
RamUsageEstimator.shallowSizeOfInstance(SegmentReader.class)
+ RamUsageEstimator.shallowSizeOfInstance(SegmentDocValues.class);
- private static final long LONG_RAM_BYTES_USED = RamUsageEstimator.shallowSizeOfInstance(Long.class);
private final SegmentCommitInfo si;
private final Bits liveDocs;
@@ -83,12 +77,8 @@ public final class SegmentReader extends
}
};
- final Map<String,DocValuesProducer> dvProducersByField = new HashMap<>();
- final Set<DocValuesProducer> dvProducers = Collections.newSetFromMap(new IdentityHashMap<DocValuesProducer,Boolean>());
-
+ final DocValuesProducer docValuesProducer;
final FieldInfos fieldInfos;
-
- private final List<Long> dvGens = new ArrayList<>();
/**
* Constructs a new SegmentReader with a new core.
@@ -121,7 +111,9 @@ public final class SegmentReader extends
numDocs = si.info.getDocCount() - si.getDelCount();
if (fieldInfos.hasDocValues()) {
- initDocValuesProducers(codec);
+ docValuesProducer = initDocValuesProducer(codec);
+ } else {
+ docValuesProducer = null;
}
success = true;
@@ -171,7 +163,9 @@ public final class SegmentReader extends
}
if (fieldInfos.hasDocValues()) {
- initDocValuesProducers(codec);
+ docValuesProducer = initDocValuesProducer(codec);
+ } else {
+ docValuesProducer = null;
}
success = true;
} finally {
@@ -182,82 +176,16 @@ public final class SegmentReader extends
}
// initialize the per-field DocValuesProducer
- @SuppressWarnings("deprecation")
- private void initDocValuesProducers(Codec codec) throws IOException {
+ private DocValuesProducer initDocValuesProducer(Codec codec) throws IOException {
final Directory dir = core.cfsReader != null ? core.cfsReader : si.info.dir;
final DocValuesFormat dvFormat = codec.docValuesFormat();
int termsIndexDivisor = getTermInfosIndexDivisor();
if (!si.hasFieldUpdates()) {
// simple case, no DocValues updates
- final DocValuesProducer dvp = segDocValues.getDocValuesProducer(-1L, si, IOContext.READ, dir, dvFormat, fieldInfos, termsIndexDivisor);
- dvGens.add(-1L);
- dvProducers.add(dvp);
- for (FieldInfo fi : fieldInfos) {
- if (!fi.hasDocValues()) continue;
- assert fi.getDocValuesGen() == -1;
- dvProducersByField.put(fi.name, dvp);
- }
- return;
- }
-
- Version ver = si.info.getVersion();
- if (ver != null && ver.onOrAfter(Version.LUCENE_4_9_0)) {
- DocValuesProducer baseProducer = null;
- for (FieldInfo fi : fieldInfos) {
- if (!fi.hasDocValues()) continue;
- long docValuesGen = fi.getDocValuesGen();
- if (docValuesGen == -1) {
- if (baseProducer == null) {
-// System.out.println("[" + Thread.currentThread().getName() + "] SR.initDocValuesProducers: segInfo=" + si + "; gen=" + docValuesGen + "; field=" + fi.name);
- // the base producer gets all the fields, so the Codec can validate properly
- baseProducer = segDocValues.getDocValuesProducer(docValuesGen, si, IOContext.READ, dir, dvFormat, fieldInfos, termsIndexDivisor);
- dvGens.add(docValuesGen);
- dvProducers.add(baseProducer);
- }
-// System.out.println("[" + Thread.currentThread().getName() + "] SR.initDocValuesProducers: segInfo=" + si + "; gen=" + docValuesGen + "; field=" + fi.name);
- dvProducersByField.put(fi.name, baseProducer);
- } else {
- assert !dvGens.contains(docValuesGen);
-// System.out.println("[" + Thread.currentThread().getName() + "] SR.initDocValuesProducers: segInfo=" + si + "; gen=" + docValuesGen + "; field=" + fi.name);
- final DocValuesProducer dvp = segDocValues.getDocValuesProducer(docValuesGen, si, IOContext.READ, dir, dvFormat, new FieldInfos(new FieldInfo[] { fi }), termsIndexDivisor);
- dvGens.add(docValuesGen);
- dvProducers.add(dvp);
- dvProducersByField.put(fi.name, dvp);
- }
- }
+ return segDocValues.getDocValuesProducer(-1L, si, IOContext.READ, dir, dvFormat, fieldInfos, termsIndexDivisor);
} else {
- // For pre-4.9 indexes, especially with doc-values updates, multiple
- // FieldInfos could belong to the same dvGen. Therefore need to make sure
- // we initialize each DocValuesProducer once per gen.
- Map<Long,List<FieldInfo>> genInfos = new HashMap<>();
- for (FieldInfo fi : fieldInfos) {
- if (!fi.hasDocValues()) continue;
- List<FieldInfo> genFieldInfos = genInfos.get(fi.getDocValuesGen());
- if (genFieldInfos == null) {
- genFieldInfos = new ArrayList<>();
- genInfos.put(fi.getDocValuesGen(), genFieldInfos);
- }
- genFieldInfos.add(fi);
- }
-
- for (Map.Entry<Long,List<FieldInfo>> e : genInfos.entrySet()) {
- long docValuesGen = e.getKey();
- List<FieldInfo> infos = e.getValue();
- final DocValuesProducer dvp;
- if (docValuesGen == -1) {
- // we need to send all FieldInfos to gen=-1, but later we need to
- // record the DVP only for the "true" gen=-1 fields (not updated)
- dvp = segDocValues.getDocValuesProducer(docValuesGen, si, IOContext.READ, dir, dvFormat, fieldInfos, termsIndexDivisor);
- } else {
- dvp = segDocValues.getDocValuesProducer(docValuesGen, si, IOContext.READ, dir, dvFormat, new FieldInfos(infos.toArray(new FieldInfo[infos.size()])), termsIndexDivisor);
- }
- dvGens.add(docValuesGen);
- dvProducers.add(dvp);
- for (FieldInfo fi : infos) {
- dvProducersByField.put(fi.name, dvp);
- }
- }
+ return new SegmentDocValuesProducer(si, dir, fieldInfos, segDocValues, dvFormat, termsIndexDivisor);
}
}
@@ -306,11 +234,14 @@ public final class SegmentReader extends
try {
core.decRef();
} finally {
- dvProducersByField.clear();
try {
IOUtils.close(docValuesLocal, docsWithFieldLocal);
} finally {
- segDocValues.decRef(dvGens);
+ if (docValuesProducer instanceof SegmentDocValuesProducer) {
+ segDocValues.decRef(((SegmentDocValuesProducer)docValuesProducer).dvGens);
+ } else if (docValuesProducer != null) {
+ segDocValues.decRef(Collections.singletonList(-1L));
+ }
}
}
}
@@ -320,14 +251,6 @@ public final class SegmentReader extends
ensureOpen();
return fieldInfos;
}
-
- /** Expert: retrieve thread-private {@link
- * StoredFieldsReader}
- * @lucene.internal */
- public StoredFieldsReader getFieldsReader() {
- ensureOpen();
- return core.fieldsReaderLocal.get();
- }
@Override
public void document(int docID, StoredFieldVisitor visitor) throws IOException {
@@ -361,6 +284,28 @@ public final class SegmentReader extends
return core.termVectorsLocal.get();
}
+ /** Expert: retrieve thread-private {@link
+ * StoredFieldsReader}
+ * @lucene.internal */
+ public StoredFieldsReader getFieldsReader() {
+ ensureOpen();
+ return core.fieldsReaderLocal.get();
+ }
+
+ /** Expert: retrieve underlying NormsProducer
+ * @lucene.internal */
+ public NormsProducer getNormsReader() {
+ ensureOpen();
+ return core.normsProducer;
+ }
+
+ /** Expert: retrieve underlying DocValuesProducer
+ * @lucene.internal */
+ public DocValuesProducer getDocValuesReader() {
+ ensureOpen();
+ return docValuesProducer;
+ }
+
@Override
public Fields getTermVectors(int docID) throws IOException {
TermVectorsReader termVectorsReader = getTermVectorsReader();
@@ -462,9 +407,7 @@ public final class SegmentReader extends
if (fi == null) {
return null;
}
- DocValuesProducer dvProducer = dvProducersByField.get(field);
- assert dvProducer != null;
- NumericDocValues dv = dvProducer.getNumeric(fi);
+ NumericDocValues dv = docValuesProducer.getNumeric(fi);
dvFields.put(field, dv);
return dv;
}
@@ -488,9 +431,7 @@ public final class SegmentReader extends
// Field was not indexed with doc values
return null;
}
- DocValuesProducer dvProducer = dvProducersByField.get(field);
- assert dvProducer != null;
- Bits dv = dvProducer.getDocsWithField(fi);
+ Bits dv = docValuesProducer.getDocsWithField(fi);
dvFields.put(field, dv);
return dv;
}
@@ -508,9 +449,7 @@ public final class SegmentReader extends
BinaryDocValues dvs = (BinaryDocValues) dvFields.get(field);
if (dvs == null) {
- DocValuesProducer dvProducer = dvProducersByField.get(field);
- assert dvProducer != null;
- dvs = dvProducer.getBinary(fi);
+ dvs = docValuesProducer.getBinary(fi);
dvFields.put(field, dvs);
}
@@ -530,9 +469,7 @@ public final class SegmentReader extends
if (fi == null) {
return null;
}
- DocValuesProducer dvProducer = dvProducersByField.get(field);
- assert dvProducer != null;
- SortedDocValues dv = dvProducer.getSorted(fi);
+ SortedDocValues dv = docValuesProducer.getSorted(fi);
dvFields.put(field, dv);
return dv;
}
@@ -551,9 +488,7 @@ public final class SegmentReader extends
if (fi == null) {
return null;
}
- DocValuesProducer dvProducer = dvProducersByField.get(field);
- assert dvProducer != null;
- SortedNumericDocValues dv = dvProducer.getSortedNumeric(fi);
+ SortedNumericDocValues dv = docValuesProducer.getSortedNumeric(fi);
dvFields.put(field, dv);
return dv;
}
@@ -572,9 +507,7 @@ public final class SegmentReader extends
if (fi == null) {
return null;
}
- DocValuesProducer dvProducer = dvProducersByField.get(field);
- assert dvProducer != null;
- SortedSetDocValues dv = dvProducer.getSortedSet(fi);
+ SortedSetDocValues dv = docValuesProducer.getSortedSet(fi);
dvFields.put(field, dv);
return dv;
}
@@ -602,13 +535,8 @@ public final class SegmentReader extends
public long ramBytesUsed() {
ensureOpen();
long ramBytesUsed = BASE_RAM_BYTES_USED;
- ramBytesUsed += dvGens.size() * LONG_RAM_BYTES_USED;
- ramBytesUsed += dvProducers.size() * RamUsageEstimator.NUM_BYTES_OBJECT_REF;
- ramBytesUsed += dvProducersByField.size() * 2 * RamUsageEstimator.NUM_BYTES_OBJECT_REF;
- if (dvProducers != null) {
- for (DocValuesProducer producer : dvProducers) {
- ramBytesUsed += producer.ramBytesUsed();
- }
+ if (docValuesProducer != null) {
+ ramBytesUsed += docValuesProducer.ramBytesUsed();
}
if (core != null) {
ramBytesUsed += core.ramBytesUsed();
@@ -640,10 +568,8 @@ public final class SegmentReader extends
}
// docvalues
- if (dvProducers != null) {
- for (DocValuesProducer producer : dvProducers) {
- producer.checkIntegrity();
- }
+ if (docValuesProducer != null) {
+ docValuesProducer.checkIntegrity();
}
}
}
Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCodecs.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCodecs.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCodecs.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/index/TestCodecs.java Thu Aug 21 16:28:16 2014
@@ -717,10 +717,10 @@ public class TestCodecs extends LuceneTe
Document doc = new Document();
doc.add(new StringField("f", "bar", Store.YES));
doc.add(new NumericDocValuesField("n", 18L));
- writer.addDocument(doc);
OLD_FORMAT_IMPERSONATION_IS_ACTIVE = false;
try {
+ writer.addDocument(doc);
writer.close();
fail("should not have succeeded to impersonate an old format!");
} catch (UnsupportedOperationException e) {
Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/store/TestFileSwitchDirectory.java Thu Aug 21 16:28:16 2014
@@ -26,7 +26,7 @@ import java.util.Set;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.codecs.Codec;
-import org.apache.lucene.codecs.lucene40.Lucene40StoredFieldsWriter;
+import org.apache.lucene.codecs.compressing.CompressingStoredFieldsWriter;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
@@ -42,8 +42,8 @@ public class TestFileSwitchDirectory ext
*/
public void testBasic() throws IOException {
Set<String> fileExtensions = new HashSet<>();
- fileExtensions.add(Lucene40StoredFieldsWriter.FIELDS_EXTENSION);
- fileExtensions.add(Lucene40StoredFieldsWriter.FIELDS_INDEX_EXTENSION);
+ fileExtensions.add(CompressingStoredFieldsWriter.FIELDS_EXTENSION);
+ fileExtensions.add(CompressingStoredFieldsWriter.FIELDS_INDEX_EXTENSION);
MockDirectoryWrapper primaryDir = new MockDirectoryWrapper(random(), new RAMDirectory());
primaryDir.setCheckIndexOnClose(false); // only part of an index
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingDocValuesFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingDocValuesFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingDocValuesFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingDocValuesFormat.java Thu Aug 21 16:28:16 2014
@@ -207,54 +207,7 @@ public class AssertingDocValuesFormat ex
}
}
- static class AssertingNormsConsumer extends DocValuesConsumer {
- private final DocValuesConsumer in;
- private final int maxDoc;
-
- AssertingNormsConsumer(DocValuesConsumer in, int maxDoc) {
- this.in = in;
- this.maxDoc = maxDoc;
- }
-
- @Override
- public void addNumericField(FieldInfo field, Iterable<Number> values) throws IOException {
- int count = 0;
- for (Number v : values) {
- assert v != null;
- count++;
- }
- assert count == maxDoc;
- checkIterator(values.iterator(), maxDoc, false);
- in.addNumericField(field, values);
- }
-
- @Override
- public void close() throws IOException {
- in.close();
- }
-
- @Override
- public void addBinaryField(FieldInfo field, Iterable<BytesRef> values) throws IOException {
- throw new IllegalStateException();
- }
-
- @Override
- public void addSortedField(FieldInfo field, Iterable<BytesRef> values, Iterable<Number> docToOrd) throws IOException {
- throw new IllegalStateException();
- }
-
- @Override
- public void addSortedNumericField(FieldInfo field, Iterable<Number> docToValueCount, Iterable<Number> values) throws IOException {
- throw new IllegalStateException();
- }
-
- @Override
- public void addSortedSetField(FieldInfo field, Iterable<BytesRef> values, Iterable<Number> docToOrdCount, Iterable<Number> ords) throws IOException {
- throw new IllegalStateException();
- }
- }
-
- private static <T> void checkIterator(Iterator<T> iterator, long expectedSize, boolean allowNull) {
+ static <T> void checkIterator(Iterator<T> iterator, long expectedSize, boolean allowNull) {
for (long i = 0; i < expectedSize; i++) {
boolean hasNext = iterator.hasNext();
assert hasNext;
@@ -287,8 +240,7 @@ public class AssertingDocValuesFormat ex
@Override
public NumericDocValues getNumeric(FieldInfo field) throws IOException {
- assert field.getDocValuesType() == FieldInfo.DocValuesType.NUMERIC ||
- field.getNormType() == FieldInfo.DocValuesType.NUMERIC;
+ assert field.getDocValuesType() == FieldInfo.DocValuesType.NUMERIC;
NumericDocValues values = in.getNumeric(field);
assert values != null;
return new AssertingAtomicReader.AssertingNumericDocValues(values, maxDoc);
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingNormsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingNormsFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingNormsFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingNormsFormat.java Thu Aug 21 16:28:16 2014
@@ -19,12 +19,13 @@ package org.apache.lucene.codecs.asserti
import java.io.IOException;
-import org.apache.lucene.codecs.DocValuesConsumer;
-import org.apache.lucene.codecs.DocValuesProducer;
+import org.apache.lucene.codecs.NormsConsumer;
import org.apache.lucene.codecs.NormsFormat;
-import org.apache.lucene.codecs.asserting.AssertingDocValuesFormat.AssertingNormsConsumer;
-import org.apache.lucene.codecs.asserting.AssertingDocValuesFormat.AssertingDocValuesProducer;
+import org.apache.lucene.codecs.NormsProducer;
import org.apache.lucene.codecs.lucene49.Lucene49NormsFormat;
+import org.apache.lucene.index.AssertingAtomicReader;
+import org.apache.lucene.index.FieldInfo;
+import org.apache.lucene.index.NumericDocValues;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SegmentWriteState;
@@ -35,17 +36,77 @@ public class AssertingNormsFormat extend
private final NormsFormat in = new Lucene49NormsFormat();
@Override
- public DocValuesConsumer normsConsumer(SegmentWriteState state) throws IOException {
- DocValuesConsumer consumer = in.normsConsumer(state);
+ public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
+ NormsConsumer consumer = in.normsConsumer(state);
assert consumer != null;
return new AssertingNormsConsumer(consumer, state.segmentInfo.getDocCount());
}
@Override
- public DocValuesProducer normsProducer(SegmentReadState state) throws IOException {
+ public NormsProducer normsProducer(SegmentReadState state) throws IOException {
assert state.fieldInfos.hasNorms();
- DocValuesProducer producer = in.normsProducer(state);
+ NormsProducer producer = in.normsProducer(state);
assert producer != null;
- return new AssertingDocValuesProducer(producer, state.segmentInfo.getDocCount());
+ return new AssertingNormsProducer(producer, state.segmentInfo.getDocCount());
+ }
+
+ static class AssertingNormsConsumer extends NormsConsumer {
+ private final NormsConsumer in;
+ private final int maxDoc;
+
+ AssertingNormsConsumer(NormsConsumer in, int maxDoc) {
+ this.in = in;
+ this.maxDoc = maxDoc;
+ }
+
+ @Override
+ public void addNormsField(FieldInfo field, Iterable<Number> values) throws IOException {
+ int count = 0;
+ for (Number v : values) {
+ assert v != null;
+ count++;
+ }
+ assert count == maxDoc;
+ AssertingDocValuesFormat.checkIterator(values.iterator(), maxDoc, false);
+ in.addNormsField(field, values);
+ }
+
+ @Override
+ public void close() throws IOException {
+ in.close();
+ }
+ }
+
+ static class AssertingNormsProducer extends NormsProducer {
+ private final NormsProducer in;
+ private final int maxDoc;
+
+ AssertingNormsProducer(NormsProducer in, int maxDoc) {
+ this.in = in;
+ this.maxDoc = maxDoc;
+ }
+
+ @Override
+ public NumericDocValues getNorms(FieldInfo field) throws IOException {
+ assert field.getNormType() == FieldInfo.DocValuesType.NUMERIC;
+ NumericDocValues values = in.getNorms(field);
+ assert values != null;
+ return new AssertingAtomicReader.AssertingNumericDocValues(values, maxDoc);
+ }
+
+ @Override
+ public void close() throws IOException {
+ in.close();
+ }
+
+ @Override
+ public long ramBytesUsed() {
+ return in.ramBytesUsed();
+ }
+
+ @Override
+ public void checkIntegrity() throws IOException {
+ in.checkIntegrity();
+ }
}
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingTermVectorsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingTermVectorsFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingTermVectorsFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/asserting/AssertingTermVectorsFormat.java Thu Aug 21 16:28:16 2014
@@ -23,7 +23,7 @@ import java.util.Comparator;
import org.apache.lucene.codecs.TermVectorsFormat;
import org.apache.lucene.codecs.TermVectorsReader;
import org.apache.lucene.codecs.TermVectorsWriter;
-import org.apache.lucene.codecs.lucene40.Lucene40TermVectorsFormat;
+import org.apache.lucene.codecs.lucene42.Lucene42TermVectorsFormat;
import org.apache.lucene.index.AssertingAtomicReader;
import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.FieldInfos;
@@ -34,10 +34,10 @@ import org.apache.lucene.store.IOContext
import org.apache.lucene.util.BytesRef;
/**
- * Just like {@link Lucene40TermVectorsFormat} but with additional asserts.
+ * Just like {@link Lucene42TermVectorsFormat} but with additional asserts.
*/
public class AssertingTermVectorsFormat extends TermVectorsFormat {
- private final TermVectorsFormat in = new Lucene40TermVectorsFormat();
+ private final TermVectorsFormat in = new Lucene42TermVectorsFormat();
@Override
public TermVectorsReader vectorsReader(Directory directory, SegmentInfo segmentInfo, FieldInfos fieldInfos, IOContext context) throws IOException {
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cheapbastard/CheapBastardCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cheapbastard/CheapBastardCodec.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cheapbastard/CheapBastardCodec.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cheapbastard/CheapBastardCodec.java Thu Aug 21 16:28:16 2014
@@ -23,11 +23,11 @@ import org.apache.lucene.codecs.NormsFor
import org.apache.lucene.codecs.PostingsFormat;
import org.apache.lucene.codecs.StoredFieldsFormat;
import org.apache.lucene.codecs.TermVectorsFormat;
-import org.apache.lucene.codecs.lucene40.Lucene40StoredFieldsFormat;
-import org.apache.lucene.codecs.lucene40.Lucene40TermVectorsFormat;
import org.apache.lucene.codecs.lucene41.Lucene41PostingsFormat;
+import org.apache.lucene.codecs.lucene41.Lucene41StoredFieldsFormat;
import org.apache.lucene.codecs.lucene410.Lucene410Codec;
import org.apache.lucene.codecs.lucene410.Lucene410DocValuesFormat;
+import org.apache.lucene.codecs.lucene42.Lucene42TermVectorsFormat;
import org.apache.lucene.codecs.lucene49.Lucene49NormsFormat;
/** Codec that tries to use as little ram as possible because he spent all his money on beer */
@@ -37,9 +37,8 @@ public class CheapBastardCodec extends F
// TODO: would be better to have no terms index at all and bsearch a terms dict
private final PostingsFormat postings = new Lucene41PostingsFormat(100, 200);
- // uncompressing versions, waste lots of disk but no ram
- private final StoredFieldsFormat storedFields = new Lucene40StoredFieldsFormat();
- private final TermVectorsFormat termVectors = new Lucene40TermVectorsFormat();
+ private final StoredFieldsFormat storedFields = new Lucene41StoredFieldsFormat();
+ private final TermVectorsFormat termVectors = new Lucene42TermVectorsFormat();
private final DocValuesFormat docValues = new Lucene410DocValuesFormat();
private final NormsFormat norms = new Lucene49NormsFormat();
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyNormsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyNormsFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyNormsFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyNormsFormat.java Thu Aug 21 16:28:16 2014
@@ -20,9 +20,10 @@ package org.apache.lucene.codecs.cranky;
import java.io.IOException;
import java.util.Random;
-import org.apache.lucene.codecs.DocValuesConsumer;
-import org.apache.lucene.codecs.DocValuesProducer;
+import org.apache.lucene.codecs.NormsConsumer;
import org.apache.lucene.codecs.NormsFormat;
+import org.apache.lucene.codecs.NormsProducer;
+import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.SegmentReadState;
import org.apache.lucene.index.SegmentWriteState;
@@ -36,15 +37,41 @@ class CrankyNormsFormat extends NormsFor
}
@Override
- public DocValuesConsumer normsConsumer(SegmentWriteState state) throws IOException {
+ public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
if (random.nextInt(100) == 0) {
- throw new IOException("Fake IOException from NormsFormat.fieldsConsumer()");
+ throw new IOException("Fake IOException from NormsFormat.normsConsumer()");
}
- return new CrankyDocValuesFormat.CrankyDocValuesConsumer(delegate.normsConsumer(state), random);
+ return new CrankyNormsConsumer(delegate.normsConsumer(state), random);
}
@Override
- public DocValuesProducer normsProducer(SegmentReadState state) throws IOException {
+ public NormsProducer normsProducer(SegmentReadState state) throws IOException {
return delegate.normsProducer(state);
}
+
+ static class CrankyNormsConsumer extends NormsConsumer {
+ final NormsConsumer delegate;
+ final Random random;
+
+ CrankyNormsConsumer(NormsConsumer delegate, Random random) {
+ this.delegate = delegate;
+ this.random = random;
+ }
+
+ @Override
+ public void close() throws IOException {
+ delegate.close();
+ if (random.nextInt(100) == 0) {
+ throw new IOException("Fake IOException from NormsConsumer.close()");
+ }
+ }
+
+ @Override
+ public void addNormsField(FieldInfo field, Iterable<Number> values) throws IOException {
+ if (random.nextInt(100) == 0) {
+ throw new IOException("Fake IOException from NormsConsumer.addNormsField()");
+ }
+ delegate.addNormsField(field, values);
+ }
+ }
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyPostingsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyPostingsFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyPostingsFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/cranky/CrankyPostingsFormat.java Thu Aug 21 16:28:16 2014
@@ -81,11 +81,11 @@ class CrankyPostingsFormat extends Posti
}
@Override
- public void merge(MergeState mergeState, Fields fields) throws IOException {
+ public void merge(MergeState mergeState) throws IOException {
if (random.nextInt(100) == 0) {
throw new IOException("Fake IOException from FieldsConsumer.merge()");
}
- super.merge(mergeState, fields);
+ super.merge(mergeState);
}
@Override
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsConsumer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsConsumer.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsConsumer.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsConsumer.java Thu Aug 21 16:28:16 2014
@@ -19,20 +19,19 @@ package org.apache.lucene.codecs.lucene3
import java.io.IOException;
-import org.apache.lucene.codecs.DocValuesConsumer;
+import org.apache.lucene.codecs.NormsConsumer;
import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.IOContext;
import org.apache.lucene.store.IndexOutput;
-import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.IOUtils;
/**
* Writes and Merges Lucene 3.x norms format
* @lucene.experimental
*/
-class PreFlexRWNormsConsumer extends DocValuesConsumer {
+class PreFlexRWNormsConsumer extends NormsConsumer {
/** norms header placeholder */
private static final byte[] NORMS_HEADER = new byte[]{'N','R','M',-1};
@@ -65,7 +64,7 @@ class PreFlexRWNormsConsumer extends Doc
}
@Override
- public void addNumericField(FieldInfo field, Iterable<Number> values) throws IOException {
+ public void addNormsField(FieldInfo field, Iterable<Number> values) throws IOException {
assert field.number > lastFieldNumber : "writing norms fields out of order" + lastFieldNumber + " -> " + field.number;
for (Number n : values) {
if (n.longValue() < Byte.MIN_VALUE || n.longValue() > Byte.MAX_VALUE) {
@@ -80,24 +79,4 @@ class PreFlexRWNormsConsumer extends Doc
public void close() throws IOException {
IOUtils.close(out);
}
-
- @Override
- public void addBinaryField(FieldInfo field, Iterable<BytesRef> values) throws IOException {
- throw new AssertionError();
- }
-
- @Override
- public void addSortedField(FieldInfo field, Iterable<BytesRef> values, Iterable<Number> docToOrd) throws IOException {
- throw new AssertionError();
- }
-
- @Override
- public void addSortedSetField(FieldInfo field, Iterable<BytesRef> values, Iterable<Number> docToOrdCount, Iterable<Number> ords) throws IOException {
- throw new AssertionError();
- }
-
- @Override
- public void addSortedNumericField(FieldInfo field, Iterable<Number> docToValueCount, Iterable<Number> values) throws IOException {
- throw new AssertionError();
- }
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene3x/PreFlexRWNormsFormat.java Thu Aug 21 16:28:16 2014
@@ -20,6 +20,7 @@ package org.apache.lucene.codecs.lucene3
import java.io.IOException;
import org.apache.lucene.codecs.DocValuesConsumer;
+import org.apache.lucene.codecs.NormsConsumer;
import org.apache.lucene.index.SegmentWriteState;
/**
@@ -29,7 +30,7 @@ import org.apache.lucene.index.SegmentWr
class PreFlexRWNormsFormat extends Lucene3xNormsFormat {
@Override
- public DocValuesConsumer normsConsumer(SegmentWriteState state) throws IOException {
+ public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
return new PreFlexRWNormsConsumer(state.directory, state.segmentInfo.name, state.context);
}
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWCodec.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWCodec.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWCodec.java Thu Aug 21 16:28:16 2014
@@ -6,7 +6,8 @@ import org.apache.lucene.codecs.DocValue
import org.apache.lucene.codecs.FieldInfosFormat;
import org.apache.lucene.codecs.FieldInfosWriter;
import org.apache.lucene.codecs.NormsFormat;
-import org.apache.lucene.codecs.SegmentInfoFormat;
+import org.apache.lucene.codecs.StoredFieldsFormat;
+import org.apache.lucene.codecs.TermVectorsFormat;
import org.apache.lucene.util.LuceneTestCase;
/*
@@ -43,6 +44,8 @@ public final class Lucene40RWCodec exten
private final DocValuesFormat docValues = new Lucene40RWDocValuesFormat();
private final NormsFormat norms = new Lucene40RWNormsFormat();
+ private final StoredFieldsFormat stored = new Lucene40RWStoredFieldsFormat();
+ private final TermVectorsFormat vectors = new Lucene40RWTermVectorsFormat();
@Override
public FieldInfosFormat fieldInfosFormat() {
@@ -58,5 +61,14 @@ public final class Lucene40RWCodec exten
public NormsFormat normsFormat() {
return norms;
}
-
+
+ @Override
+ public StoredFieldsFormat storedFieldsFormat() {
+ return stored;
+ }
+
+ @Override
+ public TermVectorsFormat termVectorsFormat() {
+ return vectors;
+ }
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWNormsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWNormsFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWNormsFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40RWNormsFormat.java Thu Aug 21 16:28:16 2014
@@ -19,7 +19,8 @@ package org.apache.lucene.codecs.lucene4
import java.io.IOException;
-import org.apache.lucene.codecs.DocValuesConsumer;
+import org.apache.lucene.codecs.NormsConsumer;
+import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.SegmentWriteState;
import org.apache.lucene.util.LuceneTestCase;
@@ -29,14 +30,25 @@ import org.apache.lucene.util.LuceneTest
public class Lucene40RWNormsFormat extends Lucene40NormsFormat {
@Override
- public DocValuesConsumer normsConsumer(SegmentWriteState state) throws IOException {
+ public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
if (!LuceneTestCase.OLD_FORMAT_IMPERSONATION_IS_ACTIVE) {
return super.normsConsumer(state);
} else {
String filename = IndexFileNames.segmentFileName(state.segmentInfo.name,
"nrm",
IndexFileNames.COMPOUND_FILE_EXTENSION);
- return new Lucene40DocValuesWriter(state, filename, Lucene40FieldInfosReader.LEGACY_NORM_TYPE_KEY);
+ final Lucene40DocValuesWriter impl = new Lucene40DocValuesWriter(state, filename, Lucene40FieldInfosReader.LEGACY_NORM_TYPE_KEY);
+ return new NormsConsumer() {
+ @Override
+ public void addNormsField(FieldInfo field, Iterable<Number> values) throws IOException {
+ impl.addNumericField(field, values);
+ }
+
+ @Override
+ public void close() throws IOException {
+ impl.close();
+ }
+ };
}
}
}
Copied: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40StoredFieldsWriter.java (from r1619392, lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40StoredFieldsWriter.java)
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40StoredFieldsWriter.java?p2=lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40StoredFieldsWriter.java&p1=lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40StoredFieldsWriter.java&r1=1619392&r2=1619477&rev=1619477&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40StoredFieldsWriter.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40StoredFieldsWriter.java Thu Aug 21 16:28:16 2014
@@ -23,7 +23,7 @@ import org.apache.lucene.codecs.StoredFi
import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.IndexFileNames;
-import org.apache.lucene.index.StorableField;
+import org.apache.lucene.index.IndexableField;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.IOContext;
import org.apache.lucene.store.IndexOutput;
@@ -112,7 +112,7 @@ public final class Lucene40StoredFieldsW
}
@Override
- public void writeField(FieldInfo info, StorableField field) throws IOException {
+ public void writeField(FieldInfo info, IndexableField field) throws IOException {
numStoredFields++;
fieldsBuffer.writeVInt(info.number);
Copied: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40TermVectorsWriter.java (from r1619392, lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40TermVectorsWriter.java)
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40TermVectorsWriter.java?p2=lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40TermVectorsWriter.java&p1=lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40TermVectorsWriter.java&r1=1619392&r2=1619477&rev=1619477&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40TermVectorsWriter.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene40/Lucene40TermVectorsWriter.java Thu Aug 21 16:28:16 2014
@@ -18,6 +18,7 @@ package org.apache.lucene.codecs.lucene4
*/
import java.io.IOException;
+import java.util.Comparator;
import org.apache.lucene.codecs.CodecUtil;
import org.apache.lucene.codecs.TermVectorsWriter;
@@ -300,4 +301,9 @@ public final class Lucene40TermVectorsWr
IOUtils.close(tvx, tvd, tvf);
tvx = tvd = tvf = null;
}
+
+ @Override
+ public Comparator<BytesRef> getComparator() throws IOException {
+ return BytesRef.getUTF8SortedAsUnicodeComparator();
+ }
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene41/Lucene41RWCodec.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene41/Lucene41RWCodec.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene41/Lucene41RWCodec.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene41/Lucene41RWCodec.java Thu Aug 21 16:28:16 2014
@@ -7,10 +7,12 @@ import org.apache.lucene.codecs.FieldInf
import org.apache.lucene.codecs.FieldInfosWriter;
import org.apache.lucene.codecs.NormsFormat;
import org.apache.lucene.codecs.StoredFieldsFormat;
+import org.apache.lucene.codecs.TermVectorsFormat;
import org.apache.lucene.codecs.lucene40.Lucene40FieldInfosFormat;
import org.apache.lucene.codecs.lucene40.Lucene40FieldInfosWriter;
import org.apache.lucene.codecs.lucene40.Lucene40RWDocValuesFormat;
import org.apache.lucene.codecs.lucene40.Lucene40RWNormsFormat;
+import org.apache.lucene.codecs.lucene40.Lucene40RWTermVectorsFormat;
import org.apache.lucene.util.LuceneTestCase;
/*
@@ -49,6 +51,7 @@ public class Lucene41RWCodec extends Luc
private final DocValuesFormat docValues = new Lucene40RWDocValuesFormat();
private final NormsFormat norms = new Lucene40RWNormsFormat();
+ private final TermVectorsFormat vectors = new Lucene40RWTermVectorsFormat();
@Override
public FieldInfosFormat fieldInfosFormat() {
@@ -70,4 +73,8 @@ public class Lucene41RWCodec extends Luc
return norms;
}
+ @Override
+ public TermVectorsFormat termVectorsFormat() {
+ return vectors;
+ }
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42NormsConsumer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42NormsConsumer.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42NormsConsumer.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42NormsConsumer.java Thu Aug 21 16:28:16 2014
@@ -22,12 +22,11 @@ import java.util.HashMap;
import java.util.HashSet;
import org.apache.lucene.codecs.CodecUtil;
-import org.apache.lucene.codecs.DocValuesConsumer;
+import org.apache.lucene.codecs.NormsConsumer;
import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.IndexFileNames;
import org.apache.lucene.index.SegmentWriteState;
import org.apache.lucene.store.IndexOutput;
-import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.IOUtils;
import org.apache.lucene.util.MathUtil;
import org.apache.lucene.util.packed.BlockPackedWriter;
@@ -39,7 +38,7 @@ import static org.apache.lucene.codecs.l
/**
* Writer for {@link Lucene42NormsFormat}
*/
-class Lucene42NormsConsumer extends DocValuesConsumer {
+class Lucene42NormsConsumer extends NormsConsumer {
static final byte NUMBER = 0;
static final int BLOCK_SIZE = 4096;
@@ -73,7 +72,7 @@ class Lucene42NormsConsumer extends DocV
}
@Override
- public void addNumericField(FieldInfo field, Iterable<Number> values) throws IOException {
+ public void addNormsField(FieldInfo field, Iterable<Number> values) throws IOException {
meta.writeVInt(field.number);
meta.writeByte(NUMBER);
meta.writeLong(data.getFilePointer());
@@ -194,24 +193,4 @@ class Lucene42NormsConsumer extends DocV
meta = data = null;
}
}
-
- @Override
- public void addBinaryField(FieldInfo field, final Iterable<BytesRef> values) throws IOException {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public void addSortedField(FieldInfo field, Iterable<BytesRef> values, Iterable<Number> docToOrd) throws IOException {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public void addSortedNumericField(FieldInfo field, Iterable<Number> docToValueCount, Iterable<Number> values) throws IOException {
- throw new UnsupportedOperationException();
- }
-
- @Override
- public void addSortedSetField(FieldInfo field, Iterable<BytesRef> values, final Iterable<Number> docToOrdCount, final Iterable<Number> ords) throws IOException {
- throw new UnsupportedOperationException();
- }
}
Modified: lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42RWNormsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42RWNormsFormat.java?rev=1619477&r1=1619476&r2=1619477&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42RWNormsFormat.java (original)
+++ lucene/dev/branches/branch_4x/lucene/test-framework/src/java/org/apache/lucene/codecs/lucene42/Lucene42RWNormsFormat.java Thu Aug 21 16:28:16 2014
@@ -19,7 +19,7 @@ package org.apache.lucene.codecs.lucene4
import java.io.IOException;
-import org.apache.lucene.codecs.DocValuesConsumer;
+import org.apache.lucene.codecs.NormsConsumer;
import org.apache.lucene.index.SegmentWriteState;
import org.apache.lucene.util.LuceneTestCase;
@@ -29,7 +29,7 @@ import org.apache.lucene.util.LuceneTest
public class Lucene42RWNormsFormat extends Lucene42NormsFormat {
@Override
- public DocValuesConsumer normsConsumer(SegmentWriteState state) throws IOException {
+ public NormsConsumer normsConsumer(SegmentWriteState state) throws IOException {
if (LuceneTestCase.OLD_FORMAT_IMPERSONATION_IS_ACTIVE) {
return new Lucene42NormsConsumer(state, DATA_CODEC, DATA_EXTENSION, METADATA_CODEC, METADATA_EXTENSION, acceptableOverheadRatio);
} else {