Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[m2e-users] m2e project import - dependency analysis performance

Hi,

we are experiencing slow project imports with projects that
have lots of transitive dependencies.

There is a significant gap between the time it takes to
build the project on the commandline e.g. 5min and
am eclipse import of the project around 15min.
Following the output of the cli build everything is reasonable.
Meaning time is spent doing stuff on the contrast to
the eclipse import which seems to be stuck resolving the
deps.

I uncreased the m2e logging, added a debug and consoleLog
options to eclipse but no hints from the logs.
Also no significant network traffic, few metadata lookups but
thats it. All deps are in the local repository in my test
scenario.

Then I started profiling my eclipse instance with jvisualvm.
Capturing samples of only the project import and comparing
them to an idle eclipse I saw that the classed from
Aether package org.eclipse.aether.util.graph.transformer

I looks like most of the time is spent in the ConflictIdSorter
during the import. I attached some screens from the profiler
that show the hotspots and backtraces of the import.

We are using the latest and greatest maven 3.3.x and m2e 1.6
also tested 1.7 with eclipse 4.6

I always thought that the dependency resolution within eclipse
and on the cli are identical with the latest maven releases?
Isnt that the purpose of Aether?

Are there config options to further pinpoint the problem.
I am using the Aether 1.0.1.v2014111 plugin/lib shipped
with eclipse 4.6.

Any hints, experiences, suggestions?


Best Regards,

Nils

Attachment: eclipse_import_aether_backtrace.png
Description: PNG image

Attachment: eclipse_import.png
Description: PNG image


Back to the top