You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by og...@apache.org on 2008/11/17 22:57:51 UTC
svn commit: r718405 - in /maven/mercury/trunk: mercury-it/
mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/
mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/
mercury-repo/mercury-repo-cache-fs/src/m...
Author: ogusakov
Date: Mon Nov 17 13:57:51 2008
New Revision: 718405
URL: http://svn.apache.org/viewvc?rev=718405&view=rev
Log:
fixed cache bug introduced by optimization, ITs work now
Modified:
maven/mercury/trunk/mercury-it/pom.xml
maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/VirtualRepositoryReaderIntegratedTest.java
maven/mercury/trunk/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/RepositoryGAVMetadata.java
maven/mercury/trunk/mercury-repo/mercury-repo-cache-fs/src/main/java/org/apache/maven/mercury/repository/cache/fs/MetadataCacheFs.java
Modified: maven/mercury/trunk/mercury-it/pom.xml
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-it/pom.xml?rev=718405&r1=718404&r2=718405&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-it/pom.xml (original)
+++ maven/mercury/trunk/mercury-it/pom.xml Mon Nov 17 13:57:51 2008
@@ -18,7 +18,7 @@
<nexus.client.version>1.1-M1</nexus.client.version>
<jetty.version>6.1.12.rc2</jetty.version>
- <nexus-security-enabled>true</nexus-security-enabled>
+ <nexus-security-enabled>false</nexus-security-enabled>
<bundle-expanded-dir>target</bundle-expanded-dir>
<config-expanded-dir>target/test-nexus-config</config-expanded-dir>
Modified: maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/VirtualRepositoryReaderIntegratedTest.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/VirtualRepositoryReaderIntegratedTest.java?rev=718405&r1=718404&r2=718405&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/VirtualRepositoryReaderIntegratedTest.java (original)
+++ maven/mercury/trunk/mercury-it/src/test/java/org/apache/maven/mercury/repository/tests/VirtualRepositoryReaderIntegratedTest.java Mon Nov 17 13:57:51 2008
@@ -134,7 +134,7 @@
assertEquals( 5, versions.size() );
- Thread.sleep( 3000L );
+ Thread.sleep( 4000L );
// repository policy is 2 sec, this should cause VR to re-read metadata
// should now have 6 versions
@@ -157,6 +157,7 @@
}
finally
{
+ // restore back 5 versions
File mdf = new File( _testBase, "a/a/maven-metadata.xml");
InputStream in = VirtualRepositoryReaderIntegratedTest.class.getResourceAsStream( "/repoVr/a.a-maven-metadata.xml" );
FileUtil.writeRawData( mdf, in );
Modified: maven/mercury/trunk/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/RepositoryGAVMetadata.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/RepositoryGAVMetadata.java?rev=718405&r1=718404&r2=718405&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/RepositoryGAVMetadata.java (original)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-api/src/main/java/org/apache/maven/mercury/repository/api/RepositoryGAVMetadata.java Mon Nov 17 13:57:51 2008
@@ -1,5 +1,6 @@
package org.apache.maven.mercury.repository.api;
+import java.text.ParseException;
import java.util.Collection;
import java.util.List;
import java.util.TreeSet;
@@ -126,6 +127,12 @@
{
return lastCheck;
}
+
+ public long getLastCheckMillis()
+ throws ParseException
+ {
+ return TimeUtil.toMillis( lastCheck );
+ }
public void updateSnapshots( Collection<String> snapshots )
{
Modified: maven/mercury/trunk/mercury-repo/mercury-repo-cache-fs/src/main/java/org/apache/maven/mercury/repository/cache/fs/MetadataCacheFs.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-repo/mercury-repo-cache-fs/src/main/java/org/apache/maven/mercury/repository/cache/fs/MetadataCacheFs.java?rev=718405&r1=718404&r2=718405&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-repo/mercury-repo-cache-fs/src/main/java/org/apache/maven/mercury/repository/cache/fs/MetadataCacheFs.java (original)
+++ maven/mercury/trunk/mercury-repo/mercury-repo-cache-fs/src/main/java/org/apache/maven/mercury/repository/cache/fs/MetadataCacheFs.java Mon Nov 17 13:57:51 2008
@@ -96,7 +96,17 @@
RepositoryGAMetadata inMem = gaCache.get( gaKey );
if( inMem != null )
+ {
+ long lastCheckMillis = inMem.getLastCheckMillis();
+
+ if( up.timestampExpired( lastCheckMillis ) )
+ {
+ inMem.setExpired( true );
+ gaCache.put( gaKey, inMem );
+ }
+
return inMem;
+ }
File gaDir = getGADir(coord);
@@ -114,10 +124,10 @@
{
md.setExpired( true );
}
+
+ gaCache.put( gaKey, md );
}
- gaCache.put( gaKey, md );
-
return md;
}
catch( Exception e )
@@ -137,7 +147,17 @@
RepositoryGAVMetadata inMem = gavCache.get( gavKey );
if( inMem != null )
+ {
+ long lastCheckMillis = inMem.getLastCheckMillis();
+
+ if( up.timestampExpired( lastCheckMillis ) )
+ {
+ inMem.setExpired( true );
+ gavCache.put( gavKey, inMem );
+ }
+
return inMem;
+ }
File gavDir = getGAVDir( coord );
@@ -153,10 +173,10 @@
if( up != null && up.timestampExpired( md.getLastCheck() ) )
md.setExpired( true );
+
+ gavCache.put( gavKey, md );
}
- gavCache.put( gavKey, md );
-
return md;
}
catch( Exception e )