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]
