You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by cs...@apache.org on 2023/02/23 08:51:03 UTC

[maven] branch maven-3.9.x updated: [MNG-7677] Maven slowness improvement (#989)

This is an automated email from the ASF dual-hosted git repository.

cstamas pushed a commit to branch maven-3.9.x
in repository https://gitbox.apache.org/repos/asf/maven.git


The following commit(s) were added to refs/heads/maven-3.9.x by this push:
     new ecc89f009 [MNG-7677] Maven slowness improvement (#989)
ecc89f009 is described below

commit ecc89f0098e94055c4b8f3a21b2966eae44194ef
Author: Tamas Cservenak <ta...@cservenak.net>
AuthorDate: Thu Feb 23 09:50:57 2023 +0100

    [MNG-7677] Maven slowness improvement (#989)
    
    The crux was  in resolver 1.9.5, but there are other "low hanging fruits" like delegate created on a "hot method".
    
    ---
    
    https://issues.apache.org/jira/browse/MNG-7677
---
 .../maven/repository/internal/DefaultArtifactDescriptorReader.java   | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
index 027c9e9e9..580b8e89a 100644
--- a/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
+++ b/maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
@@ -88,6 +88,9 @@ public class DefaultArtifactDescriptorReader implements ArtifactDescriptorReader
 
     private ModelCacheFactory modelCacheFactory;
 
+    private final ArtifactDescriptorReaderDelegate artifactDescriptorReaderDelegate =
+            new ArtifactDescriptorReaderDelegate();
+
     public DefaultArtifactDescriptorReader() {
         // enable no-arg constructor
     }
@@ -173,7 +176,7 @@ public class DefaultArtifactDescriptorReader implements ArtifactDescriptorReader
                     (ArtifactDescriptorReaderDelegate) config.get(ArtifactDescriptorReaderDelegate.class.getName());
 
             if (delegate == null) {
-                delegate = new ArtifactDescriptorReaderDelegate();
+                delegate = artifactDescriptorReaderDelegate;
             }
 
             delegate.populateResult(session, result, model);