Hi Brett thank you for your reply (I admit it, I explicitly quoted a sentence from your book for raising your attention ;-) )
well, no, it was really 404, so it was a "Not Found", and it was given back by the remote repository to Archiva. The reason of the slowness was that Archiva was sending out HTTP requests for artifact while they should have been cached. Now I've changed the configuration to a single Repository Proxy Connector mapped to a single Managed Repository which caches ALL the artifacts and it works fast as expected. Considering this, I think that problem was on the Repository Groups! It seems that the Repository Group with two Managed Repositories containing remote Proxy Connection, does not work well as a cache: if the artifact is found on the second of the two Managed Repositories, requesting the artifact to the Repository Group makes Archiva first search the artifact on the first Repository, which make HTTP requests (returning 404), and then search the Artifact on the second Repository, where the cache works (Archiva make no more HTTP requests). To be more clear, my previous configuration (the slow one) was something like this: Repository Group: "public" |-- Managed repository: "releases" |-- Managed repository: "snapshots" |-- Managed repository: "externals" | \-- Proxy Connectors | |-- http://repo1.maven.org/maven2 | |-- http://download.java.net/maven/2/ | |-- http://repository.jboss.com/maven2/ | |-- ... \-- Managed repository: "temp" \-- Proxy Connectors |-- http://people.apache.org/repo/m2-incubating-repository/ |-- http://svn.apache.org/repos/asf/servicemix/m2-repo |-- http://s3.amazonaws.com/maven.springframework.org/milestone |-- ... This is the configuration I use now which is no more slow: Managed repository: "releases" Managed repository: "snapshots" Managed repository: "public" \-- Proxy Connectors |-- http://repo1.maven.org/maven2 |-- http://download.java.net/maven/2/ |-- http://repository.jboss.com/maven2/ |-- ... |-- http://people.apache.org/repo/m2-incubating-repository/ |-- http://svn.apache.org/repos/asf/servicemix/m2-repo |-- http://s3.amazonaws.com/maven.springframework.org/milestone |-- ... My first set-up was intended to separate all the artifacts coming from unknown/untrusted repositories so that I can (try to) eliminate them from my dependencies. The second set-up solves slowness issues but now I can't no more investigate on the dependencies coming from these repositories... Another question, which may be a work around for me: is there a possibility to know from which URL a cached artifact has been downloaded? Does Archiva logs this information? Does it would be easy to write a fix by myself? thank you all, have a nice weekend. Cristiano
