Community
Participate
Working Groups
Recently, the resolution started to take a long time with Tycho 0.14.0-SNAPSHOT and an explicit target. This build spent over two hours resolving targets, this used take no more than a couple of minutes at most: http://ci.mylyn.org/job/mylyn-3.7.x/69/TARGET=juno/console "main" prio=10 tid=0x08101000 nid=0x6cd5 runnable [0xb719d000] java.lang.Thread.State: RUNNABLE at org.eclipse.equinox.internal.p2.metadata.expression.Member$DynamicMember.evaluate(Member.java:42) at org.eclipse.equinox.internal.p2.metadata.expression.Equals.evaluate(Equals.java:27) at org.eclipse.equinox.internal.p2.metadata.expression.And.evaluate(And.java:26) at org.eclipse.equinox.internal.p2.metadata.expression.Unary.evaluate(Unary.java:42) at org.eclipse.equinox.internal.p2.metadata.expression.Exists.evaluate(Exists.java:29) at org.eclipse.equinox.internal.p2.metadata.expression.CollectionFilter.evaluate(CollectionFilter.java:58) at org.eclipse.equinox.internal.p2.metadata.expression.MatchExpression.evaluate(MatchExpression.java:44) at org.eclipse.equinox.p2.query.ExpressionMatchQuery.isMatch(ExpressionMatchQuery.java:86) at org.eclipse.equinox.p2.query.ExpressionMatchQuery.perform(ExpressionMatchQuery.java:73) at org.eclipse.equinox.p2.query.ExpressionMatchQuery.perform(ExpressionMatchQuery.java:63) at org.eclipse.equinox.internal.p2.metadata.index.IndexProvider.query(IndexProvider.java:23) at org.eclipse.equinox.internal.p2.metadata.index.IndexProvider.query(IndexProvider.java:32) at org.eclipse.equinox.internal.p2.director.Slicer.expandRequirement(Slicer.java:183) at org.eclipse.equinox.internal.p2.director.Slicer.processIU(Slicer.java:146) at org.eclipse.equinox.internal.p2.director.Slicer.slice(Slicer.java:65) at org.eclipse.tycho.p2.impl.resolver.SlicerResolutionStrategy.resolve(SlicerResolutionStrategy.java:58) at org.eclipse.tycho.p2.impl.resolver.ResolutionStrategy.resolve(ResolutionStrategy.java:68) at org.eclipse.tycho.p2.target.TargetDefinitionResolver$1.resolve(TargetDefinitionResolver.java:162) at org.eclipse.tycho.p2.target.TargetDefinitionResolver.resolveContent(TargetDefinitionResolver.java:135) at org.eclipse.tycho.p2.target.TargetPlatformBuilderImpl.addTargetDefinition(TargetPlatformBuilderImpl.java:330) at org.eclipse.tycho.p2.resolver.P2TargetPlatformResolver.addTargetFileContentToTargetPlatform(P2TargetPlatformResolver.java:402) at org.eclipse.tycho.p2.resolver.P2TargetPlatformResolver.computeTargetPlatform(P2TargetPlatformResolver.java:220) at org.eclipse.tycho.core.resolver.DefaultTychoDependencyResolver.resolveProject(DefaultTychoDependencyResolver.java:89) at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:61) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:273) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) "VM Thread" prio=10 tid=0x081a6400 nid=0x6cdf runnable "GC task thread#0 (ParallelGC)" prio=10 tid=0x08108000 nid=0x6cd7 runnable "GC task thread#1 (ParallelGC)" prio=10 tid=0x08109800 nid=0x6cd8 runnable "VM Periodic Task Thread" prio=10 tid=0x08200400 nid=0x6cf7 waiting on condition JNI global references: 166 Heap PSYoungGen total 134912K, used 65385K [0x9eab0000, 0xaf130000, 0xb4000000) eden space 134016K, 48% used [0x9eab0000,0xa29b6660,0xa6d90000) from space 896K, 94% used [0xaeed0000,0xaefa4000,0xaefb0000) to space 1536K, 0% used [0xaefb0000,0xaefb0000,0xaf130000) PSOldGen total 117760K, used 92444K [0x74000000, 0x7b300000, 0x9eab0000) object space 117760K, 78% used [0x74000000,0x79a473e8,0x7b300000) PSPermGen total 40960K, used 20529K [0x70000000, 0x72800000, 0x74000000) object space 40960K, 50% used [0x70000000,0x7140c7e0,0x72800000) I tried increasing the amount of memory for Maven from 128m to 256m but that didn't make a difference. If I run the same build with an implicit target resolution is very fast. Steps to reproduce: git clone git://git.eclipse.org/gitroot/mylyn/org.eclipse.mylyn.commons.git cd org.eclipse.mylyn.commons mvn -Phelios clean verify -V -B -Dmaven.test.skip=true -Dmaven.test.failure.ignore=true -Dmaven.test.error.ignore=true -Dpack.skip=true -Dexplicit-target -Dtycho-version=0.14.0-SNAPSHOT -Dtest.all.skip=false To build against an implicit target leave out "-Dexplicit-target". Please note that the build is expected to fail with a resolution error because it can't find org.eclipse.mylyn.context.core.
Try now. Locally, I see time to get org.eclipse.mylyn.commons resolution error drop from ~210 seconds to ~15 seconds. http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/commit/?id=68de86af264ae6d30ac757b258726cd3bb3a9b3e