Sounds good.

I would note that:
- 404 errors might only be temporary if you hit something before it is uploaded and it is later added. That said, it still makes sense to cache them - other errors should probably have a shorter TTL since server errors would be hoped to be intermittent (though it might depend on the error type).

Cheers,
Brett

On 21/12/2007, at 8:57 PM, nicolas de loof wrote:

Hello

The cache-failure option on proxy connectors doesn't seem to act as user
(and myself) may expect.

A failing (404) artifact request is not cached, as any network errors.

This has the side effect that :

1. network issues to access proxied repositories can make archiva unusable 2. archiva performance can get slow when using downloadSources form IDE plugins, as many artifacts have no source attached and any user launching
mvn eclipse:eclipse will make archiva fetch it's proxyConnectors

I suggest the following changes :

- in DefaultRepositoryProxyConnectors, first look in UrlCache for previously
failed request, and skip fetching the proxy if found
- add 404 (ArtifactNotFoundException) errors to the failureCache

The cache is also hard-configured in plexus descriptors. Maybe some user would like to have an admin command / configuration to flush it and/ or the
the time-to-live attribute.

Nico.

Reply via email to