You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by cs...@apache.org on 2012/08/13 14:09:14 UTC
svn commit: r1372380 [2/2] - in /maven/indexer/trunk/indexer-core/src:
main/java/org/apache/maven/index/ main/java/org/apache/maven/index/cli/
main/java/org/apache/maven/index/context/
main/java/org/apache/maven/index/incremental/ main/java/org/apache/...
Modified: maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java (original)
+++ maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/packer/DefaultIndexPacker.java Mon Aug 13 12:09:13 2012
@@ -38,6 +38,7 @@ 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.search.IndexSearcher;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.store.IndexInput;
@@ -109,108 +110,97 @@ public class DefaultIndexPacker
final IndexingContext context = request.getContext();
- context.lock();
-
try
{
- try
+ // Note that for incremental indexes to work properly, a valid index.properties file
+ // must be present
+ info = readIndexProperties( request );
+
+ if ( request.isCreateIncrementalChunks() )
{
- // Note that for incremental indexes to work properly, a valid index.properties file
- // must be present
- info = readIndexProperties( request );
+ List<Integer> chunk = incrementalHandler.getIncrementalUpdates( request, info );
- if ( request.isCreateIncrementalChunks() )
+ if ( chunk == null )
{
- List<Integer> chunk = incrementalHandler.getIncrementalUpdates( request, info );
+ getLogger().debug( "Problem with Chunks, forcing regeneration of whole index" );
+ incrementalHandler.initializeProperties( info );
+ }
+ else if ( chunk.isEmpty() )
+ {
+ getLogger().debug( "No incremental changes, not writing new incremental chunk" );
+ }
+ else
+ {
+ File file =
+ new File( request.getTargetDir(), //
+ IndexingContext.INDEX_FILE_PREFIX + "."
+ + info.getProperty( IndexingContext.INDEX_CHUNK_COUNTER ) + ".gz" );
- if ( chunk == null )
- {
- getLogger().debug( "Problem with Chunks, forcing regeneration of whole index" );
- incrementalHandler.initializeProperties( info );
- }
- else if ( chunk.isEmpty() )
- {
- getLogger().debug( "No incremental changes, not writing new incremental chunk" );
- }
- else
+ writeIndexData( request.getContext(), //
+ chunk, file );
+
+ if ( request.isCreateChecksumFiles() )
{
- File file =
- new File( request.getTargetDir(), //
- IndexingContext.INDEX_FILE_PREFIX + "."
- + info.getProperty( IndexingContext.INDEX_CHUNK_COUNTER ) + ".gz" );
-
- writeIndexData( request.getContext(), //
- chunk, file );
-
- if ( request.isCreateChecksumFiles() )
- {
- FileUtils.fileWrite(
- new File( file.getParentFile(), file.getName() + ".sha1" ).getAbsolutePath(),
- DigesterUtils.getSha1Digest( file ) );
-
- FileUtils.fileWrite(
- new File( file.getParentFile(), file.getName() + ".md5" ).getAbsolutePath(),
- DigesterUtils.getMd5Digest( file ) );
- }
+ FileUtils.fileWrite(
+ new File( file.getParentFile(), file.getName() + ".sha1" ).getAbsolutePath(),
+ DigesterUtils.getSha1Digest( file ) );
+
+ FileUtils.fileWrite(
+ new File( file.getParentFile(), file.getName() + ".md5" ).getAbsolutePath(),
+ DigesterUtils.getMd5Digest( file ) );
}
}
}
- catch ( IOException e )
- {
- getLogger().info( "Unable to read properties file, will force index regeneration" );
- info = new Properties();
- incrementalHandler.initializeProperties( info );
- }
-
- Date timestamp = request.getContext().getTimestamp();
+ }
+ catch ( IOException e )
+ {
+ getLogger().info( "Unable to read properties file, will force index regeneration" );
+ info = new Properties();
+ incrementalHandler.initializeProperties( info );
+ }
- if ( timestamp == null )
- {
- timestamp = new Date( 0 ); // never updated
- }
+ Date timestamp = request.getContext().getTimestamp();
- if ( request.getFormats().contains( IndexPackingRequest.IndexFormat.FORMAT_LEGACY ) )
- {
- info.setProperty( IndexingContext.INDEX_LEGACY_TIMESTAMP, format( timestamp ) );
+ if ( timestamp == null )
+ {
+ timestamp = new Date( 0 ); // never updated
+ }
- writeIndexArchive( request.getContext(), legacyFile );
+ if ( request.getFormats().contains( IndexPackingRequest.IndexFormat.FORMAT_LEGACY ) )
+ {
+ info.setProperty( IndexingContext.INDEX_LEGACY_TIMESTAMP, format( timestamp ) );
- if ( request.isCreateChecksumFiles() )
- {
- FileUtils.fileWrite(
- new File( legacyFile.getParentFile(), legacyFile.getName() + ".sha1" ).getAbsolutePath(),
- DigesterUtils.getSha1Digest( legacyFile ) );
-
- FileUtils.fileWrite(
- new File( legacyFile.getParentFile(), legacyFile.getName() + ".md5" ).getAbsolutePath(),
- DigesterUtils.getMd5Digest( legacyFile ) );
- }
- }
+ writeIndexArchive( request.getContext(), legacyFile );
- if ( request.getFormats().contains( IndexPackingRequest.IndexFormat.FORMAT_V1 ) )
+ if ( request.isCreateChecksumFiles() )
{
- info.setProperty( IndexingContext.INDEX_TIMESTAMP, format( timestamp ) );
-
- writeIndexData( request.getContext(), null, v1File );
+ FileUtils.fileWrite(
+ new File( legacyFile.getParentFile(), legacyFile.getName() + ".sha1" ).getAbsolutePath(),
+ DigesterUtils.getSha1Digest( legacyFile ) );
- if ( request.isCreateChecksumFiles() )
- {
- FileUtils.fileWrite(
- new File( v1File.getParentFile(), v1File.getName() + ".sha1" ).getAbsolutePath(),
- DigesterUtils.getSha1Digest( v1File ) );
-
- FileUtils.fileWrite(
- new File( v1File.getParentFile(), v1File.getName() + ".md5" ).getAbsolutePath(),
- DigesterUtils.getMd5Digest( v1File ) );
- }
+ FileUtils.fileWrite(
+ new File( legacyFile.getParentFile(), legacyFile.getName() + ".md5" ).getAbsolutePath(),
+ DigesterUtils.getMd5Digest( legacyFile ) );
}
-
- writeIndexProperties( request, info );
}
- finally
+
+ if ( request.getFormats().contains( IndexPackingRequest.IndexFormat.FORMAT_V1 ) )
{
- context.unlock();
+ info.setProperty( IndexingContext.INDEX_TIMESTAMP, format( timestamp ) );
+
+ writeIndexData( request.getContext(), null, v1File );
+
+ if ( request.isCreateChecksumFiles() )
+ {
+ FileUtils.fileWrite( new File( v1File.getParentFile(), v1File.getName() + ".sha1" ).getAbsolutePath(),
+ DigesterUtils.getSha1Digest( v1File ) );
+
+ FileUtils.fileWrite( new File( v1File.getParentFile(), v1File.getName() + ".md5" ).getAbsolutePath(),
+ DigesterUtils.getMd5Digest( v1File ) );
+ }
}
+
+ writeIndexProperties( request, info );
}
private Properties readIndexProperties( IndexPackingRequest request )
@@ -290,7 +280,15 @@ public class DefaultIndexPacker
IndexUtils.updateTimestamp( context.getIndexDirectory(), context.getTimestamp() );
IndexUtils.updateTimestamp( fdir, context.getTimestamp() );
- copyLegacyDocuments( context.getIndexReader(), fdir, context );
+ final IndexSearcher indexSearcher = context.acquireIndexSearcher();
+ try
+ {
+ copyLegacyDocuments( indexSearcher.getIndexReader(), fdir, context );
+ }
+ finally
+ {
+ context.releaseIndexSearcher( indexSearcher );
+ }
packDirectory( fdir, os );
}
finally
Modified: maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java (original)
+++ maven/indexer/trunk/indexer-core/src/main/java/org/apache/maven/index/updater/IndexDataWriter.java Mon Aug 13 12:09:13 2012
@@ -35,6 +35,7 @@ import org.apache.lucene.document.Docume
import org.apache.lucene.document.Field;
import org.apache.lucene.document.Fieldable;
import org.apache.lucene.index.IndexReader;
+import org.apache.lucene.search.IndexSearcher;
import org.apache.maven.index.ArtifactInfo;
import org.apache.maven.index.context.DefaultIndexingContext;
import org.apache.maven.index.context.IndexingContext;
@@ -85,7 +86,16 @@ public class IndexDataWriter
{
writeHeader( context );
- int n = writeDocuments( context.getIndexReader(), docIndexes );
+ int n = 0;
+ final IndexSearcher indexSearcher = context.acquireIndexSearcher();
+ try
+ {
+ n = writeDocuments( indexSearcher.getIndexReader(), docIndexes );
+ }
+ finally
+ {
+ context.releaseIndexSearcher( indexSearcher );
+ }
writeGroupFields();
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java Mon Aug 13 12:09:13 2012
@@ -70,8 +70,6 @@ public class AbstractIndexCreatorHelper
FULL_CREATORS.add( mavenPlugin );
FULL_CREATORS.add( mavenArchetype );
FULL_CREATORS.add( jar );
-
- DefaultIndexingContext.BLOCKING_COMMIT = true;
}
protected void deleteDirectory( File dir )
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/AbstractRepoNexusIndexerTest.java Mon Aug 13 12:09:13 2012
@@ -519,7 +519,7 @@ public abstract class AbstractRepoNexusI
public void testPackaging()
throws Exception
{
- IndexReader reader = context.getIndexReader();
+ IndexReader reader = context.acquireIndexSearcher().getIndexReader();
for ( int i = 0; i < reader.maxDoc(); i++ )
{
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseTest.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseTest.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseTest.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseTest.java Mon Aug 13 12:09:13 2012
@@ -41,9 +41,6 @@ public class ConcurrentUseTest
protected void prepareNexusIndexer( NexusIndexer nexusIndexer )
throws Exception
{
- // This IS concurrent test, so here, unlike all other UTs, we DO want to have async commits
- DefaultIndexingContext.BLOCKING_COMMIT = false;
-
context =
nexusIndexer.addIndexingContext( "test-default", "test", repo, indexDir, null, null, DEFAULT_CREATORS );
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseWithMergedContextTest.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseWithMergedContextTest.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseWithMergedContextTest.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/ConcurrentUseWithMergedContextTest.java Mon Aug 13 12:09:13 2012
@@ -47,9 +47,6 @@ public class ConcurrentUseWithMergedCont
protected void prepareNexusIndexer( NexusIndexer nexusIndexer )
throws Exception
{
- // This IS concurrent test, so here, unlike all other UTs, we DO want to have async commits
- DefaultIndexingContext.BLOCKING_COMMIT = false;
-
context1 =
nexusIndexer.addIndexingContext( "test-default-member1", "test1", repo, indexDir1, null, null,
DEFAULT_CREATORS );
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/FSDirectoryDeleteTest.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/FSDirectoryDeleteTest.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/FSDirectoryDeleteTest.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/FSDirectoryDeleteTest.java Mon Aug 13 12:09:13 2012
@@ -21,6 +21,7 @@ package org.apache.maven.index;
import java.io.File;
+import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
import org.apache.maven.index.context.IndexingContext;
@@ -84,9 +85,14 @@ public class FSDirectoryDeleteTest
public void testIndexAndDelete()
throws Exception
{
- context.getIndexReader().maxDoc();
-
- otherContext.getIndexReader().maxDoc();
+ final IndexSearcher indexSearcher = context.acquireIndexSearcher();
+ final IndexSearcher otherIndexSearcher = otherContext.acquireIndexSearcher();
+
+ indexSearcher.getIndexReader().maxDoc();
+ otherIndexSearcher.getIndexReader().maxDoc();
+
+ context.releaseIndexSearcher( indexSearcher );
+ otherContext.releaseIndexSearcher( otherIndexSearcher );
context.replace( otherIndexDir );
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Index20081108RegressionTest.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Index20081108RegressionTest.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Index20081108RegressionTest.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Index20081108RegressionTest.java Mon Aug 13 12:09:13 2012
@@ -68,7 +68,7 @@ public class Index20081108RegressionTest
public void testExtension()
throws Exception
{
- assertEquals( 31, context.getIndexReader().numDocs() );
+ assertEquals( 31, context.getSize() );
{
Query q = nexusIndexer.constructQuery( MAVEN.GROUP_ID, "qdox", SearchType.SCORED );
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/Nexus737NexusIndexerTest.java Mon Aug 13 12:09:13 2012
@@ -44,7 +44,7 @@ public class Nexus737NexusIndexerTest
public void testValidateUINFOs()
throws Exception
{
- IndexReader reader = context.getIndexReader();
+ IndexReader reader = context.acquireIndexSearcher().getIndexReader();
int foundCount = 0;
Modified: maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/updater/IndexDataTest.java
URL: http://svn.apache.org/viewvc/maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/updater/IndexDataTest.java?rev=1372380&r1=1372379&r2=1372380&view=diff
==============================================================================
--- maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/updater/IndexDataTest.java (original)
+++ maven/indexer/trunk/indexer-core/src/test/java/org/apache/maven/index/updater/IndexDataTest.java Mon Aug 13 12:09:13 2012
@@ -115,7 +115,7 @@ public class IndexDataTest
public void testData()
throws Exception
{
- IndexReader r1 = context.getIndexReader();
+ IndexReader r1 = context.acquireIndexSearcher().getIndexReader();
Map<String, ArtifactInfo> r1map = readIndex( r1 );