Maven
  1. Maven
  2. MNG-3379

Parallel resolution of artifacts

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0.8
    • Fix Version/s: 2.1.0
    • Labels:
      None
    • Flags:
      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.

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Brett Porter
              Reporter:
              Don Brown
            • Votes:
              71 Vote for this issue
              Watchers:
              29 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development