This is an automated email from the ASF dual-hosted git repository.

slachiewicz pushed a commit to branch MINDEXER-104-lucene8
in repository https://gitbox.apache.org/repos/asf/maven-indexer.git

commit aa607b67fd10aa085d3905c7a6e86540404fa76e
Author: Mat Booth <mat.bo...@redhat.com>
AuthorDate: Thu Jun 13 09:49:49 2019 +0100

    [MINDEXER-104] Changes needed to migrate to Lucene 8
    
    Including:
      * Some static functions moved: MultiFields -> MultiBits
      * totalHits -> totalHits.value (and this type also changed int -> long)
      * Addtional threshold param added to TopScoreDocCollector.create calls
        and set conservatively high to preserve existing behaviour
      * Actually attempt to get the lock instead of calling IndexWriter.isLocked
      * Use TokenFilters to transform tokens to lower case
      * No need to set write lock timeout to zero, this functionality moved to a
        wrapper in the case we actually need timeouts in the future
      * No need to disable coord on boolean queries, this functionality went 
away
      * Fixing up NexusIndexerTest test results accordingly
      * Some misc other warnings fixed (unused variables and imports)
    
    Signed-off-by: Mat Booth <mat.bo...@redhat.com>
---
 .../java/org/apache/maven/index/ArtifactInfo.java  |  3 --
 .../apache/maven/index/DefaultIndexerEngine.java   |  2 +-
 .../apache/maven/index/DefaultScannerListener.java |  6 ++--
 .../apache/maven/index/DefaultSearchEngine.java    |  6 ++--
 .../index/context/DefaultIndexingContext.java      | 34 ++++++++++++++--------
 .../org/apache/maven/index/context/IndexUtils.java |  2 --
 .../apache/maven/index/context/NexusAnalyzer.java  | 21 ++++---------
 .../maven/index/context/NexusIndexWriter.java      |  1 -
 .../maven/index/context/NexusLegacyAnalyzer.java   | 12 ++++----
 .../incremental/DefaultIncrementalHandler.java     |  4 +--
 .../maven/index/updater/DefaultIndexUpdater.java   | 15 +++++-----
 .../maven/index/updater/IndexDataWriter.java       |  4 +--
 .../maven/index/AbstractRepoNexusIndexerTest.java  |  4 +--
 .../maven/index/Nexus737NexusIndexerTest.java      |  4 +--
 .../org/apache/maven/index/NexusIndexerTest.java   |  9 +++---
 .../maven/index/context/NexusAnalyzerTest.java     |  4 +--
 .../resources/testQueryCreatorNGSearch/case01.txt  |  2 +-
 .../resources/testQueryCreatorNGSearch/case05.txt  |  2 +-
 .../maven/indexer/examples/BasicUsageExample.java  |  4 +--
 pom.xml                                            |  2 +-
 20 files changed, 67 insertions(+), 74 deletions(-)

diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/ArtifactInfo.java 
b/indexer-core/src/main/java/org/apache/maven/index/ArtifactInfo.java
index c74e150..7f3d0ca 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/ArtifactInfo.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/ArtifactInfo.java
@@ -336,9 +336,6 @@ public class ArtifactInfo
 
     private final transient VersionScheme versionScheme;
 
-    private String uinfo = null;
-
-
     public ArtifactInfo()
     {
         versionScheme = new GenericVersionScheme();
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java 
b/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
index 87b7c2d..46965f0 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/DefaultIndexerEngine.java
@@ -160,7 +160,7 @@ public class DefaultIndexerEngine
                     indexSearcher.search(
                         new TermQuery( new Term( ArtifactInfo.UINFO, 
ac.getArtifactInfo().getUinfo() ) ), 2 );
 
-                if ( result.totalHits == 1 )
+                if ( result.totalHits.value == 1 )
                 {
                     return indexSearcher.doc( result.scoreDocs[0].doc );
                 }
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java 
b/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
index 01f6f4c..2d0c8ca 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/DefaultScannerListener.java
@@ -28,7 +28,7 @@ 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.MultiBits;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.TermQuery;
@@ -212,7 +212,7 @@ public class DefaultScannerListener
         try
         {
             final IndexReader r = indexSearcher.getIndexReader();
-            Bits liveDocs = MultiFields.getLiveDocs( r );
+            Bits liveDocs = MultiBits.getLiveDocs( r );
 
             for ( int i = 0; i < r.maxDoc(); i++ )
             {
@@ -261,7 +261,7 @@ public class DefaultScannerListener
         {
             for ( String uinfo : uinfos )
             {
-                TopScoreDocCollector collector = TopScoreDocCollector.create( 
1 );
+                TopScoreDocCollector collector = TopScoreDocCollector.create( 
1, Integer.MAX_VALUE );
 
                 indexSearcher.search( new TermQuery( new Term( 
ArtifactInfo.UINFO, uinfo ) ), collector );
 
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java 
b/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java
index 3155e6f..b52b870 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/DefaultSearchEngine.java
@@ -317,7 +317,7 @@ public class DefaultSearchEngine
         if ( AbstractSearchRequest.UNDEFINED != topHitCount )
         {
             // count is set, simply just execute it as-is
-            final TopScoreDocCollector hits = TopScoreDocCollector.create( 
topHitCount );
+            final TopScoreDocCollector hits = TopScoreDocCollector.create( 
topHitCount, Integer.MAX_VALUE );
 
             indexSearcher.search( query, hits );
 
@@ -329,7 +329,7 @@ public class DefaultSearchEngine
             topHitCount = 1000;
 
             // perform search
-            TopScoreDocCollector hits = TopScoreDocCollector.create( 
topHitCount );
+            TopScoreDocCollector hits = TopScoreDocCollector.create( 
topHitCount, Integer.MAX_VALUE );
             indexSearcher.search( query, hits );
 
             // check total hits against, does it fit?
@@ -348,7 +348,7 @@ public class DefaultSearchEngine
                 }
 
                 // redo all, but this time with correct numbers
-                hits = TopScoreDocCollector.create( topHitCount );
+                hits = TopScoreDocCollector.create( topHitCount, 
Integer.MAX_VALUE );
                 indexSearcher.search( query, hits );
             }
 
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java
 
b/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java
index 8e58206..7a6988a 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/context/DefaultIndexingContext.java
@@ -43,7 +43,7 @@ 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.MultiBits;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.SearcherManager;
@@ -242,7 +242,11 @@ public class DefaultIndexingContext
             try
             {
                 // unlock the dir forcibly
-                if ( IndexWriter.isLocked( indexDirectory ) )
+                try
+                {
+                    indexDirectory.obtainLock( IndexWriter.WRITE_LOCK_NAME 
).close();
+                }
+                catch ( LockObtainFailedException failed )
                 {
                     unlockForcibly( lockFactory, indexDirectory );
                 }
@@ -279,7 +283,11 @@ public class DefaultIndexingContext
             closeReaders();
 
             // unlock the dir forcibly
-            if ( IndexWriter.isLocked( indexDirectory ) )
+            try
+            {
+                indexDirectory.obtainLock( IndexWriter.WRITE_LOCK_NAME 
).close();
+            }
+            catch ( LockObtainFailedException failed )
             {
                 unlockForcibly( lockFactory, indexDirectory );
             }
@@ -310,7 +318,7 @@ public class DefaultIndexingContext
         // check for descriptor if this is not a "virgin" index
         if ( getSize() > 0 )
         {
-            final TopScoreDocCollector collector = 
TopScoreDocCollector.create( 1 );
+            final TopScoreDocCollector collector = 
TopScoreDocCollector.create( 1, Integer.MAX_VALUE );
             final IndexSearcher indexSearcher = acquireIndexSearcher();
             try
             {
@@ -531,7 +539,7 @@ public class DefaultIndexingContext
 
         this.indexWriter = new NexusIndexWriter( getIndexDirectory(), 
getWriterConfig() );
         this.indexWriter.commit(); // LUCENE-2386
-        this.searcherManager = new SearcherManager( indexWriter, false, new 
NexusIndexSearcherFactory( this ) );
+        this.searcherManager = new SearcherManager( indexWriter, false, false, 
new NexusIndexSearcherFactory( this ) );
     }
 
     /**
@@ -672,8 +680,8 @@ public class DefaultIndexingContext
             {
                 TopScoreDocCollector collector;
                 int numDocs = directoryReader.maxDoc();
-
-                Bits liveDocs = MultiFields.getLiveDocs( directoryReader );
+                
+                Bits liveDocs = MultiBits.getLiveDocs( directoryReader );
                 for ( int i = 0; i < numDocs; i++ )
                 {
                     if ( liveDocs != null && !liveDocs.get( i ) )
@@ -690,7 +698,7 @@ public class DefaultIndexingContext
                     String uinfo = d.get( ArtifactInfo.UINFO );
                     if ( uinfo != null )
                     {
-                        collector = TopScoreDocCollector.create( 1 );
+                        collector = TopScoreDocCollector.create( 1, 
Integer.MAX_VALUE );
                         s.search( new TermQuery( new Term( ArtifactInfo.UINFO, 
uinfo ) ), collector );
                         if ( collector.getTotalHits() == 0 )
                         {
@@ -777,7 +785,7 @@ public class DefaultIndexingContext
             Set<String> allGroups = new LinkedHashSet<>();
 
             int numDocs = r.maxDoc();
-            Bits liveDocs = MultiFields.getLiveDocs( r );
+            Bits liveDocs = MultiBits.getLiveDocs( r );
 
             for ( int i = 0; i < numDocs; i++ )
             {
@@ -838,14 +846,16 @@ public class DefaultIndexingContext
     protected Set<String> getGroups( String field, String filedValue, String 
listField )
         throws IOException, CorruptIndexException
     {
-        final TopScoreDocCollector collector = TopScoreDocCollector.create( 1 
);
+        final TopScoreDocCollector collector = TopScoreDocCollector.create( 1, 
Integer.MAX_VALUE );
         final IndexSearcher indexSearcher = acquireIndexSearcher();
         try
         {
             indexSearcher.search( new TermQuery( new Term( field, filedValue ) 
), collector );
             TopDocs topDocs = collector.topDocs();
-            Set<String> groups = new LinkedHashSet<>( Math.max( 10, 
topDocs.totalHits ) );
-            if ( topDocs.totalHits > 0 )
+            // In Lucene 7 topDocs.totalHits is now a long, but we can safely 
cast this to an int because
+            // indexes are still bound to at most 2 billion 
(Integer.MAX_VALUE) documents
+            Set<String> groups = new LinkedHashSet<String>( (int) Math.max( 
10L, topDocs.totalHits.value ) );
+            if ( topDocs.totalHits.value > 0 )
             {
                 Document doc = indexSearcher.doc( topDocs.scoreDocs[0].doc );
                 String groupList = doc.get( listField );
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java 
b/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java
index f7ef771..65b891d 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/context/IndexUtils.java
@@ -44,8 +44,6 @@ public class IndexUtils
 {
     public static final String TIMESTAMP_FILE = "timestamp";
 
-    private static final int BUFFER_SIZE = 16384;
-
     // Directory
 
     public static void copyDirectory( Directory source, Directory target )
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java 
b/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java
index b5f49b1..95624ff 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/context/NexusAnalyzer.java
@@ -21,6 +21,8 @@ package org.apache.maven.index.context;
 
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.AnalyzerWrapper;
+import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.LowerCaseFilter;
 import org.apache.lucene.analysis.util.CharTokenizer;
 import org.apache.maven.index.creator.JarFileContentsIndexCreator;
 
@@ -40,7 +42,8 @@ public final class NexusAnalyzer
         @Override
         protected TokenStreamComponents createComponents( String fieldName )
         {
-            return new TokenStreamComponents( new 
DeprecatedClassnamesTokenizer() );
+            final Tokenizer tokenizer = new DeprecatedClassnamesTokenizer();
+            return new TokenStreamComponents( tokenizer, new LowerCaseFilter( 
tokenizer ) );
         }
     };
 
@@ -49,7 +52,8 @@ public final class NexusAnalyzer
         @Override
         protected TokenStreamComponents createComponents( String filedName )
         {
-            return new TokenStreamComponents( new LetterOrDigitTokenizer() );
+            final Tokenizer tokenizer = new LetterOrDigitTokenizer();
+            return new TokenStreamComponents( tokenizer, new LowerCaseFilter( 
tokenizer ) );
         }
     };
 
@@ -103,12 +107,6 @@ public final class NexusAnalyzer
         {
             return i != '\n';
         }
-        
-        @Override
-        protected int normalize( int c )
-        {
-            return Character.toLowerCase( c );
-        }
     }
 
     public static class LetterOrDigitTokenizer
@@ -124,12 +122,5 @@ public final class NexusAnalyzer
         {
             return Character.isLetterOrDigit( c );
         }
-
-        @Override
-        protected int normalize( int c )
-        {
-            return Character.toLowerCase( c );
-        }
     }
-
 }
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java
 
b/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java
index eb2246b..a93ed10 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/context/NexusIndexWriter.java
@@ -63,7 +63,6 @@ public class NexusIndexWriter
         // default open mode is CreateOrAppend which suits us
         config.setRAMBufferSizeMB( 2.0 ); // old default
         config.setMergeScheduler( new SerialMergeScheduler() ); // merging 
serially
-        config.setWriteLockTimeout( IndexWriterConfig.WRITE_LOCK_TIMEOUT );
         return config;
     }
 }
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java
 
b/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java
index 4cb15ce..21d8a41 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/context/NexusLegacyAnalyzer.java
@@ -21,6 +21,8 @@ package org.apache.maven.index.context;
 
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.AnalyzerWrapper;
+import org.apache.lucene.analysis.LowerCaseFilter;
+import org.apache.lucene.analysis.Tokenizer;
 import org.apache.lucene.analysis.util.CharTokenizer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
 import org.apache.maven.index.ArtifactInfo;
@@ -42,20 +44,16 @@ public final class NexusLegacyAnalyzer
         @Override
         protected TokenStreamComponents createComponents( final String 
fieldName )
         {
-            return new TokenStreamComponents( new CharTokenizer()
+            final Tokenizer tokenizer = new CharTokenizer()
             {
                 @Override
                 protected boolean isTokenChar( int c )
                 {
                     return Character.isLetterOrDigit( c );
                 }
+            };
 
-                @Override
-                protected int normalize( int c )
-                {
-                    return Character.toLowerCase( c );
-                }
-            } );
+            return new TokenStreamComponents( tokenizer, new LowerCaseFilter( 
tokenizer ) );
         }
     };
 
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
 
b/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
index a99d140..e3689cb 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/incremental/DefaultIncrementalHandler.java
@@ -39,7 +39,7 @@ import javax.inject.Singleton;
 
 import org.apache.lucene.document.Document;
 import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.MultiBits;
 import org.apache.lucene.util.Bits;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.context.IndexingContext;
@@ -157,7 +157,7 @@ public class DefaultIncrementalHandler
     {
         final List<Integer> chunk = new ArrayList<>();
         final IndexReader r = request.getIndexReader();
-        Bits liveDocs = MultiFields.getLiveDocs( r );
+        Bits liveDocs = MultiBits.getLiveDocs( r );
         for ( int i = 0; i < r.maxDoc(); i++ )
         {
             if ( liveDocs == null || liveDocs.get( i ) )
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
 
b/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
index 0bdf03e..cbc3f60 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/updater/DefaultIndexUpdater.java
@@ -48,7 +48,8 @@ import org.apache.lucene.document.Document;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexWriter;
-import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.IndexWriterConfig;
+import org.apache.lucene.index.MultiBits;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.Bits;
 import org.apache.maven.index.context.DocumentFilter;
@@ -260,9 +261,9 @@ public class DefaultIndexUpdater
         try
         {
             r = DirectoryReader.open( directory );
-            w = new NexusIndexWriter( directory, new NexusAnalyzer(), false );
-            
-            Bits liveDocs = MultiFields.getLiveDocs( r );
+            w = new NexusIndexWriter( directory, new IndexWriterConfig( new 
NexusAnalyzer() ) );
+
+            Bits liveDocs = MultiBits.getLiveDocs( r );
 
             int numDocs = r.maxDoc();
 
@@ -277,7 +278,7 @@ public class DefaultIndexUpdater
 
                 if ( !filter.accept( d ) )
                 {
-                    boolean success = w.tryDeleteDocument( r, i );
+                    boolean success = w.tryDeleteDocument( r, i ) != -1;
                     // FIXME handle deletion failure
                 }
             }
@@ -293,7 +294,7 @@ public class DefaultIndexUpdater
         try
         {
             // analyzer is unimportant, since we are not adding/searching 
to/on index, only reading/deleting
-            w = new NexusIndexWriter( directory, new NexusAnalyzer(), false );
+            w = new NexusIndexWriter( directory, new IndexWriterConfig( new 
NexusAnalyzer() ) );
 
             w.commit();
         }
@@ -381,7 +382,7 @@ public class DefaultIndexUpdater
                                                        final IndexingContext 
context )
         throws IOException
     {
-        NexusIndexWriter w = new NexusIndexWriter( d, new NexusAnalyzer(), 
true );
+        NexusIndexWriter w = new NexusIndexWriter( d, new IndexWriterConfig( 
new NexusAnalyzer() ) );
         try
         {
             IndexDataReader dr = new IndexDataReader( is );
diff --git 
a/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java
 
b/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java
index 00090fb..bd759fe 100644
--- 
a/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java
+++ 
b/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java
@@ -35,7 +35,7 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.index.IndexOptions;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.IndexableField;
-import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.MultiBits;
 import org.apache.lucene.util.Bits;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.IndexerField;
@@ -143,7 +143,7 @@ public class IndexDataWriter
         throws IOException
     {
         int n = 0;
-        Bits liveDocs = MultiFields.getLiveDocs( r );
+        Bits liveDocs = MultiBits.getLiveDocs( r );
 
         if ( docIndexes == null )
         {
diff --git 
a/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java
 
b/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java
index 554ff7a..49919c5 100644
--- 
a/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java
+++ 
b/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java
@@ -29,7 +29,7 @@ import java.util.Set;
 
 import org.apache.lucene.document.Document;
 import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.MultiBits;
 import org.apache.lucene.search.Query;
 import org.apache.lucene.util.Bits;
 import org.apache.maven.index.search.grouping.GAGrouping;
@@ -514,7 +514,7 @@ public abstract class AbstractRepoNexusIndexerTest
     {
         IndexReader reader = context.acquireIndexSearcher().getIndexReader();
 
-        Bits liveDocs = MultiFields.getLiveDocs(reader);
+        Bits liveDocs = MultiBits.getLiveDocs(reader);
         for ( int i = 0; i < reader.maxDoc(); i++ )
         {
             if (liveDocs == null || liveDocs.get(i) )
diff --git 
a/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java
 
b/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java
index adb8393..8d073ec 100644
--- 
a/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java
+++ 
b/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java
@@ -23,7 +23,7 @@ import java.io.File;
 
 import org.apache.lucene.document.Document;
 import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.MultiBits;
 import org.apache.lucene.util.Bits;
 
 /** http://issues.sonatype.org/browse/NEXUS-737 */
@@ -45,7 +45,7 @@ public class Nexus737NexusIndexerTest
         throws Exception
     {
         IndexReader reader = context.acquireIndexSearcher().getIndexReader();
-        Bits liveDocs = MultiFields.getLiveDocs(reader);
+        Bits liveDocs = MultiBits.getLiveDocs(reader);
 
         int foundCount = 0;
 
diff --git 
a/indexer-core/src/test/java/org/apache/maven/index/NexusIndexerTest.java 
b/indexer-core/src/test/java/org/apache/maven/index/NexusIndexerTest.java
index ec99400..a221747 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/NexusIndexerTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/NexusIndexerTest.java
@@ -80,7 +80,7 @@ public class NexusIndexerTest
         
         // scored search against field having tokenized IndexerField only 
(should be impossible).
         q = indexer.constructQuery( MAVEN.NAME, "Some artifact name from Pom", 
SearchType.SCORED );
-        assertThat(q.toString(), is("(+n:some +n:artifact +n:name +n:from 
+n:pom*) n:\"some artifact name from pom\""));
+        assertThat(q.toString(), is("(+n:some +n:artifact +n:name +n:from 
+n:Pom*) n:\"some artifact name from pom\""));
     }
     
     public void testQueryCreatorNG()
@@ -116,19 +116,19 @@ public class NexusIndexerTest
         // scored search against field having untokenized indexerField only
         q = indexer.constructQuery( MAVEN.PACKAGING, "maven-archetype", 
SearchType.SCORED );
 
-        assertEquals( "p:maven-archetype p:maven-archetype*^0.8", q.toString() 
);
+        assertEquals( "p:maven-archetype (p:maven-archetype*)^0.8", 
q.toString() );
 
         // scored search against field having untokenized indexerField only
         q = indexer.constructQuery( MAVEN.ARTIFACT_ID, "commons-logging", 
SearchType.SCORED );
 
         assertEquals(
-            "(a:commons-logging a:commons-logging*^0.8) ((+artifactId:commons 
+artifactId:logging*) artifactId:\"commons logging\")",
+            "(a:commons-logging (a:commons-logging*)^0.8) 
((+artifactId:commons +artifactId:logging*) artifactId:\"commons logging\")",
             q.toString() );
 
         // scored search against field having tokenized IndexerField only 
(should be impossible).
         q = indexer.constructQuery( MAVEN.NAME, "Some artifact name from Pom", 
SearchType.SCORED );
 
-        assertEquals( "(+n:some +n:artifact +n:name +n:from +n:pom*) n:\"some 
artifact name from pom\"", q.toString() );
+        assertEquals( "(+n:some +n:artifact +n:name +n:from +n:Pom*) n:\"some 
artifact name from pom\"", q.toString() );
 
         // keyword search against field having tokenized IndexerField only 
(should be impossible).
         q = indexer.constructQuery( MAVEN.NAME, "some artifact name from Pom", 
SearchType.EXACT );
@@ -439,7 +439,6 @@ public class NexusIndexerTest
 
         {
             BooleanQuery bq = new BooleanQuery.Builder()
-                .setDisableCoord( true )
                 .add( new WildcardQuery( new Term( ArtifactInfo.GROUP_ID, 
"testng*" ) ), Occur.SHOULD )
                 .add( new WildcardQuery( new Term( ArtifactInfo.ARTIFACT_ID, 
"testng*" ) ), Occur.SHOULD )
                 .setMinimumNumberShouldMatch( 1 )
diff --git 
a/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java
 
b/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java
index 2793b64..a4929ab 100644
--- 
a/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java
+++ 
b/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java
@@ -26,7 +26,7 @@ import java.util.Arrays;
 
 import junit.framework.TestCase;
 
-import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
 import org.apache.maven.index.IndexerField;
 import org.apache.maven.index.creator.MinimalArtifactInfoIndexCreator;
@@ -55,7 +55,7 @@ public class NexusAnalyzerTest
     protected void runAndCompare( IndexerField indexerField, String text, 
String[] expected )
         throws IOException
     {
-        Tokenizer ts = (Tokenizer) 
nexusAnalyzer.tokenStream(indexerField.getKey(), new StringReader( text ) );
+        TokenStream ts = nexusAnalyzer.tokenStream(indexerField.getKey(), new 
StringReader( text ) );
         ts.reset();
 
         ArrayList<String> tokenList = new ArrayList<>();
diff --git 
a/indexer-core/src/test/resources/testQueryCreatorNGSearch/case01.txt 
b/indexer-core/src/test/resources/testQueryCreatorNGSearch/case01.txt
index 17691d9..f9f959c 100644
--- a/indexer-core/src/test/resources/testQueryCreatorNGSearch/case01.txt
+++ b/indexer-core/src/test/resources/testQueryCreatorNGSearch/case01.txt
@@ -1,4 +1,4 @@
-### Searched for field urn:maven#groupId (with 2 registered index fields) 
using query "commons-logg" (QC create LQL "(g:commons-logg g:commons-logg*^0.8) 
((+groupId:commons +groupId:logg*) groupId:"commons logg")")
+### Searched for field urn:maven#groupId (with 2 registered index fields) 
using query "commons-logg" (QC create LQL "(g:commons-logg 
(g:commons-logg*)^0.8) ((+groupId:commons +groupId:logg*) groupId:"commons 
logg")")
 test :: commons-logging:commons-logging:1.1:null:jar
 test :: commons-logging:commons-logging:1.1:sources:jar
 test :: commons-logging:commons-logging:1.0.4:null:jar
diff --git 
a/indexer-core/src/test/resources/testQueryCreatorNGSearch/case05.txt 
b/indexer-core/src/test/resources/testQueryCreatorNGSearch/case05.txt
index bd52ac6..485b3f5 100644
--- a/indexer-core/src/test/resources/testQueryCreatorNGSearch/case05.txt
+++ b/indexer-core/src/test/resources/testQueryCreatorNGSearch/case05.txt
@@ -1,4 +1,4 @@
-### Searched for field urn:maven#version (with 2 registered index fields) 
using query "1.0" (QC create LQL "(v:1.0 v:1.0*^0.8) ((+version:1 +version:0*) 
version:"1 0")")
+### Searched for field urn:maven#version (with 2 registered index fields) 
using query "1.0" (QC create LQL "(v:1.0 (v:1.0*)^0.8) ((+version:1 
+version:0*) version:"1 0")")
 test :: proptest:proptest-archetype:1.0:null:maven-archetype
 test :: org.apache.maven.plugins:maven-core-it-plugin:1.0:null:maven-plugin
 test :: org.apache.maven.plugins:maven-core-it-plugin:1.0:sources:jar
diff --git 
a/indexer-examples/indexer-examples-basic/src/main/java/org/apache/maven/indexer/examples/BasicUsageExample.java
 
b/indexer-examples/indexer-examples-basic/src/main/java/org/apache/maven/indexer/examples/BasicUsageExample.java
index a918dfd..b0cd9eb 100644
--- 
a/indexer-examples/indexer-examples-basic/src/main/java/org/apache/maven/indexer/examples/BasicUsageExample.java
+++ 
b/indexer-examples/indexer-examples-basic/src/main/java/org/apache/maven/indexer/examples/BasicUsageExample.java
@@ -21,7 +21,7 @@ package org.apache.maven.indexer.examples;
 
 import org.apache.lucene.document.Document;
 import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.MultiFields;
+import org.apache.lucene.index.MultiBits;
 import org.apache.lucene.search.BooleanClause.Occur;
 import org.apache.lucene.search.BooleanQuery;
 import org.apache.lucene.search.IndexSearcher;
@@ -202,7 +202,7 @@ public class BasicUsageExample
             try
             {
                 final IndexReader ir = searcher.getIndexReader();
-                Bits liveDocs = MultiFields.getLiveDocs( ir );
+                Bits liveDocs = MultiBits.getLiveDocs( ir );
                 for ( int i = 0; i < ir.maxDoc(); i++ )
                 {
                     if ( liveDocs == null || liveDocs.get( i ) )
diff --git a/pom.xml b/pom.xml
index 9ca82ae..68918d2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -90,7 +90,7 @@ under the License.
     
<checkstyle.violation.ignore>MagicNumber,ParameterNumber,MethodLength,JavadocType,AvoidNestedBlocks,InterfaceIsType</checkstyle.violation.ignore>
 
     <eclipse-sisu.version>0.3.4</eclipse-sisu.version>
-    <lucene.version>5.5.5</lucene.version>
+    <lucene.version>8.5.0</lucene.version>
     <maven.version>3.5.2</maven.version>
     <resolver.version>1.1.0</resolver.version>
     <archetype.version>2.4</archetype.version>

Reply via email to