Sergey, I would really love to see the build you operate on, as my test one is Quarkus with 1300+ modules and it behaved there well. No slowdown (in fact, speed up) and no memory issues either.
T On Fri, 26 Jun 2026 at 15:36, Tamás Cservenák <[email protected]> wrote: > > Sergey, > > Can you create some sort of reproducer? Or is this merely "just needs > more memory" issue? > > Also, with your custom build, can you try > `-Daether.conflictResolver.impl=classic` to try the CCR? > It surprises me that PCR needs more memory... > > Thanks > T > > On Fri, 26 Jun 2026 at 14:18, Sergey Chernov <[email protected]> wrote: > > > > -1 > > > > I've built the latest apache-maven-3.10.x which depends on > > maven-resolver-*-2.0.19-20260624.100627-43 libraries in the assembly. > > While building the 1000 module project it hangs at some moment and then > > throws OOM. The memory consumption is non-adequately higher than 3.9.16 so > > it seems that there is a leakage (3.9 needs less than 9g, while 3.10 fails > > even with 12g). > > I tried to inspect the generated hprof file and what I can see. The > > absolute leading objects are HashMap+HashMap.Node+HashMap.Node[]. > > I looked into the HashMap.Node entries, and a lot of them looks like a > > plain int.toString() values, also the "incoming references" tracks to > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path > > > > I was able to scrape the jstack from the hanging application and see this > > (it did not hang infinitely, but at least it was stuck there for a long > > time): > > ``` > > > > java.lang.Thread.State: RUNNABLE > > at java.util.ArrayList.remove([email protected]/ArrayList.java:623) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.moveOutOfScope(PathConflictResolver.java:619) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.moveOutOfScope(PathConflictResolver.java:621) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.moveOutOfScope(PathConflictResolver.java:621) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.moveOutOfScope(PathConflictResolver.java:621) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.moveOutOfScope(PathConflictResolver.java:621) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.moveOutOfScope(PathConflictResolver.java:621) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.moveOutOfScope(PathConflictResolver.java:621) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.push(PathConflictResolver.java:495) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver$Path.access$1700(PathConflictResolver.java:378) > > at > > org.eclipse.aether.util.graph.transformer.PathConflictResolver.transformGraph(PathConflictResolver.java:224) > > at > > org.eclipse.aether.util.graph.transformer.ConflictResolver.transformGraph(ConflictResolver.java:274) > > at > > org.eclipse.aether.util.graph.transformer.ChainedDependencyGraphTransformer.transformGraph(ChainedDependencyGraphTransformer.java:72) > > at > > org.eclipse.aether.internal.impl.collect.DependencyCollectorDelegate.collectDependencies(DependencyCollectorDelegate.java:284) > > at > > org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:79) > > at > > org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:247) > > at > > org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:154) > > at > > org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies(LifecycleDependencyResolver.java:231) > > at > > org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies(LifecycleDependencyResolver.java:140) > > - locked <0x0000000ba10003d0> (a > > org.apache.maven.project.artifact.DefaultProjectArtifactsCache$CacheKey) > > at > > org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved(MojoExecutor.java:364) > > at > > org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:322) > > at > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:220) > > at > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:181) > > at > > org.apache.maven.lifecycle.internal.MojoExecutor.access$000(MojoExecutor.java:79) > > at > > org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:169) > > at > > org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39) > > at > > org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:166) > > > > ``` > > > > > > > > On Wed, Jun 24, 2026 at 4:00 PM <[email protected]> wrote: > > > > > Hello Maven, > > > > > > I'd like to call a vote on releasing the following artifacts as > > > Apache Maven Resolver 2.0.19. This vote is being conducted using an > > > Alpha version of the Apache Trusted Releases (ATR) platform. > > > Please report any bugs or issues to the ASF Tooling team. > > > > > > The release candidate page, including downloads, can be found at: > > > > > > https://release-test.apache.org/vote/maven-resolver/2.0.19 > > > > > > The release artifacts are signed with one or more OpenPGP keys from: > > > > > > https://dist.apache.org/repos/dist/atr/maven/KEYS > > > > > > Maven staging repository: > > > > > > https://repository.apache.org/content/repositories/maven-2438/ > > > > > > Release notes (draft): > > > > > > https://gist.github.com/cstamas/345c2d8baefb6cd85e59bb796f602253 > > > > > > Changes since the last release: > > > > > > > > > https://github.com/apache/maven-resolver/compare/maven-resolver-2.0.18...maven-resolver-2.0.19 > > > > > > Staging site: > > > > > > https://maven.apache.org/resolver-archives/resolver-LATEST/ > > > > > > Site deployed to SVN; sync pending; SVN site source: > > > > > > > > > https://svn.apache.org/repos/asf/maven/website/components/resolver-archives/resolver-LATEST/index.html > > > > > > Please review the release candidate and vote accordingly. > > > > > > [ ] +1 Release this package > > > [ ] +0 Abstain > > > [ ] -1 Do not release this package (please provide specific comments) > > > > > > You can vote on ATR at the URL above, or manually by replying to this > > > email. > > > > > > The vote is open for 72 hours. > > > > > > > > > Thanks, > > > Tamas Cservenak (cstamas) > > > > > > This email was sent by [email protected] on the Apache Trusted Releases > > > platform > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [email protected] > > > For additional commands, e-mail: [email protected] > > > > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
