You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ro...@apache.org on 2012/11/23 10:56:02 UTC
svn commit: r1412803 - in /lucene/dev/trunk/solr: CHANGES.txt
core/src/java/org/apache/solr/schema/FieldProperties.java
core/src/java/org/apache/solr/schema/FieldType.java
core/src/java/org/apache/solr/schema/SchemaField.java
Author: romseygeek
Date: Fri Nov 23 09:56:00 2012
New Revision: 1412803
URL: http://svn.apache.org/viewvc?rev=1412803&view=rev
Log:
SOLR-4101: Add storeOffsetsWithPositions flag to SchemaField
Modified:
lucene/dev/trunk/solr/CHANGES.txt
lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldProperties.java
lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldType.java
lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SchemaField.java
Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1412803&r1=1412802&r2=1412803&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Fri Nov 23 09:56:00 2012
@@ -84,6 +84,10 @@ New Features
* SOLR-3970: SystemInfoHandler now exposes more details about the
JRE/VM/Java version in use. (hossman)
+* SOLR-4101: Add support for storing term offsets in the index via a
+ 'storeOffsetsWithPositions' flag on field definitions in the schema.
+ (Tom Winch, Alan Woodward)
+
Optimizations
----------------------
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldProperties.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldProperties.java?rev=1412803&r1=1412802&r2=1412803&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldProperties.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldProperties.java Fri Nov 23 09:56:00 2012
@@ -49,12 +49,15 @@ public abstract class FieldProperties {
protected final static int REQUIRED = 0x00001000;
protected final static int OMIT_POSITIONS = 0x00002000;
+ protected final static int STORE_OFFSETS = 0x00004000;
+
static final String[] propertyNames = {
"indexed", "tokenized", "stored",
"binary", "omitNorms", "omitTermFreqAndPositions",
"termVectors", "termPositions", "termOffsets",
"multiValued",
- "sortMissingFirst","sortMissingLast","required", "omitPositions"
+ "sortMissingFirst","sortMissingLast","required", "omitPositions",
+ "storeOffsetsWithPositions"
};
static final Map<String,Integer> propertyMap = new HashMap<String,Integer>();
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldType.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldType.java?rev=1412803&r1=1412802&r2=1412803&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldType.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/FieldType.java Fri Nov 23 09:56:00 2012
@@ -294,14 +294,18 @@ public abstract class FieldType extends
StorableField f = createField( field, value, boost);
return f==null ? new StorableField[]{} : new StorableField[]{f};
}
- protected IndexOptions getIndexOptions(SchemaField field,
- String internalVal) {
+
+ protected IndexOptions getIndexOptions(SchemaField field, String internalVal) {
+
IndexOptions options = IndexOptions.DOCS_AND_FREQS_AND_POSITIONS;
if (field.omitTermFreqAndPositions()) {
options = IndexOptions.DOCS_ONLY;
} else if (field.omitPositions()) {
options = IndexOptions.DOCS_AND_FREQS;
+ } else if (field.storeOffsetsWithPositions()) {
+ options = IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS;
}
+
return options;
}
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SchemaField.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SchemaField.java?rev=1412803&r1=1412802&r2=1412803&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SchemaField.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SchemaField.java Fri Nov 23 09:56:00 2012
@@ -90,6 +90,7 @@ public final class SchemaField extends F
public boolean omitTermFreqAndPositions() { return (properties & OMIT_TF_POSITIONS)!=0; }
public boolean omitPositions() { return (properties & OMIT_POSITIONS)!=0; }
+ public boolean storeOffsetsWithPositions() { return (properties & STORE_OFFSETS)!=0; }
public boolean multiValued() { return (properties & MULTIVALUED)!=0; }
public boolean sortMissingFirst() { return (properties & SORT_MISSING_FIRST)!=0; }