[mb-commits] r13628 - in search_server/trunk/index/src: main/java/org/musicbrainz/search main/java/org/musicbrainz/search/index test/java/org/musicbrainz/search/analysis

[email protected] Tue, 26 Feb 2013 16:31:47 +0000
Newsgroups gmane.comp.audio.musicbrainz.cvs
Message-ID <E1UANRT-0004JV-GY@wiley>
Author: ijabz
Date: 2013-02-26 16:31:18 +0000 (Tue, 26 Feb 2013)
New Revision: 13628

Added:
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/MusicBrainzFieldTypes.java
Modified:
   search_server/trunk/index/src/main/java/org/musicbrainz/search/MbDocument.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/AnnotationIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/CDStubIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/FreeDBIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/MetaIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/RecordingIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseGroupIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/TagIndexField.java
   search_server/trunk/index/src/main/java/org/musicbrainz/search/index/WorkIndexField.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AccentFilterTest.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AmpersandTest.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/ArtistBoostTest.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1006Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1446Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue24Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue3309Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4775Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4827Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5523Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5538Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch159Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch163Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch220Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch22Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch33Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch72Test.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/LabelBoostTest.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Lucene41CharFilterTest.java
   search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/StopWordsTest.java
Log:
#SEARCH-243:Moved to using FieldTypes thereby removing most deprecations

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/MbDocument.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/MbDocument.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/MbDocument.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -66,7 +66,7 @@
      * @param value
      */
     public void addField(IndexField field, String value) {
-        doc.add(new Field(field.getName(), value, field.getStore(), field.getIndex()));
+        doc.add(new Field(field.getName(), value, field.getFieldType()));
     }
 
     /**
@@ -132,10 +132,10 @@
      */
     public void addFieldOrUnknown(IndexField field, String value) {
         if (value != null && !value.isEmpty()) {
-                doc.add(new Field(field.getName(), value, field.getStore(), field.getIndex()));
+                doc.add(new Field(field.getName(), value, field.getFieldType()));
         }
         else {
-           doc.add(new Field(field.getName(), Index.UNKNOWN, field.getStore(), field.getIndex()));
+           doc.add(new Field(field.getName(), Index.UNKNOWN, field.getFieldType()));
         }
 
     }
@@ -151,10 +151,10 @@
      */
     public void addFieldOrNoValue(IndexField field, String value) {
         if (value != null && !value.isEmpty()) {
-                doc.add(new Field(field.getName(), value, field.getStore(), field.getIndex()));
+                doc.add(new Field(field.getName(), value, field.getFieldType()));
         }
         else {
-           doc.add(new Field(field.getName(), Index.NO_VALUE, field.getStore(), field.getIndex()));
+           doc.add(new Field(field.getName(), Index.NO_VALUE, field.getFieldType()));
         }
     }
 

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/AnnotationIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/AnnotationIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/AnnotationIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -22,51 +22,46 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 
 /**
  * Fields created in Lucene Search Index
  */
 public enum AnnotationIndexField implements IndexField {
 
-	ID		("_id",		Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-	ENTITY	("entity",	Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-	NAME	("name",	Field.Store.YES,	Field.Index.ANALYZED),
-	TYPE	("type",	Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-	TEXT	("text",	Field.Store.YES,	Field.Index.ANALYZED);
+	ID		("_id",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+	ENTITY	("entity",	MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+	NAME	("name",	MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+	TYPE	("type",	MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+	TEXT	("text",	MusicBrainzFieldTypes.TEXT_STORED_ANALYZED);
 
-	private String name;
-	private Field.Store store;
-	private Field.Index index;
+    private FieldType fieldType;
+
+    private String name;
     private Analyzer analyzer;
 
-	private AnnotationIndexField(String name, Field.Store store, Field.Index index) {
-		this.name = name;
-		this.store = store;
-		this.index = index;
-	}
+    private AnnotationIndexField(String name, FieldType fieldType) {
+        this.name = name;
+        this.fieldType=fieldType;
+    }
 
-    private AnnotationIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private AnnotationIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
-
-	public String getName() {
+    public String getName() {
 		return name;
 	}
 
-	public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
-
     public Analyzer getAnalyzer()
     {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
+
 }

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -31,6 +31,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.CaseInsensitiveKeywordAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzKeepAccentsAnalyzer;
@@ -41,38 +42,36 @@
  */
 public enum ArtistIndexField implements IndexField {
 
-	ID			    ("_id",			Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ALIAS		    ("alias",		Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_ID	    ("arid",		Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ARTIST		    ("artist",		Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzAnalyzer()),
-    ARTIST_ACCENT   ("artistaccent",Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
-    BEGIN		    ("begin",		Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    COMMENT		    ("comment",		Field.Store.YES,	Field.Index.ANALYZED),
-    COUNTRY         ("country",     Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    END			    ("end",			Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ENDED           ("ended",       Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    GENDER          ("gender",      Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    IPI             ("ipi",         Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    SORTNAME	    ("sortname",	Field.Store.YES,	Field.Index.ANALYZED),
-    TAG		        ("tag",		    Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    TAGCOUNT        ("tagcount",	Field.Store.YES,	Field.Index.NO),
-    TYPE		    ("type",		Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+	ID			    ("_id",			MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ALIAS		    ("alias",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_ID	    ("arid",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ARTIST		    ("artist",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzAnalyzer()),
+    ARTIST_ACCENT   ("artistaccent",MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
+    BEGIN		    ("begin",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    COMMENT		    ("comment",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    COUNTRY         ("country",     MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    END			    ("end",			MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ENDED           ("ended",       MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    GENDER          ("gender",      MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    IPI             ("ipi",         MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    SORTNAME	    ("sortname",	MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    TAG		        ("tag",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    TAGCOUNT        ("tagcount",	MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    TYPE		    ("type",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
     ;
 
 
     private String name;
-	private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
+    private FieldType fieldType;
 
-    private ArtistIndexField(String name, Field.Store store, Field.Index index) {
+    private ArtistIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
 
-    private ArtistIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private ArtistIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
@@ -81,18 +80,13 @@
         return name;
     }
 
-    public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/CDStubIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/CDStubIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/CDStubIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -22,6 +22,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.StripLeadingZeroAnalyzer;
 import org.musicbrainz.search.analysis.TitleAnalyzer;
 
@@ -30,29 +31,28 @@
  */
 public enum CDStubIndexField implements IndexField {
 
-	ID              ("_id",         Field.Store.YES,    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ARTIST          ("artist",      Field.Store.YES,    Field.Index.ANALYZED),
-    TITLE           ("title",       Field.Store.YES,    Field.Index.ANALYZED, new TitleAnalyzer()),
-    BARCODE         ("barcode",     Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new StripLeadingZeroAnalyzer()),
-    COMMENT         ("comment",     Field.Store.YES,    Field.Index.ANALYZED),
-    NUM_TRACKS      ("tracks",      Field.Store.YES,    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    DISCID          ("discid",      Field.Store.YES,    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ADDED           ("added",       Field.Store.YES,    Field.Index.NOT_ANALYZED_NO_NORMS),    
+	ID              ("_id",         MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ARTIST          ("artist",      MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    TITLE           ("title",       MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new TitleAnalyzer()),
+    BARCODE         ("barcode",     MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new StripLeadingZeroAnalyzer()),
+    COMMENT         ("comment",     MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    NUM_TRACKS      ("tracks",      MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    DISCID          ("discid",      MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ADDED           ("added",       MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS),
     ;
 
     private String name;
-    private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
 
-    private CDStubIndexField(String name, Field.Store store, Field.Index index) {
+    private FieldType fieldType;
+
+    private CDStubIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
-    
-    private CDStubIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+
+    private CDStubIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
@@ -60,18 +60,13 @@
         return name;
     }
 
-    public Field.Store getStore() {
-        return store;
-    }
-
-    public Field.Index getIndex() {
-        return index;
-    }
-
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/FreeDBIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/FreeDBIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/FreeDBIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -31,6 +31,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.TitleAnalyzer;
 
 /**
@@ -38,26 +39,25 @@
  */
 public enum FreeDBIndexField implements IndexField {
 
-	ARTIST		("artist",		Field.Store.YES,	Field.Index.ANALYZED),
-	TITLE		("title",		Field.Store.YES,	Field.Index.ANALYZED, new TitleAnalyzer()),
-	DISCID		("discid",		Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-	CATEGORY	("cat",			Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-	YEAR		("year",		Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS),
-	TRACKS		("tracks",		Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS),;
+	ARTIST		("artist",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+	TITLE		("title",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new TitleAnalyzer()),
+	DISCID		("discid",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+	CATEGORY	("cat",			MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+	YEAR		("year",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS),
+	TRACKS		("tracks",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS),;
 
 	private String name;
-	private Field.Store store;
-	private Field.Index index;
     private Analyzer analyzer;
 
-	private FreeDBIndexField(String name, Field.Store store, Field.Index index) {
-		this.name = name;
-		this.store = store;
-		this.index = index;
-	}
+    private FieldType fieldType;
 
-    private FreeDBIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private FreeDBIndexField(String name, FieldType fieldType) {
+        this.name = name;
+        this.fieldType=fieldType;
+    }
+
+    private FreeDBIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
@@ -65,18 +65,14 @@
 		return name;
 	}
 
-	public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 
+
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/IndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -2,6 +2,7 @@
 
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 
 /**
  * Fields created in Lucene Search Index
@@ -9,8 +10,8 @@
 public interface IndexField {
 
     public String getName();
-    public Field.Store getStore();
-	public Field.Index getIndex();
     public Analyzer getAnalyzer();
+    public FieldType getFieldType();
 
+
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -31,6 +31,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.CaseInsensitiveKeywordAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzKeepAccentsAnalyzer;
@@ -41,37 +42,35 @@
  */
 public enum LabelIndexField implements IndexField {
 
-	ID			("_id",			Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ALIAS		("alias",		Field.Store.YES, 	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    BEGIN		("begin",		Field.Store.YES, 	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    COMMENT		("comment",		Field.Store.YES, 	Field.Index.ANALYZED),
-    CODE		("code",		Field.Store.YES, 	Field.Index.ANALYZED, new KeywordAnalyzer()),
-    COUNTRY		("country",		Field.Store.YES, 	Field.Index.ANALYZED),
-    END			("end",			Field.Store.YES, 	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ENDED       ("ended",       Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    IPI         ("ipi",         Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    LABEL		("label",		Field.Store.YES, 	Field.Index.ANALYZED, new MusicbrainzAnalyzer()),
-    LABEL_ACCENT("labelaccent", Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
-    LABEL_ID	("laid",		Field.Store.YES,	Field.Index.NOT_ANALYZED, new KeywordAnalyzer()),
-    SORTNAME	("sortname",	Field.Store.YES,	Field.Index.ANALYZED),
-    TYPE		("type",		Field.Store.YES, 	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    TAG		    ("tag",		    Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    TAGCOUNT    ("tagcount",	Field.Store.YES,	Field.Index.NO),
+	ID			("_id",			MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ALIAS		("alias",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    BEGIN		("begin",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    COMMENT		("comment",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    CODE		("code",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new KeywordAnalyzer()),
+    COUNTRY		("country",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    END			("end",			MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ENDED       ("ended",       MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    IPI         ("ipi",         MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    LABEL		("label",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzAnalyzer()),
+    LABEL_ACCENT("labelaccent", MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
+    LABEL_ID	("laid",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    SORTNAME	("sortname",	MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    TYPE		("type",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    TAG		    ("tag",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    TAGCOUNT    ("tagcount",	MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
     ;
 
     private String name;
-	private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
+    private FieldType fieldType;
 
-    private LabelIndexField(String name, Field.Store store, Field.Index index) {
+    private LabelIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
 
-    private LabelIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private LabelIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
     
@@ -79,17 +78,13 @@
         return name;
     }
 
-    public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 }
 

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/MetaIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/MetaIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/MetaIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -21,47 +21,48 @@
 
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 
 /**
  * Fields common to all Lucene Search Index
  */
 public enum MetaIndexField implements IndexField {
 
-    LAST_UPDATED			("index_lastupdate",	Field.Store.YES,	Field.Index.NOT_ANALYZED),
-    REPLICATION_SEQUENCE	("index_repseq",		Field.Store.YES,	Field.Index.NOT_ANALYZED),
-    SCHEMA_SEQUENCE			("index_schseq",		Field.Store.YES,	Field.Index.NOT_ANALYZED),
-    LAST_CHANGE_SEQUENCE	("index_changeseq",		Field.Store.YES,	Field.Index.NOT_ANALYZED),    
+    LAST_UPDATED			("index_lastupdate",	MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED),
+    REPLICATION_SEQUENCE	("index_repseq",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED),
+    SCHEMA_SEQUENCE			("index_schseq",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED),
+    LAST_CHANGE_SEQUENCE	("index_changeseq",		MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED),
     // Dumb field always filled with '1', but that easily allow to find the meta document
-    META					("index_meta",			Field.Store.YES,	Field.Index.NOT_ANALYZED),    
+    META					("index_meta",			MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED),
     ;
 
     private String name;
-	private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
+    private FieldType fieldType;
 
     public static final String META_VALUE = "1";
 
-    private MetaIndexField(String name, Field.Store store, Field.Index index) {
+    private MetaIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
 
+    private MetaIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
+        this.analyzer = analyzer;
+    }
+
     public String getName() {
         return name;
     }
 
-    public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
+
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 }
 

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/RecordingIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/RecordingIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/RecordingIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.CaseInsensitiveKeywordAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzKeepAccentsAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzWithPosGapAnalyzer;
@@ -13,62 +14,59 @@
  */
 public enum RecordingIndexField implements IndexField {
 
-    ID                      ("_id",		            Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ARTIST_ID		        ("arid",			    Field.Store.NO,	    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ARTIST                  ("artist",              Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_NAME             ("artistname",		    Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_NAMECREDIT       ("creditname",	        Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_CREDIT           ("artistcredit",        Field.Store.YES,    Field.Index.NO),
-    COMMENT		            ("comment",		        Field.Store.YES,	Field.Index.ANALYZED),
-    COUNTRY			        ("country",		        Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    DURATION			    ("dur",			        Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    FORMAT			        ("format",		        Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    ISRC    		        ("isrc",		        Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    NUM_TRACKS              ("tracks",		        Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    NUM_TRACKS_RELEASE      ("tracksrelease",       Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    POSITION                ("position",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    NUMBER                  ("number",		        Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS),
-    PUID    		        ("puid",		        Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    QUANTIZED_DURATION	    ("qdur",		        Field.Store.NO,	    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    RECORDING_ID            ("rid",		            Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    RECORDING               ("recording",		    Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    RECORDING_ACCENT        ("recordingaccent",     Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
-    RECORDING_OUTPUT        ("recordingoutput",     Field.Store.YES,	Field.Index.NO),
-    RELEASE				    ("release",		        Field.Store.YES,	Field.Index.ANALYZED, new TitleWithPosGapAnalyzer()),
-    RELEASE_DATE	        ("date",		        Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    RELEASE_AC_VA           ("release_ac_va",       Field.Store.YES,    Field.Index.NO),
-    RELEASE_ID			    ("reid",		        Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    RELEASE_PRIMARY_TYPE    ("primarytype",		    Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    RELEASE_SECONDARY_TYPE  ("secondarytype",       Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    RELEASE_STATUS          ("status",              Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    RELEASE_TYPE            ("type",                Field.Store.YES,    Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    RELEASEGROUP_ID	        ("rgid",			    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    SECONDARY_TYPE_OUTPUT   ("secondarytypeoutput", Field.Store.YES,	Field.Index.NO),
-    TAG		                ("tag",		            Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    TAGCOUNT                ("tagcount",	        Field.Store.YES,	Field.Index.NO),
-    TRACKNUM			    ("tnum",		        Field.Store.YES,	Field.Index.NOT_ANALYZED, new KeywordAnalyzer()),
-    TRACK_ARTIST_CREDIT     ("trackartistcredit",   Field.Store.YES,   Field.Index.NO),
-    TRACK_OUTPUT            ("trackoutput",		    Field.Store.YES,	Field.Index.NO),
-    TRACK_DURATION_OUTPUT   ("trackdur",		    Field.Store.YES,	Field.Index.NO),
-    RECORDING_DURATION_OUTPUT("recordingdur",	    Field.Store.YES,	Field.Index.NO),
+    ID                      ("_id",		            MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ARTIST_ID		        ("arid",			    MusicBrainzFieldTypes.TEXT_NOT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ARTIST                  ("artist",              MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_NAME             ("artistname",		    MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_NAMECREDIT       ("creditname",	        MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_CREDIT           ("artistcredit",        MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    COMMENT		            ("comment",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    COUNTRY			        ("country",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    DURATION			    ("dur",			        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    FORMAT			        ("format",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    ISRC    		        ("isrc",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    NUM_TRACKS              ("tracks",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    NUM_TRACKS_RELEASE      ("tracksrelease",       MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    POSITION                ("position",		    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    NUMBER                  ("number",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS),
+    PUID    		        ("puid",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    QUANTIZED_DURATION	    ("qdur",		        MusicBrainzFieldTypes.TEXT_NOT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RECORDING_ID            ("rid",		            MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RECORDING               ("recording",		    MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    RECORDING_ACCENT        ("recordingaccent",     MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
+    RECORDING_OUTPUT        ("recordingoutput",     MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    RELEASE				    ("release",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new TitleWithPosGapAnalyzer()),
+    RELEASE_DATE	        ("date",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RELEASE_AC_VA           ("release_ac_va",       MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    RELEASE_ID			    ("reid",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RELEASE_PRIMARY_TYPE    ("primarytype",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    RELEASE_SECONDARY_TYPE  ("secondarytype",       MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    RELEASE_STATUS          ("status",              MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    RELEASE_TYPE            ("type",                MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    RELEASEGROUP_ID	        ("rgid",			    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    SECONDARY_TYPE_OUTPUT   ("secondarytypeoutput", MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    TAG		                ("tag",		            MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    TAGCOUNT                ("tagcount",	        MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    TRACKNUM			    ("tnum",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED, new KeywordAnalyzer()),
+    TRACK_ARTIST_CREDIT     ("trackartistcredit",   MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    TRACK_OUTPUT            ("trackoutput",		    MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    TRACK_DURATION_OUTPUT   ("trackdur",		    MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    RECORDING_DURATION_OUTPUT("recordingdur",	    MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
 
 
     ;
 
     private String name;
-	private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
+    private FieldType fieldType;
 
-    private RecordingIndexField(String name, Field.Store store, Field.Index index) {
+    private RecordingIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
 
-
-     private RecordingIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private RecordingIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
@@ -76,17 +74,12 @@
         return name;
     }
 
-    public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
-
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 }

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseGroupIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseGroupIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseGroupIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -31,6 +31,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.*;
 
 /**
@@ -38,40 +39,38 @@
  */
 public enum ReleaseGroupIndexField implements IndexField {
 
-	ID		    		("_id",				Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-	ARTIST_ID		    ("arid",			Field.Store.NO,		Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ARTIST              ("artist",          Field.Store.NO,		Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_CREDIT       ("artistcredit",    Field.Store.YES,    Field.Index.NO),
-    ARTIST_NAME         ("artistname",		Field.Store.NO,		Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_NAMECREDIT   ("creditname",	    Field.Store.NO,		Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    COMMENT		        ("comment",		    Field.Store.YES,	Field.Index.ANALYZED),
-    NUM_RELEASES        ("releases",	    Field.Store.NO,	    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    PRIMARY_TYPE        ("primarytype",		Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    RELEASE             ("release", 		Field.Store.YES,	Field.Index.ANALYZED, new TitleWithPosGapAnalyzer()),
-    RELEASE_ID		    ("reid",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    RELEASEGROUP_ID	    ("rgid",			Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-	RELEASEGROUP	    ("releasegroup",	Field.Store.YES,	Field.Index.ANALYZED, new TitleAnalyzer()),
-    RELEASEGROUP_ACCENT ("releasegroupaccent",Field.Store.NO,   Field.Index.ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
-    RELEASESTATUS       ("status",			Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    SECONDARY_TYPE      ("secondarytype",   Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    TAG		            ("tag",		        Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    TAGCOUNT            ("tagcount",	    Field.Store.YES,	Field.Index.NO),
-    TYPE			    ("type",			Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+	ID		    		("_id",				    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+	ARTIST_ID		    ("arid",			    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ARTIST              ("artist",              MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_CREDIT       ("artistcredit",        MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    ARTIST_NAME         ("artistname",		    MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_NAMECREDIT   ("creditname",	        MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    COMMENT		        ("comment",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    NUM_RELEASES        ("releases",	        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    PRIMARY_TYPE        ("primarytype",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    RELEASE             ("release", 		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new TitleWithPosGapAnalyzer()),
+    RELEASE_ID		    ("reid",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RELEASEGROUP_ID	    ("rgid",			    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RELEASEGROUP	    ("releasegroup",	    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new TitleAnalyzer()),
+    RELEASEGROUP_ACCENT ("releasegroupaccent",  MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
+    RELEASESTATUS       ("status",			    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    SECONDARY_TYPE      ("secondarytype",       MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    TAG		            ("tag",		            MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    TAGCOUNT            ("tagcount",	        MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    TYPE			    ("type",			    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
     ;
 
     private String name;
-	private Field.Store store;
-	private Field.Index index;
     private Analyzer analyzer;
+    private FieldType fieldType;
 
-	private ReleaseGroupIndexField(String name, Field.Store store, Field.Index index) {
-		this.name = name;
-		this.store = store;
-		this.index = index;
-	}
+    private ReleaseGroupIndexField(String name, FieldType fieldType) {
+        this.name = name;
+        this.fieldType=fieldType;
+    }
 
-    private ReleaseGroupIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private ReleaseGroupIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
@@ -79,17 +78,13 @@
 		return name;
 	}
 
-	public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/ReleaseIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.*;
 
 /**
@@ -10,52 +11,51 @@
  */
 public enum ReleaseIndexField implements IndexField {
 	
-    ID				    ("_id",		    	Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    AMAZON_ID		    ("asin",		    Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    ARTIST_ID		    ("arid",			Field.Store.NO,	    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ARTIST              ("artist",          Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_CREDIT       ("artistcredit",    Field.Store.YES,    Field.Index.NO),
-    ARTIST_NAME         ("artistname",		Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_NAMECREDIT   ("creditname",	    Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    BARCODE			    ("barcode",		    Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new StripLeadingZeroAnalyzer()),
-    CATALOG_NO		    ("catno",		    Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new StripSpacesAnalyzer()),
-    COMMENT		        ("comment",		    Field.Store.YES,	Field.Index.ANALYZED),
-    COUNTRY			    ("country",		    Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    DATE			    ("date",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    FORMAT  		    ("format",		    Field.Store.YES,	Field.Index.ANALYZED, new CaseInsensitiveKeywordAnalyzer()),
-    LABEL			    ("label",		    Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    LABEL_ID            ("laid",            Field.Store.YES,    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    LANGUAGE		    ("lang",	        Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    NUM_DISCIDS         ("discids",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    NUM_DISCIDS_MEDIUM  ("discidsmedium",   Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    NUM_MEDIUMS         ("mediums",	        Field.Store.NO,	    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    NUM_TRACKS		    ("tracks",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    NUM_TRACKS_MEDIUM   ("tracksmedium",	Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    PRIMARY_TYPE        ("primarytype",		Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    PUID    		    ("puid",		    Field.Store.NO,	    Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    RELEASE			    ("release",		    Field.Store.YES,	Field.Index.ANALYZED, new TitleAnalyzer()),
-    RELEASE_ACCENT      ("releaseaccent",   Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
-    RELEASE_ID		    ("reid",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    RELEASEGROUP_ID	    ("rgid",			Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    SCRIPT			    ("script",		    Field.Store.YES,	Field.Index.ANALYZED, new CaseInsensitiveKeywordAnalyzer()),
-    SECONDARY_TYPE      ("secondarytype",   Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    STATUS		        ("status",		    Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    TYPE		        ("type",		    Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    ID				    ("_id",		    	MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    AMAZON_ID		    ("asin",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    ARTIST_ID		    ("arid",			MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ARTIST              ("artist",          MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_CREDIT       ("artistcredit",    MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    ARTIST_NAME         ("artistname",		MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_NAMECREDIT   ("creditname",	    MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    BARCODE			    ("barcode",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new StripLeadingZeroAnalyzer()),
+    CATALOG_NO		    ("catno",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new StripSpacesAnalyzer()),
+    COMMENT		        ("comment",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    COUNTRY			    ("country",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    DATE			    ("date",		    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    FORMAT  		    ("format",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new CaseInsensitiveKeywordAnalyzer()),
+    LABEL			    ("label",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    LABEL_ID            ("laid",            MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    LANGUAGE		    ("lang",	        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    NUM_DISCIDS         ("discids",		    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    NUM_DISCIDS_MEDIUM  ("discidsmedium",   MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    NUM_MEDIUMS         ("mediums",	        MusicBrainzFieldTypes.TEXT_NOT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    NUM_TRACKS		    ("tracks",		    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    NUM_TRACKS_MEDIUM   ("tracksmedium",	MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    PRIMARY_TYPE        ("primarytype",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    PUID    		    ("puid",		    MusicBrainzFieldTypes.TEXT_NOT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RELEASE			    ("release",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new TitleAnalyzer()),
+    RELEASE_ACCENT      ("releaseaccent",   MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
+    RELEASE_ID		    ("reid",		    MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    RELEASEGROUP_ID	    ("rgid",			MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    SCRIPT			    ("script",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new CaseInsensitiveKeywordAnalyzer()),
+    SECONDARY_TYPE      ("secondarytype",   MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    STATUS		        ("status",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    TYPE		        ("type",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
     ;
 
     private String name;
-	private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
-        
-    private ReleaseIndexField(String name, Field.Store store, Field.Index index) {
+
+    private FieldType fieldType;
+
+    private ReleaseIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
 
-     private ReleaseIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private ReleaseIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
@@ -63,17 +63,14 @@
         return name;
     }
 
-    public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 
+
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/TagIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/TagIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/TagIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.MusicbrainzAnalyzer;
 
 /**
@@ -10,23 +11,21 @@
  */
 public enum TagIndexField implements IndexField {
 	
-	ID		("_id",		Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    TAG		("tag",		Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzAnalyzer()),
+	ID		("_id",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    TAG		("tag",		MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzAnalyzer()),
     ;
 
     private String name;
-	private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
+    private FieldType fieldType;
 
-    private TagIndexField(String name, Field.Store store, Field.Index index) {
+    private TagIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
 
-     private TagIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private TagIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
@@ -34,17 +33,14 @@
         return name;
     }
 
-    public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 
+
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/main/java/org/musicbrainz/search/index/WorkIndexField.java
===================================================================
--- search_server/trunk/index/src/main/java/org/musicbrainz/search/index/WorkIndexField.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/main/java/org/musicbrainz/search/index/WorkIndexField.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.FieldType;
 import org.musicbrainz.search.analysis.CaseInsensitiveKeywordAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzKeepAccentsAnalyzer;
 import org.musicbrainz.search.analysis.MusicbrainzWithPosGapAnalyzer;
@@ -13,53 +14,49 @@
  */
 public enum WorkIndexField implements IndexField {
 	
-    ID		        	("_id",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ALIAS		        ("alias",		Field.Store.YES, 	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_ID		    ("arid",			Field.Store.NO,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
-    ARTIST              ("artist",          Field.Store.NO,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    ARTIST_RELATION     ("artistrelation",    Field.Store.YES,    Field.Index.NO),
-    COMMENT		        ("comment",		Field.Store.YES,	Field.Index.ANALYZED),
-    ISWC		        ("iswc",		Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    LYRICS_LANG		    ("lang",	    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    TYPE		        ("type",		Field.Store.YES,	Field.Index.ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
-    TAG		            ("tag",		    Field.Store.YES,	Field.Index.ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
-    TAGCOUNT            ("tagcount",	Field.Store.YES,	Field.Index.NO),
-    WORK			    ("work",		Field.Store.YES,	Field.Index.ANALYZED, new TitleAnalyzer()),
-    WORK_ACCENT         ("workaccent",  Field.Store.NO,	    Field.Index.ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
-    WORK_ID		        ("wid",		    Field.Store.YES,	Field.Index.NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ID		        	("_id",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ALIAS		        ("alias",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_ID		    ("arid",			MusicBrainzFieldTypes.TEXT_NOT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
+    ARTIST              ("artist",          MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    ARTIST_RELATION     ("artistrelation",  MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    COMMENT		        ("comment",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED),
+    ISWC		        ("iswc",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    LYRICS_LANG		    ("lang",	        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    TYPE		        ("type",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED_NO_NORMS, new CaseInsensitiveKeywordAnalyzer()),
+    TAG		            ("tag",		        MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new MusicbrainzWithPosGapAnalyzer()),
+    TAGCOUNT            ("tagcount",	    MusicBrainzFieldTypes.TEXT_STORED_NOT_INDEXED),
+    WORK			    ("work",		    MusicBrainzFieldTypes.TEXT_STORED_ANALYZED, new TitleAnalyzer()),
+    WORK_ACCENT         ("workaccent",      MusicBrainzFieldTypes.TEXT_NOT_STORED_ANALYZED, new MusicbrainzKeepAccentsAnalyzer()),
+    WORK_ID		        ("wid",		        MusicBrainzFieldTypes.TEXT_STORED_NOT_ANALYZED_NO_NORMS, new KeywordAnalyzer()),
     ;
 
     private String name;
-	private Field.Store store;
-    private Field.Index index;
     private Analyzer analyzer;
+    private FieldType fieldType;
 
-    private WorkIndexField(String name, Field.Store store, Field.Index index) {
+    private WorkIndexField(String name, FieldType fieldType) {
         this.name = name;
-        this.store = store;
-        this.index = index;
+        this.fieldType=fieldType;
     }
 
-     private WorkIndexField(String name, Field.Store store, Field.Index index, Analyzer analyzer) {
-        this(name, store, index);
+    private WorkIndexField(String name, FieldType fieldType, Analyzer analyzer) {
+        this(name, fieldType);
         this.analyzer = analyzer;
     }
 
+
     public String getName() {
         return name;
     }
 
-    public Field.Store getStore() {
-		return store;
-	}
-
-	public Field.Index getIndex() {
-		return index;
-	}
-
     public Analyzer getAnalyzer() {
         return analyzer;
     }
 
+    public FieldType getFieldType()
+    {
+        return fieldType;
+    }
 
+
 }
\ No newline at end of file

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AccentFilterTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AccentFilterTest.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AccentFilterTest.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -32,30 +33,30 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "test", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "test", TextField.TYPE_STORED));
         writer.addDocument(doc);
 
         doc = new Document();
-        doc.add(new Field("name", "ŃåᴊıÚņ", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "ŃåᴊıÚņ", TextField.TYPE_STORED));
         writer.addDocument(doc);
 
         doc = new Document();
-        doc.add(new Field("name", "tést", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "tést", TextField.TYPE_STORED));
         writer.addDocument(doc);
 
         doc = new Document();
-        doc.add(new Field("name", "ábcáef", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "ábcáef", TextField.TYPE_STORED));
         writer.addDocument(doc);
 
         doc = new Document();
-        doc.add(new Field("name", "qwe 1", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "qwe 2", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "qwe 1", TextField.TYPE_STORED));
+        doc.add(new Field("name", "qwe 2", TextField.TYPE_STORED));
         writer.addDocument(doc);
 
         doc = new Document();
-        doc.add(new Field("name", "qwee 2", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "aaa", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "aaa", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "qwee 2", TextField.TYPE_STORED));
+        doc.add(new Field("name", "aaa", TextField.TYPE_STORED));
+        doc.add(new Field("name", "aaa", TextField.TYPE_STORED));
         writer.addDocument(doc);
 
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AmpersandTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AmpersandTest.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/AmpersandTest.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -9,6 +9,7 @@
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.*;
 import org.apache.lucene.queryparser.classic.QueryParser;
 import org.apache.lucene.search.IndexSearcher;
@@ -67,7 +68,7 @@
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         {
             Document doc = new Document();
-            doc.add(new Field("name", "platinum & gold", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("name", "platinum & gold", TextField.TYPE_STORED));
             writer.addDocument(doc);
         }
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/ArtistBoostTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/ArtistBoostTest.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/ArtistBoostTest.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -68,17 +69,17 @@
 
         //THis field has anid that means it gets doc boost
         Document doc = new Document();
-        doc.add(new Field(ArtistIndexField.ARTIST_ID.getName(), "24f1766e-9635-4d58-a4d4-9413f9f98a4c", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(ArtistIndexField.ARTIST.getName(), "Johann Sebastian Bach", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(ArtistIndexField.ALIAS.getName(), "Bach", Field.Store.YES,	Field.Index.ANALYZED));
+        doc.add(new Field(ArtistIndexField.ARTIST_ID.getName(), "24f1766e-9635-4d58-a4d4-9413f9f98a4c", TextField.TYPE_STORED));
+        doc.add(new Field(ArtistIndexField.ARTIST.getName(), "Johann Sebastian Bach", TextField.TYPE_STORED));
+        doc.add(new Field(ArtistIndexField.ALIAS.getName(), "Bach", TextField.TYPE_STORED));
         ArtistBoostDoc.boost("24f1766e-9635-4d58-a4d4-9413f9f98a4c",doc);
         writer.addDocument(doc);
 
         //this does not
         doc = new Document();
-        doc.add(new Field(ArtistIndexField.ARTIST_ID.getName(), "9cefb3f2-763c-47a3-bc1e-86f1f35206f0", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(ArtistIndexField.ARTIST.getName(), "bach", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(ArtistIndexField.ALIAS.getName(), "bach", Field.Store.YES,	Field.Index.ANALYZED));
+        doc.add(new Field(ArtistIndexField.ARTIST_ID.getName(), "9cefb3f2-763c-47a3-bc1e-86f1f35206f0", TextField.TYPE_STORED));
+        doc.add(new Field(ArtistIndexField.ARTIST.getName(), "bach", TextField.TYPE_STORED));
+        doc.add(new Field(ArtistIndexField.ALIAS.getName(), "bach", TextField.TYPE_STORED));
         ArtistBoostDoc.boost("9cefb3f2-763c-47a3-bc1e-86f1f35206f0",doc);
         writer.addDocument(doc);
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1006Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1006Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1006Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -9,6 +9,7 @@
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -160,17 +161,17 @@
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         {
             Document doc = new Document();
-            doc.add(new Field("name", "ゲーム", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("name", "ゲーム", TextField.TYPE_STORED));
             writer.addDocument(doc);
         }
         {
             Document doc = new Document();
-            doc.add(new Field("name", "ゲエム", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("name", "ゲエム", TextField.TYPE_STORED));
             writer.addDocument(doc);
         }
         {
             Document doc = new Document();
-            doc.add(new Field("name", "げえむ", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("name", "げえむ", TextField.TYPE_STORED));
             writer.addDocument(doc);
         }
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1446Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1446Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue1446Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -32,7 +33,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "ァ", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "ァ", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -52,7 +53,7 @@
         IndexWriter writer = new IndexWriter(dir, writerConfig);
 
         Document doc = new Document();
-        doc.add(new Field("name", "ヨ", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "ヨ", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -71,7 +72,7 @@
         IndexWriter writer = new IndexWriter(dir, writerConfig);
 
         Document doc = new Document();
-        doc.add(new Field("name", "ぇ", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "ぇ", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -90,7 +91,7 @@
         IndexWriter writer = new IndexWriter(dir, writerConfig);
 
         Document doc = new Document();
-        doc.add(new Field("name", "つ", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "つ", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue24Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue24Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue24Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -67,29 +68,29 @@
             IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
             IndexWriter writer = new IndexWriter(dir, writerConfig);
             Document doc = new Document();
-            doc.add(new Field("artist", "fred", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 1", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 2", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 3", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 4", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 5", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 6", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 7", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 8", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("artist", "fred", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod",   TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 1", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 2", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 3", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 4", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 5", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 6", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 7", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 8", TextField.TYPE_STORED));
 
             writer.addDocument(doc);
             doc = new Document();
-            doc.add(new Field("artist", "rod", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 1", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 2", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 3", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 4", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 5", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 6", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 7", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 8", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("artist", "rod",   TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod",    TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 1", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 2", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 3", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 4", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 5", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 6", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 7", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 8", TextField.TYPE_STORED));
             writer.addDocument(doc);
             writer.close();
 
@@ -119,29 +120,29 @@
             writerConfig.setSimilarity(new MusicbrainzSimilarity());
             IndexWriter writer = new IndexWriter(dir, writerConfig);
             Document doc = new Document();
-            doc.add(new Field("artist", "fred", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 1", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 2", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 3", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 4", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 5", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 6", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 7", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod 8", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("artist", "fred", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 1", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 2", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 3", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 4", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 5", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 6", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 7", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod 8", TextField.TYPE_STORED));
 
             writer.addDocument(doc);
             doc = new Document();
-            doc.add(new Field("artist", "rod", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "rod", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 1", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 2", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 3", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 4", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 5", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 6", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 7", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "fred 8", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("artist", "rod", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "rod", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 1", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 2", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 3", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 4", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 5", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 6", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 7", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "fred 8", TextField.TYPE_STORED));
             writer.addDocument(doc);
             writer.close();
 
@@ -207,16 +208,16 @@
             IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
             IndexWriter writer = new IndexWriter(dir, writerConfig);
             Document doc = new Document();
-            doc.add(new Field("artist", "Vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen and Vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen featuring Vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen feat, Vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen & vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen _ Vanguard", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("artist", "Vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen and Vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen featuring Vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen feat, Vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen & vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen _ Vanguard", TextField.TYPE_STORED));
 
             writer.addDocument(doc);
             doc = new Document();
-            doc.add(new Field("artist", "queen", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("artist", "queen", TextField.TYPE_STORED));
             writer.addDocument(doc);
             writer.close();
 
@@ -246,15 +247,15 @@
             writerConfig.setSimilarity(new MusicbrainzSimilarity());
             IndexWriter writer = new IndexWriter(dir, writerConfig);
             Document doc = new Document();
-            doc.add(new Field("alias", "Queen and Vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen featuring Vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen feat, Vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen & vanguard", Field.Store.YES, Field.Index.ANALYZED));
-            doc.add(new Field("alias", "Queen _ Vanguard", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("alias", "Queen and Vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen featuring Vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen feat, Vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen & vanguard", TextField.TYPE_STORED));
+            doc.add(new Field("alias", "Queen _ Vanguard", TextField.TYPE_STORED));
 
             writer.addDocument(doc);
             doc = new Document();
-            doc.add(new Field("artist", "queen", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("artist", "queen", TextField.TYPE_STORED));
             writer.addDocument(doc);
             writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue3309Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue3309Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue3309Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -7,6 +7,7 @@
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -81,7 +82,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "R.E.S.", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "R.E.S.", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -99,7 +100,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "R.E.S", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "R.E.S", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4775Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4775Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4775Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -7,6 +7,7 @@
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -32,10 +33,10 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "O'reilly", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "There's", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "its", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "John’s", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "O'reilly", TextField.TYPE_STORED));
+        doc.add(new Field("name", "There's", TextField.TYPE_STORED));
+        doc.add(new Field("name", "its", TextField.TYPE_STORED));
+        doc.add(new Field("name", "John’s", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();
@@ -142,11 +143,11 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "1999-2000", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "1999-2000", TextField.TYPE_STORED));
         writer.addDocument(doc);
 
         doc = new Document();
-        doc.add(new Field("name", "1999–2000", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "1999–2000", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -174,7 +175,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "R.E.S.", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "R.E.S.", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4827Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4827Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue4827Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -59,7 +60,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "ארלס"+"\u05f3"+"צ", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "ארלס"+"\u05f3"+"צ", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -87,7 +88,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "ארלס"+"'"+"צ", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "ארלס"+"'"+"צ", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5523Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5523Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5523Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -58,7 +59,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "寧夏", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "寧夏", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -82,7 +83,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "宁夏", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "宁夏", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -106,7 +107,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "麯", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "麯", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5538Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5538Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Issue5538Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -30,7 +31,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "No. 11", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "No. 11", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch159Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch159Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch159Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -61,7 +62,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "Sabbatum:", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "Sabbatum:", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();
@@ -82,7 +83,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "Sabbatum", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "Sabbatum", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();
@@ -102,7 +103,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "Sabbatum:", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "Sabbatum:", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch163Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch163Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch163Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -60,7 +61,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "Európa", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "Európa", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch220Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch220Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch220Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -3,6 +3,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -81,7 +82,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "fred\u3000james", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "fred\u3000james", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch22Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch22Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch22Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -59,8 +60,8 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "it's time to pay income tax", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "return library books on time", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "it's time to pay income tax", TextField.TYPE_STORED));
+        doc.add(new Field("name", "return library books on time", TextField.TYPE_STORED));
                 
         writer.addDocument(doc);
         writer.close();
@@ -81,8 +82,8 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "it's time to pay income tax", Field.Store.YES, Field.Index.ANALYZED));
-        doc.add(new Field("name", "return library books on time", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "it's time to pay income tax", TextField.TYPE_STORED));
+        doc.add(new Field("name", "return library books on time", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch33Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch33Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch33Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -36,6 +36,7 @@
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.*;
 import org.apache.lucene.queryparser.classic.QueryParser;
 import org.apache.lucene.search.IndexSearcher;
@@ -78,7 +79,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
             IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "!!!", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "!!!", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();
@@ -135,7 +136,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "!\"@*!%", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "!\"@*!%", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -181,7 +182,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "fred!!", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "fred!!", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -229,7 +230,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "bdb24cb5-404b-4f60-bba4-7b730325ae47", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "bdb24cb5-404b-4f60-bba4-7b730325ae47", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -276,7 +277,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "กข!!", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "กข!!", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -327,7 +328,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "!\"@* !%", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "!\"@* !%", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -380,7 +381,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "!\"@* fred", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "!\"@* fred", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -429,7 +430,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "This_is", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "This_is", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -478,7 +479,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "This_is", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "This_is", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -525,7 +526,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "This_is", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "This_is", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -571,7 +572,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "3Oh!j", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "3Oh!j", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch72Test.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch72Test.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/IssueSearch72Test.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -61,7 +62,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "aaaaahhh!", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "aaaaahhh!", TextField.TYPE_STORED));
 
         writer.addDocument(doc);
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/LabelBoostTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/LabelBoostTest.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/LabelBoostTest.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -32,6 +32,7 @@
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -68,18 +69,18 @@
 
         //THis field has anid that means it gets doc boost
         Document doc = new Document();
-        doc.add(new Field(LabelIndexField.LABEL_ID.getName(), "022fe361-596c-43a0-8e22-bad712bb9548", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(LabelIndexField.LABEL.getName(), "Emi Records", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(LabelIndexField.ALIAS.getName(), "Emi", Field.Store.YES,	Field.Index.ANALYZED));
+        doc.add(new Field(LabelIndexField.LABEL_ID.getName(), "022fe361-596c-43a0-8e22-bad712bb9548", TextField.TYPE_STORED));
+        doc.add(new Field(LabelIndexField.LABEL.getName(), "Emi Records", TextField.TYPE_STORED));
+        doc.add(new Field(LabelIndexField.ALIAS.getName(), "Emi", TextField.TYPE_STORED));
 
         LabelBoostDoc.boost("022fe361-596c-43a0-8e22-bad712bb9548", doc);
         writer.addDocument(doc);
 
         //this does not
         doc = new Document();
-        doc.add(new Field(LabelIndexField.LABEL_ID.getName(), "245345-9635-4d58-a4d4-9413f9f98a4c", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(LabelIndexField.LABEL.getName(), "Emi", Field.Store.YES,	Field.Index.ANALYZED));
-        doc.add(new Field(LabelIndexField.ALIAS.getName(), "Emi", Field.Store.YES,	Field.Index.ANALYZED));
+        doc.add(new Field(LabelIndexField.LABEL_ID.getName(), "245345-9635-4d58-a4d4-9413f9f98a4c", TextField.TYPE_STORED));
+        doc.add(new Field(LabelIndexField.LABEL.getName(), "Emi", TextField.TYPE_STORED));
+        doc.add(new Field(LabelIndexField.ALIAS.getName(), "Emi", TextField.TYPE_STORED));
         LabelBoostDoc.boost("245345-9635-4d58-a4d4-9413f9f98a4c",doc);
         writer.addDocument(doc);
 

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Lucene41CharFilterTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Lucene41CharFilterTest.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/Lucene41CharFilterTest.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -8,6 +8,7 @@
 import org.apache.lucene.analysis.core.LowerCaseFilter;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.*;
 import org.apache.lucene.queryparser.classic.QueryParser;
 import org.apache.lucene.search.IndexSearcher;
@@ -65,7 +66,7 @@
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         {
             Document doc = new Document();
-            doc.add(new Field("name", "Platinum & Gold", Field.Store.YES, Field.Index.ANALYZED));
+            doc.add(new Field("name", "Platinum & Gold", TextField.TYPE_STORED));
             writer.addDocument(doc);
         }
         writer.close();

Modified: search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/StopWordsTest.java
===================================================================
--- search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/StopWordsTest.java	2013-02-26 11:35:14 UTC (rev 13627)
+++ search_server/trunk/index/src/test/java/org/musicbrainz/search/analysis/StopWordsTest.java	2013-02-26 16:31:18 UTC (rev 13628)
@@ -5,6 +5,7 @@
 import org.apache.lucene.analysis.util.CharArraySet;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
+import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
@@ -35,7 +36,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "that", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "that", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -54,7 +55,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "that", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "that", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 
@@ -72,7 +73,7 @@
         IndexWriterConfig writerConfig = new IndexWriterConfig(LuceneVersion.LUCENE_VERSION,analyzer);
         IndexWriter writer = new IndexWriter(dir, writerConfig);
         Document doc = new Document();
-        doc.add(new Field("name", "that", Field.Store.YES, Field.Index.ANALYZED));
+        doc.add(new Field("name", "that", TextField.TYPE_STORED));
         writer.addDocument(doc);
         writer.close();
 


_______________________________________________
MusicBrainz-commits mailing list
[email protected]
http://lists.musicbrainz.org/mailman/listinfo/musicbrainz-commits