You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2014/03/07 04:53:07 UTC

svn commit: r1575142 - in /maven/indexer/branches/lucene-4.6/indexer-core: ./ src/main/java/org/apache/maven/index/ src/main/java/org/apache/maven/index/context/ src/main/java/org/apache/maven/index/incremental/ src/main/java/org/apache/maven/index/pac...

Author: olamy
Date: Fri Mar  7 03:53:06 2014
New Revision: 1575142

URL: http://svn.apache.org/r1575142
Log:
Begin migration to Lucene 4 API

Modified:
    maven/indexer/branches/lucene-4.6/indexer-core/pom.xml
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIteratorResultSet.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/QueryCreator.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
    maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java

Modified: maven/indexer/branches/lucene-4.6/indexer-core/pom.xml
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/pom.xml?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/pom.xml (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/pom.xml Fri Mar  7 03:53:06 2014
@@ -57,6 +57,16 @@ under the License.
     </dependency>
     <dependency>
       <groupId>org.apache.lucene</groupId>
+      <artifactId>lucene-queryparser</artifactId>
+      <version>${lucene.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.lucene</groupId>
+      <artifactId>lucene-analyzers-common</artifactId>
+      <version>${lucene.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.lucene</groupId>
       <artifactId>lucene-highlighter</artifactId>
       <version>${lucene.version}</version>
     </dependency>

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexer.java Fri Mar  7 03:53:06 2014
@@ -28,8 +28,7 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
-
-import org.apache.lucene.queryParser.ParseException;
+import org.apache.lucene.queryparser.classic.ParseException;
 import org.apache.lucene.search.Query;
 import org.apache.maven.index.context.ContextMemberProvider;
 import org.apache.maven.index.context.DefaultIndexingContext;

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java Fri Mar  7 03:53:06 2014
@@ -26,8 +26,8 @@ import java.util.Set;
 
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
-import org.apache.lucene.document.Fieldable;
 import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.IndexableField;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.TermQuery;
@@ -139,8 +139,8 @@ public class DefaultIndexerEngine
 
         for ( Object o : d.getFields() )
         {
-            Fieldable f = (Fieldable) o;
-            if ( f.isStored() )
+            IndexableField f = (IndexableField) o;
+            if ( f.fieldType().stored())
             {
                 result.put( f.name(), f.stringValue() );
             }

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIteratorResultSet.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIteratorResultSet.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIteratorResultSet.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultIteratorResultSet.java Fri Mar  7 03:53:06 2014
@@ -99,7 +99,7 @@ public class DefaultIteratorResultSet
             for ( int i = 0; i < contexts.size(); i++ )
             {
                 starts[i] = maxDoc;
-                maxDoc += acquiredSearchers.get( i ).maxDoc(); // compute maxDocs
+                maxDoc += acquiredSearchers.get( i ).getIndexReader().maxDoc(); // compute maxDocs
             }
             starts[contexts.size()] = maxDoc;
         }

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultNexusIndexer.java Fri Mar  7 03:53:06 2014
@@ -26,8 +26,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
-
-import org.apache.lucene.queryParser.ParseException;
+import org.apache.lucene.queryparser.classic.ParseException;
 import org.apache.lucene.search.Query;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultQueryCreator.java Fri Mar  7 03:53:06 2014
@@ -21,12 +21,11 @@ package org.apache.maven.index;
 
 import java.io.IOException;
 import java.io.StringReader;
-
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.index.Term;
-import org.apache.lucene.queryParser.ParseException;
-import org.apache.lucene.queryParser.QueryParser;
-import org.apache.lucene.queryParser.QueryParser.Operator;
+import org.apache.lucene.queryparser.classic.ParseException;
+import org.apache.lucene.queryparser.classic.QueryParser;
+import org.apache.lucene.queryparser.classic.QueryParser.Operator;
 import org.apache.lucene.search.BooleanClause.Occur;
 import org.apache.lucene.search.BooleanQuery;
 import org.apache.lucene.search.PrefixQuery;
@@ -140,7 +139,7 @@ public class DefaultQueryCreator
         }
         else
         {
-            QueryParser qp = new QueryParser( Version.LUCENE_24, field, new NexusAnalyzer() );
+            QueryParser qp = new QueryParser( Version.LUCENE_46, field, new NexusAnalyzer() );
 
             // small cheap trick
             // if a query is not "expert" (does not contain field:val kind of expression)

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java Fri Mar  7 03:53:06 2014
@@ -28,10 +28,12 @@ import java.util.Set;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.index.CorruptIndexException;
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.TermQuery;
 import org.apache.lucene.search.TopScoreDocCollector;
+import org.apache.lucene.util.Bits;
 import org.apache.maven.index.context.IndexingContext;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 
@@ -212,10 +214,11 @@ public class DefaultScannerListener
         try
         {
             final IndexReader r = indexSearcher.getIndexReader();
+            Bits liveDocs = MultiFields.getLiveDocs(r);
 
             for ( int i = 0; i < r.maxDoc(); i++ )
             {
-                if ( !r.isDeleted( i ) )
+                if ( liveDocs.get(i) )
                 {
                     Document d = r.document( i );
 

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/QueryCreator.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/QueryCreator.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/QueryCreator.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/QueryCreator.java Fri Mar  7 03:53:06 2014
@@ -19,7 +19,7 @@ package org.apache.maven.index;
  * under the License.
  */
 
-import org.apache.lucene.queryParser.ParseException;
+import org.apache.lucene.queryparser.classic.ParseException;
 import org.apache.lucene.search.Query;
 import org.apache.maven.index.expr.SearchExpression;
 

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java Fri Mar  7 03:53:06 2014
@@ -28,15 +28,15 @@ import java.util.Date;
 import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Set;
-
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.index.CorruptIndexException;
-import org.apache.lucene.index.IndexFileNameFilter;
+import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.IndexWriterConfig;
+import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.SearcherManager;
@@ -45,6 +45,7 @@ import org.apache.lucene.search.TopDocs;
 import org.apache.lucene.search.TopScoreDocCollector;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
+import org.apache.lucene.util.Bits;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.artifact.GavCalculator;
 import org.apache.maven.index.artifact.M2GavCalculator;
@@ -185,7 +186,7 @@ public class DefaultIndexingContext
     private void prepareIndex( boolean reclaimIndex )
         throws IOException, ExistingLuceneIndexMismatchException
     {
-        if ( IndexReader.indexExists( indexDirectory ) )
+        if ( DirectoryReader.indexExists( indexDirectory ) )
         {
             try
             {
@@ -524,7 +525,8 @@ public class DefaultIndexingContext
     public synchronized void optimize()
         throws CorruptIndexException, IOException
     {
-        getIndexWriter().optimize();
+        //FIXME
+        //getIndexWriter().optimize();
         commit();
     }
 
@@ -590,14 +592,16 @@ public class DefaultIndexingContext
         try
         {
             final IndexWriter w = getIndexWriter();
-            final IndexReader directoryReader = IndexReader.open( directory, true );
+            final IndexReader directoryReader = IndexReader.open( directory);
             TopScoreDocCollector collector = null;
             try
             {
                 int numDocs = directoryReader.maxDoc();
+                
+                Bits liveDocs = MultiFields.getLiveDocs(directoryReader);
                 for ( int i = 0; i < numDocs; i++ )
                 {
-                    if ( directoryReader.isDeleted( i ) )
+                    if (! liveDocs.get(i) )
                     {
                         continue;
                     }
@@ -699,10 +703,11 @@ public class DefaultIndexingContext
             Set<String> allGroups = new LinkedHashSet<String>();
 
             int numDocs = r.maxDoc();
+            Bits liveDocs = MultiFields.getLiveDocs(r);
 
             for ( int i = 0; i < numDocs; i++ )
             {
-                if ( r.isDeleted( i ) )
+                if (! liveDocs.get(i) )
                 {
                     continue;
                 }

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java Fri Mar  7 03:53:06 2014
@@ -20,11 +20,11 @@ package org.apache.maven.index.context;
  */
 
 import java.io.Reader;
-
 import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.CharTokenizer;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.util.CharTokenizer;
+import org.apache.lucene.util.Version;
 import org.apache.maven.index.creator.JarFileContentsIndexCreator;
 
 /**
@@ -38,6 +38,7 @@ import org.apache.maven.index.creator.Ja
 public final class NexusAnalyzer
     extends Analyzer
 {
+    //FIXME parent method is final
     public TokenStream tokenStream( String fieldName, Reader reader )
     {
         return getTokenizer( fieldName, reader );
@@ -56,6 +57,12 @@ public final class NexusAnalyzer
         }
     }
 
+    @Override
+    protected TokenStreamComponents createComponents(String fieldName, Reader reader)
+    {
+        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
+    }
+
     // ==
 
     public static class NoopTokenizer
@@ -63,11 +70,11 @@ public final class NexusAnalyzer
     {
         public NoopTokenizer( Reader in )
         {
-            super( in );
+            super( Version.LUCENE_46, in );
         }
 
         @Override
-        protected boolean isTokenChar( char c )
+        protected boolean isTokenChar(int i)
         {
             return true;
         }
@@ -79,20 +86,15 @@ public final class NexusAnalyzer
     {
         public DeprecatedClassnamesTokenizer( Reader in )
         {
-            super( in );
+            super( Version.LUCENE_46, in );
         }
-
+        
         @Override
-        protected boolean isTokenChar( char c )
+        protected boolean isTokenChar(int i)
         {
-            return c != '\n';
+            return i != '\n';
         }
 
-        @Override
-        protected char normalize( char c )
-        {
-            return Character.toLowerCase( c );
-        }
     }
 
     public static class LetterOrDigitTokenizer
@@ -100,20 +102,15 @@ public final class NexusAnalyzer
     {
         public LetterOrDigitTokenizer( Reader in )
         {
-            super( in );
+            super( Version.LUCENE_46, in );
         }
 
         @Override
-        protected boolean isTokenChar( char c )
+        protected boolean isTokenChar(int c)
         {
             return Character.isLetterOrDigit( c );
         }
 
-        @Override
-        protected char normalize( char c )
-        {
-            return Character.toLowerCase( c );
-        }
     }
 
 }

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java Fri Mar  7 03:53:06 2014
@@ -42,11 +42,12 @@ public class NexusIndexWriter
     public NexusIndexWriter( final Directory directory, final Analyzer analyzer, boolean create )
         throws CorruptIndexException, LockObtainFailedException, IOException
     {
-        super( directory, analyzer, create, MaxFieldLength.LIMITED );
+        //super( directory, analyzer, create, MaxFieldLength.LIMITED );
+        this(directory, new IndexWriterConfig(Version.LUCENE_46, analyzer));
 
         // setSimilarity( new NexusSimilarity() );
     }
-
+    
     public NexusIndexWriter( final Directory directory, final IndexWriterConfig config )
         throws CorruptIndexException, LockObtainFailedException, IOException
     {

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java Fri Mar  7 03:53:06 2014
@@ -37,7 +37,9 @@ import java.util.TreeMap;
 
 import org.apache.lucene.document.Document;
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.search.IndexSearcher;
+import org.apache.lucene.util.Bits;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.context.IndexingContext;
 import org.apache.maven.index.packer.IndexPackingRequest;
@@ -150,9 +152,10 @@ public class DefaultIncrementalHandler
         try
         {
             final IndexReader r = indexSearcher.getIndexReader();
+            Bits liveDocs = MultiFields.getLiveDocs(r);
             for ( int i = 0; i < r.maxDoc(); i++ )
             {
-                if ( !r.isDeleted( i ) )
+                if ( liveDocs.get(i) )
                 {
                     Document d = r.document( i );
 

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java Fri Mar  7 03:53:06 2014
@@ -38,11 +38,14 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.index.CorruptIndexException;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
+import org.apache.lucene.store.IOContext;
 import org.apache.lucene.store.IndexInput;
 import org.apache.lucene.store.LockObtainFailedException;
+import org.apache.lucene.util.Bits;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.context.IndexCreator;
 import org.apache.maven.index.context.IndexUtils;
@@ -301,19 +304,20 @@ public class DefaultIndexPacker
         throws CorruptIndexException, LockObtainFailedException, IOException
     {
         IndexWriter w = null;
+        Bits liveDocs = MultiFields.getLiveDocs(r);
         try
         {
             w = new NexusIndexWriter( targetdir, new NexusLegacyAnalyzer(), true );
 
             for ( int i = 0; i < r.maxDoc(); i++ )
             {
-                if ( !r.isDeleted( i ) )
+                if ( liveDocs.get(i) )
                 {
                     w.addDocument( updateLegacyDocument( r.document( i ), context ) );
                 }
             }
 
-            w.optimize();
+            //w.optimize();
             w.commit();
         }
         finally
@@ -390,7 +394,7 @@ public class DefaultIndexPacker
 
         zos.putNextEntry( e );
 
-        IndexInput in = directory.openInput( name );
+        IndexInput in = directory.openInput( name, IOContext.DEFAULT );
 
         try
         {

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java Fri Mar  7 03:53:06 2014
@@ -46,10 +46,12 @@ import org.apache.lucene.document.Docume
 import org.apache.lucene.index.CorruptIndexException;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
 import org.apache.lucene.store.IndexOutput;
 import org.apache.lucene.store.LockObtainFailedException;
+import org.apache.lucene.util.Bits;
 import org.apache.maven.index.context.DocumentFilter;
 import org.apache.maven.index.context.IndexUtils;
 import org.apache.maven.index.context.IndexingContext;
@@ -342,16 +344,18 @@ public class DefaultIndexUpdater
         {
             r = IndexReader.open( sourcedir );
             w = new NexusIndexWriter( targetdir, new NexusAnalyzer(), true );
+            Bits liveDocs = MultiFields.getLiveDocs(r);
 
             for ( int i = 0; i < r.maxDoc(); i++ )
             {
-                if ( !r.isDeleted( i ) )
+                if ( liveDocs.get(i) )
                 {
                     w.addDocument( IndexUtils.updateDocument( r.document( i ), context ) );
                 }
             }
 
-            w.optimize();
+            //FIXME
+            //w.optimize();
             w.commit();
         }
         finally
@@ -369,12 +373,13 @@ public class DefaultIndexUpdater
         {
             // explicitly RW reader needed
             r = IndexReader.open( directory, false );
+            Bits liveDocs = MultiFields.getLiveDocs(r);
 
             int numDocs = r.maxDoc();
 
             for ( int i = 0; i < numDocs; i++ )
             {
-                if ( r.isDeleted( i ) )
+                if (! liveDocs.get(i) )
                 {
                     continue;
                 }
@@ -398,7 +403,8 @@ public class DefaultIndexUpdater
             // analyzer is unimportant, since we are not adding/searching to/on index, only reading/deleting
             w = new NexusIndexWriter( directory, new NexusAnalyzer(), false );
 
-            w.optimize();
+            //FIXME
+            //w.optimize();
 
             w.commit();
         }

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataReader.java Fri Mar  7 03:53:06 2014
@@ -28,7 +28,6 @@ import java.io.InputStream;
 import java.io.UTFDataFormatException;
 import java.util.Date;
 import java.util.zip.GZIPInputStream;
-
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.Field.Index;
@@ -95,7 +94,9 @@ public class IndexDataReader
         }
 
         w.commit();
-        w.optimize();
+        
+        //FIXME
+        //w.optimize();
 
         IndexDataReadResult result = new IndexDataReadResult();
         result.setDocumentCount( n );

Modified: maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java
URL: http://svn.apache.org/viewvc/maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java?rev=1575142&r1=1575141&r2=1575142&view=diff
==============================================================================
--- maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java (original)
+++ maven/indexer/branches/lucene-4.6/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java Fri Mar  7 03:53:06 2014
@@ -30,12 +30,15 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 import java.util.zip.GZIPOutputStream;
-
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
-import org.apache.lucene.document.Fieldable;
+import org.apache.lucene.document.Field.Store;
+import org.apache.lucene.document.StringField;
 import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.index.IndexableField;
+import org.apache.lucene.index.MultiFields;
 import org.apache.lucene.search.IndexSearcher;
+import org.apache.lucene.util.Bits;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.context.DefaultIndexingContext;
 import org.apache.maven.index.context.IndexingContext;
@@ -128,20 +131,16 @@ public class IndexDataWriter
         throws IOException
     {
         {
-            List<Fieldable> allGroupsFields = new ArrayList<Fieldable>( 2 );
-            allGroupsFields.add( new Field( ArtifactInfo.ALL_GROUPS, ArtifactInfo.ALL_GROUPS_VALUE, Field.Store.YES,
-                Field.Index.NOT_ANALYZED ) );
-            allGroupsFields.add( new Field( ArtifactInfo.ALL_GROUPS_LIST, ArtifactInfo.lst2str( allGroups ),
-                Field.Store.YES, Field.Index.NO ) );
+            List<Field> allGroupsFields = new ArrayList<Field>( 2 );
+            allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS, ArtifactInfo.ALL_GROUPS_VALUE, Store.YES));
+            allGroupsFields.add( new StringField( ArtifactInfo.ALL_GROUPS_LIST, ArtifactInfo.lst2str( allGroups ), Store.YES) );
             writeDocumentFields( allGroupsFields );
         }
 
         {
-            List<Fieldable> rootGroupsFields = new ArrayList<Fieldable>( 2 );
-            rootGroupsFields.add( new Field( ArtifactInfo.ROOT_GROUPS, ArtifactInfo.ROOT_GROUPS_VALUE, Field.Store.YES,
-                Field.Index.NOT_ANALYZED ) );
-            rootGroupsFields.add( new Field( ArtifactInfo.ROOT_GROUPS_LIST, ArtifactInfo.lst2str( rootGroups ),
-                Field.Store.YES, Field.Index.NO ) );
+            List<Field> rootGroupsFields = new ArrayList<Field>( 2 );
+            rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS, ArtifactInfo.ROOT_GROUPS_VALUE, Store.YES) );
+            rootGroupsFields.add( new StringField( ArtifactInfo.ROOT_GROUPS_LIST, ArtifactInfo.lst2str( rootGroups ), Store.YES ));
             writeDocumentFields( rootGroupsFields );
         }
     }
@@ -150,12 +149,13 @@ public class IndexDataWriter
         throws IOException
     {
         int n = 0;
+        Bits liveDocs = MultiFields.getLiveDocs(r);
 
         if ( docIndexes == null )
         {
             for ( int i = 0; i < r.maxDoc(); i++ )
             {
-                if ( !r.isDeleted( i ) )
+                if ( liveDocs.get(i) )
                 {
                     if ( writeDocument( r.document( i ) ) )
                     {
@@ -168,7 +168,7 @@ public class IndexDataWriter
         {
             for ( int i : docIndexes )
             {
-                if ( !r.isDeleted( i ) )
+                if ( liveDocs.get(i) )
                 {
                     if ( writeDocument( r.document( i ) ) )
                     {
@@ -184,11 +184,11 @@ public class IndexDataWriter
     public boolean writeDocument( final Document document )
         throws IOException
     {
-        List<Fieldable> fields = document.getFields();
+        List<IndexableField> fields = document.getFields();
 
-        List<Fieldable> storedFields = new ArrayList<Fieldable>( fields.size() );
+        List<Field> storedFields = new ArrayList<Field>( fields.size() );
 
-        for ( Fieldable field : fields )
+        for ( IndexableField field : fields )
         {
             if ( DefaultIndexingContext.FLD_DESCRIPTOR.equals( field.name() ) )
             {
@@ -226,7 +226,7 @@ public class IndexDataWriter
                 return false;
             }
 
-            if ( field.isStored() )
+            if ( field.fieldType().stored())
             {
                 storedFields.add( field );
             }
@@ -237,23 +237,23 @@ public class IndexDataWriter
         return true;
     }
 
-    public void writeDocumentFields( List<Fieldable> fields )
+    public void writeDocumentFields( List<Field> fields )
         throws IOException
     {
         dos.writeInt( fields.size() );
 
-        for ( Fieldable field : fields )
+        for ( Field field : fields )
         {
             writeField( field );
         }
     }
 
-    public void writeField( Fieldable field )
+    public void writeField( Field field )
         throws IOException
     {
-        int flags = ( field.isIndexed() ? F_INDEXED : 0 ) //
-            + ( field.isTokenized() ? F_TOKENIZED : 0 ) //
-            + ( field.isStored() ? F_STORED : 0 ); //
+        int flags = ( field.fieldType().indexed() ? F_INDEXED : 0 ) //
+            + ( field.fieldType().tokenized() ? F_TOKENIZED : 0 ) //
+            + ( field.fieldType().stored() ? F_STORED : 0 ); //
         // + ( false ? F_COMPRESSED : 0 ); // Compressed not supported anymore
 
         String name = field.name();