You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2009/06/22 16:43:43 UTC
svn commit: r787257 - in /maven/components/branches/maven-2.2.0-RC: ./
apache-maven/ apache-maven/src/test/
maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/
maven-artifact-manager/src/test/java/org/apache/maven/artifact/resolver...
Author: jdcasey
Date: Mon Jun 22 14:43:42 2009
New Revision: 787257
URL: http://svn.apache.org/viewvc?rev=787257&view=rev
Log:
[MNG-4179] Merging from r779768 on 2.2.x branch.
Modified:
maven/components/branches/maven-2.2.0-RC/ (props changed)
maven/components/branches/maven-2.2.0-RC/apache-maven/ (props changed)
maven/components/branches/maven-2.2.0-RC/apache-maven/src/test/ (props changed)
maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java
maven/components/branches/maven-2.2.0-RC/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginValidator.java (props changed)
maven/components/branches/maven-2.2.0-RC/maven-integration-tests/ (props changed)
maven/components/branches/maven-2.2.0-RC/maven-model/src/test/ (props changed)
maven/components/branches/maven-2.2.0-RC/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java (props changed)
maven/components/branches/maven-2.2.0-RC/maven-toolchain/src/main/mdo/toolchains.mdo (props changed)
Propchange: maven/components/branches/maven-2.2.0-RC/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -3,5 +3,6 @@
/maven/components/branches/maven-2.1.0-M1-RC:690315,691793-694304
/maven/components/branches/maven-2.1.0-RC:688883,689695,689976,689990,752168,752428,752622,752653,753089-753090,753320,755086,755199,755215
/maven/components/branches/maven-2.1.x:751686,767628,767631,768817,768995,769010-769011
+/maven/components/branches/maven-2.2.x:779768
/maven/components/trunk:572229,720001,721902,726845,729292
/maven/sandbox/branches/maven/MNG-3379:678167
Propchange: maven/components/branches/maven-2.2.0-RC/apache-maven/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -3,6 +3,7 @@
/maven/components/branches/maven-2.1.0-M1-RC/apache-maven:690315,691793-694304
/maven/components/branches/maven-2.1.0-RC/apache-maven:688883,689695,689976,689990,752168,752428,752622,752653,753089-753090,753320,755086,755199,755215
/maven/components/branches/maven-2.1.x/apache-maven:751686,767628,767631,768995,769010-769011
+/maven/components/branches/maven-2.2.x/apache-maven:779768
/maven/components/trunk/apache-maven:720001,721902,726845,727688
/maven/components/trunk/maven-distribution:727688
/maven/sandbox/branches/maven/MNG-3379/apache-maven:678167
Propchange: maven/components/branches/maven-2.2.0-RC/apache-maven/src/test/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -2,3 +2,4 @@
/maven/components/branches/maven-2.0.x/apache-maven/src/test:736543
/maven/components/branches/maven-2.1.0-RC/apache-maven/src/test:752168,752428,752622,752653,753089-753090,753320,755086,755199,755215
/maven/components/branches/maven-2.1.x/apache-maven/src/test:751686,767628,767631,768995,769010-769011
+/maven/components/branches/maven-2.2.x/apache-maven/src/test:779768
Modified: maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java?rev=787257&r1=787256&r2=787257&view=diff
==============================================================================
--- maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java (original)
+++ maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java Mon Jun 22 14:43:42 2009
@@ -431,11 +431,6 @@
try
{
resolveArtifact( node );
- if ( i.hasNext() )
- {
- pool.execute( new ResolveArtifactTask( pool, latch, nodes, localRepository, resolvedArtifacts,
- missingArtifacts, resolutionExceptions ) );
- }
}
catch ( ArtifactResolutionException e )
{
@@ -444,6 +439,12 @@
finally
{
latch.countDown();
+
+ if ( i.hasNext() )
+ {
+ pool.execute( new ResolveArtifactTask( pool, latch, nodes, localRepository, resolvedArtifacts,
+ missingArtifacts, resolutionExceptions ) );
+ }
}
}
Modified: maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java?rev=787257&r1=787256&r2=787257&view=diff
==============================================================================
--- maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java (original)
+++ maven/components/branches/maven-2.2.0-RC/maven-artifact-manager/src/test/java/org/apache/maven/artifact/resolver/ArtifactResolverTest.java Mon Jun 22 14:43:42 2009
@@ -361,5 +361,60 @@
control.verify();
}
+
+ /**
+ * Test deadlocking in case a transfer error occurs within a group of multiple artifacts (MNG-4179).
+ */
+ public void testResolveMultipleWithException()
+ throws Exception
+ {
+ ArtifactRepository repository = remoteRepository();
+ List remoteRepositories = Collections.singletonList( repository );
+
+ Artifact a1 = createArtifact( "testGroup", "artifactId", "1.0", "jar" );
+
+ Artifact a2 = createArtifact( "testGroup", "anotherId", "1.0", "jar" );
+
+ ArtifactMetadataSource mds = new ArtifactMetadataSourceImplementation();
+
+ DefaultArtifactResolver artifactResolver = (DefaultArtifactResolver) this.artifactResolver;
+
+ MockControl control = MockControl.createControl( WagonManager.class );
+ WagonManager wagonManager = (WagonManager) control.getMock();
+ artifactResolver.setWagonManager( wagonManager );
+
+ wagonManager.isOnline();
+ control.setReturnValue( true );
+ wagonManager.getArtifact( a1, remoteRepositories );
+ control.setThrowable( new TransferFailedException( "message" ) );
+ wagonManager.getMirrorRepository( repository );
+ control.setReturnValue( repository );
+
+ wagonManager.isOnline();
+ control.setReturnValue( true );
+ wagonManager.getArtifact( a2, remoteRepositories );
+ control.setThrowable( new TransferFailedException( "message" ) );
+ wagonManager.getMirrorRepository( repository );
+ control.setReturnValue( repository );
+
+ control.replay();
+
+ try
+ {
+ artifactResolver.resolveTransitively( new LinkedHashSet( Arrays.asList( new Artifact[] { a1, a2 } ) ),
+ projectArtifact, remoteRepositories, localRepository(), mds );
+ fail( "Resolution succeeded when it should have failed" );
+ }
+ catch ( ArtifactResolutionException expected )
+ {
+ List repos = expected.getRemoteRepositories();
+ assertEquals( 1, repos.size() );
+ assertEquals( "test", ( (ArtifactRepository) repos.get( 0 ) ).getId() );
+
+ assertEquals( "testGroup", expected.getGroupId() );
+ }
+
+ control.verify();
+ }
}
Propchange: maven/components/branches/maven-2.2.0-RC/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginValidator.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -5,5 +5,6 @@
/maven/components/branches/maven-2.1.0-RC/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginValidator.java:752168,752622,752653,753320,755199,755215
/maven/components/branches/maven-2.1.x/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginCollector.java:751686,753648,754505,754542
/maven/components/branches/maven-2.1.x/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginValidator.java:767628,767631,768995,769010-769011
+/maven/components/branches/maven-2.2.x/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginValidator.java:779768
/maven/components/trunk/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginCollector.java:572229,720001,721902,726845,729292
/maven/sandbox/branches/maven/MNG-3379/maven-core/src/main/java/org/apache/maven/plugin/MavenPluginCollector.java:678167
Propchange: maven/components/branches/maven-2.2.0-RC/maven-integration-tests/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -2,3 +2,4 @@
/maven/components/branches/maven-2.0.x/maven-integration-tests:736543
/maven/components/branches/maven-2.1.0-RC/maven-integration-tests:752168,752428,752622,752653,753089-753090,753320,755086,755199,755215
/maven/components/branches/maven-2.1.x/maven-integration-tests:751686,767628,767631,768995,769010-769011
+/maven/components/branches/maven-2.2.x/maven-integration-tests:779768
Propchange: maven/components/branches/maven-2.2.0-RC/maven-model/src/test/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -2,3 +2,4 @@
/maven/components/branches/maven-2.0.x/maven-model/src/test:736543
/maven/components/branches/maven-2.1.0-RC/maven-model/src/test:752168,752428,752622,752653,753089-753090,753320,755086,755199,755215
/maven/components/branches/maven-2.1.x/maven-model/src/test:751686,767628,767631,768995,769010-769011
+/maven/components/branches/maven-2.2.x/maven-model/src/test:779768
Propchange: maven/components/branches/maven-2.2.0-RC/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -2,3 +2,4 @@
/maven/components/branches/maven-2.1.0-M1-RC/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java:690315,691793
/maven/components/branches/maven-2.1.0-RC/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java:688883,689695,689976,689990,752168,752428,752622,752653,753089-753090,753320,755086,755199,755215
/maven/components/branches/maven-2.1.x/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java:751686,767628,767631,768995,769010-769011
+/maven/components/branches/maven-2.2.x/maven-project/src/test/java/org/apache/maven/project/interpolation/AbstractModelInterpolatorTest.java:779768
Propchange: maven/components/branches/maven-2.2.0-RC/maven-toolchain/src/main/mdo/toolchains.mdo
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Jun 22 14:43:42 2009
@@ -1 +1,2 @@
/maven/components/branches/maven-2.1.x/maven-toolchain/src/main/mdo/toolchains.mdo:768778,768796,768995,769010-769011
+/maven/components/branches/maven-2.2.x/maven-toolchain/src/main/mdo/toolchains.mdo:779768