Details
-
New Feature
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.0.8
-
None
-
Patch
Description
Artifacts should be resolved in parallel, grouped by group id's to get around the lack of synchronization in the local repository. The patch does the following:
- Use a ThreadPoolExecutor to parallelize artifact resolution, but takes care not to resolve multiple artifacts from the same group id simultaneously. (requires Java 5)
- Makes the http wagon the default instead of the poor performing http-client
Disadvantages:
- Requires Java 5, but the backport jars could be substituted pretty easily
- Breaks some plugins due to commons-logging being in the Maven uber jar (required by commons-httpclient), notably the apt plugin (maybe more should use the isolatedRealm setting?)
- Screws up the progress monitor as multiple threads are updating it
Advantages:
- Much faster when combined with the http wagon (
WAGON-98). I was seeing 40% improvement on some test builds.