You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2022/10/01 02:49:00 UTC

[jira] [Commented] (MRESOLVER-7) Download dependency POMs in parallel

    [ https://issues.apache.org/jira/browse/MRESOLVER-7?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17611807#comment-17611807 ] 

ASF GitHub Bot commented on MRESOLVER-7:
----------------------------------------

caiwei-ebay commented on code in PR #178:
URL: https://github.com/apache/maven-resolver/pull/178#discussion_r985027783


##########
maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/collect/bf/BfDependencyCollector.java:
##########
@@ -365,6 +477,64 @@ else if ( descriptorResult == DataPool.NO_DESCRIPTOR )
         return descriptorResult;
     }
 
+    static class ParallelDescriptorResolver
+    {
+        final ExecutorService executorService;

Review Comment:
   @cstamas Any suggestions about whether we should use separate executors for the Maven parallel build?





> Download dependency POMs in parallel
> ------------------------------------
>
>                 Key: MRESOLVER-7
>                 URL: https://issues.apache.org/jira/browse/MRESOLVER-7
>             Project: Maven Resolver
>          Issue Type: Improvement
>          Components: Resolver
>    Affects Versions: Aether 1.0.2
>            Reporter: Harald Wellmann
>            Assignee: Tamás Cservenák
>            Priority: Major
>             Fix For: resolver-next
>
>         Attachments: resolve_deps.png, resolver.log
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> h3. Background
> When building a project with dependencies not yet available in the local repository, I noticed that Maven 3.3.9/Aether 1.0.2 first downloads the dependency POMs _sequentially_ and then proceeds downloading the dependency JARs with up to 5 threads _in parallel_.
> Due to this, when first building a project with a large number of dependencies, downloading a large number of small POMs may take a lot longer than downloading the much larger JARs, or even longer than building the project itself, especially when a repository manager is used which increases the download latency.
> h3. Enhancement
> Download POMs of (transitive) dependencies in parallel to significantly speed up initial builds of large projects.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)