You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2011/11/10 17:20:51 UTC
svn commit: r1200407 - in
/lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index:
SegmentCoreReaders.java SegmentMerger.java
codecs/DefaultTermVectorsFormat.java codecs/TermVectorsFormat.java
Author: rmuir
Date: Thu Nov 10 16:20:51 2011
New Revision: 1200407
URL: http://svn.apache.org/viewvc?rev=1200407&view=rev
Log:
LUCENE-2621: SegmentReader and SegmentMerger ask codec for vectors reader/writer
Modified:
lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentCoreReaders.java
lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentMerger.java
lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/DefaultTermVectorsFormat.java
lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/TermVectorsFormat.java
Modified: lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentCoreReaders.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentCoreReaders.java?rev=1200407&r1=1200406&r2=1200407&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentCoreReaders.java (original)
+++ lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentCoreReaders.java Thu Nov 10 16:20:51 2011
@@ -25,7 +25,7 @@ import org.apache.lucene.index.codecs.Po
import org.apache.lucene.index.codecs.FieldsProducer;
import org.apache.lucene.index.codecs.StoredFieldsReader;
import org.apache.lucene.index.codecs.PerDocValues;
-import org.apache.lucene.index.codecs.DefaultTermVectorsReader;
+import org.apache.lucene.index.codecs.TermVectorsReader;
import org.apache.lucene.store.CompoundFileDirectory;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.IOContext;
@@ -57,7 +57,7 @@ final class SegmentCoreReaders {
private final SegmentReader owner;
StoredFieldsReader fieldsReaderOrig;
- DefaultTermVectorsReader termVectorsReaderOrig;
+ TermVectorsReader termVectorsReaderOrig;
CompoundFileDirectory cfsReader;
CompoundFileDirectory storeCFSReader;
@@ -107,7 +107,7 @@ final class SegmentCoreReaders {
this.owner = owner;
}
- synchronized DefaultTermVectorsReader getTermVectorsReaderOrig() {
+ synchronized TermVectorsReader getTermVectorsReaderOrig() {
return termVectorsReaderOrig;
}
@@ -171,7 +171,7 @@ final class SegmentCoreReaders {
if (si.getHasVectors()) { // open term vector files only as needed
// nocommit
- termVectorsReaderOrig = new DefaultTermVectorsReader(storeDir, storesSegment, fieldInfos, context, si.getDocStoreOffset(), si.docCount);
+ termVectorsReaderOrig = si.getCodec().termVectorsFormat().vectorsReader(storeDir, storesSegment, fieldInfos, context, si.getDocStoreOffset(), si.docCount);
}
}
}
Modified: lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentMerger.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentMerger.java?rev=1200407&r1=1200406&r2=1200407&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentMerger.java (original)
+++ lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/SegmentMerger.java Thu Nov 10 16:20:51 2011
@@ -27,7 +27,6 @@ import org.apache.lucene.index.FieldInfo
import org.apache.lucene.index.IndexReader.FieldOption;
import org.apache.lucene.index.MergePolicy.MergeAbortedException;
import org.apache.lucene.index.codecs.Codec;
-import org.apache.lucene.index.codecs.DefaultTermVectorsWriter;
import org.apache.lucene.index.codecs.FieldsConsumer;
import org.apache.lucene.index.codecs.StoredFieldsWriter;
import org.apache.lucene.index.codecs.PerDocConsumer;
@@ -233,7 +232,7 @@ final class SegmentMerger {
*/
// nocommit: move to codec
private final void mergeVectors(SegmentWriteState segmentWriteState) throws IOException {
- TermVectorsWriter termVectorsWriter = new DefaultTermVectorsWriter(directory, segment, mergeState.fieldInfos, context);
+ TermVectorsWriter termVectorsWriter = codec.termVectorsFormat().vectorsWriter(directory, segment, mergeState.fieldInfos, context);
// Used for bulk-reading raw bytes for term vectors
int rawDocLengths[] = new int[MAX_RAW_MERGE_DOCS];
int rawDocLengths2[] = new int[MAX_RAW_MERGE_DOCS];
Modified: lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/DefaultTermVectorsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/DefaultTermVectorsFormat.java?rev=1200407&r1=1200406&r2=1200407&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/DefaultTermVectorsFormat.java (original)
+++ lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/DefaultTermVectorsFormat.java Thu Nov 10 16:20:51 2011
@@ -20,12 +20,24 @@ package org.apache.lucene.index.codecs;
import java.io.IOException;
import java.util.Set;
+import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.SegmentInfo;
import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.IOContext;
public class DefaultTermVectorsFormat extends TermVectorsFormat {
@Override
+ public TermVectorsReader vectorsReader(Directory directory, String segment, FieldInfos fieldInfos, IOContext context, int docStoreOffset, int size) throws IOException {
+ return new DefaultTermVectorsReader(directory, segment, fieldInfos, context, docStoreOffset, size);
+ }
+
+ @Override
+ public TermVectorsWriter vectorsWriter(Directory directory, String segment, FieldInfos fieldInfos, IOContext context) throws IOException {
+ return new DefaultTermVectorsWriter(directory, segment, fieldInfos, context);
+ }
+
+ @Override
public void files(Directory dir, SegmentInfo info, Set<String> files) throws IOException {
// nocommit impl
}
Modified: lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/TermVectorsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/TermVectorsFormat.java?rev=1200407&r1=1200406&r2=1200407&view=diff
==============================================================================
--- lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/TermVectorsFormat.java (original)
+++ lucene/dev/branches/lucene2621/lucene/src/java/org/apache/lucene/index/codecs/TermVectorsFormat.java Thu Nov 10 16:20:51 2011
@@ -20,12 +20,17 @@ package org.apache.lucene.index.codecs;
import java.io.IOException;
import java.util.Set;
+import org.apache.lucene.index.FieldInfos;
import org.apache.lucene.index.SegmentInfo;
import org.apache.lucene.store.Directory;
+import org.apache.lucene.store.IOContext;
/**
* Controls the format of term vectors
*/
public abstract class TermVectorsFormat {
+ // nocommit: privatize size-check and docstore crap
+ public abstract TermVectorsReader vectorsReader(Directory directory, String segment, FieldInfos fieldInfos, IOContext context, int docStoreOffset, int size) throws IOException;
+ public abstract TermVectorsWriter vectorsWriter(Directory directory, String segment, FieldInfos fieldInfos, IOContext context) throws IOException;
public abstract void files(Directory dir, SegmentInfo info, Set<String> files) throws IOException;
}