[ 
https://issues.apache.org/jira/browse/IVY-1465?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13973308#comment-13973308
 ] 

Shikhar Bhushan commented on IVY-1465:
--------------------------------------

Update: I ran into resolution problems after wiping my .ivy2 cache, when using 
the above SBT release of Ivy.

{noformat}
[ivy:resolve]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]           ::          UNRESOLVED DEPENDENCIES         ::
[ivy:resolve]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]           :: 
org.apache.lucene#lucene-analyzers-common;working@host: not found
[ivy:resolve]           :: 
org.apache.lucene#lucene-analyzers-kuromoji;working@host: not found
[ivy:resolve]           :: 
org.apache.lucene#lucene-analyzers-phonetic;working@host: not found
[ivy:resolve]           :: org.apache.lucene#lucene-codecs;working@host: not 
found
[ivy:resolve]           :: org.apache.lucene#lucene-core;working@host: not found
[ivy:resolve]           :: org.apache.lucene#lucene-expressions;working@host: 
not found
[ivy:resolve]           :: org.apache.lucene#lucene-grouping;working@host: not 
found
[ivy:resolve]           :: org.apache.lucene#lucene-highlighter;working@host: 
not found
[ivy:resolve]           :: org.apache.lucene#lucene-join;working@host: not found
[ivy:resolve]           :: org.apache.lucene#lucene-memory;working@host: not 
found
[ivy:resolve]           :: org.apache.lucene#lucene-misc;working@host: not found
[ivy:resolve]           :: org.apache.lucene#lucene-queries;working@host: not 
found
[ivy:resolve]           :: org.apache.lucene#lucene-queryparser;working@host: 
not found
[ivy:resolve]           :: org.apache.lucene#lucene-spatial;working@host: not 
found
[ivy:resolve]           :: org.apache.lucene#lucene-suggest;working@host: not 
found
[ivy:resolve]           :: org.apache.solr#solr-solrj;working@host: not found
[ivy:resolve]           :: com.carrotsearch#hppc;working@host: not found
[ivy:resolve]           :: com.google.protobuf#protobuf-java;working@host: not 
found
[ivy:resolve]           :: 
com.googlecode.concurrentlinkedhashmap#concurrentlinkedhashmap-lru;working@host:
 not found
[ivy:resolve]           :: com.spatial4j#spatial4j;working@host: not found
[ivy:resolve]           :: commons-cli#commons-cli;working@host: not found
[ivy:resolve]           :: commons-codec#commons-codec;working@host: not found
[ivy:resolve]           :: 
commons-configuration#commons-configuration;working@host: not found
[ivy:resolve]           :: commons-fileupload#commons-fileupload;working@host: 
not found
[ivy:resolve]           :: commons-io#commons-io;working@host: not found
[ivy:resolve]           :: commons-lang#commons-lang;working@host: not found
[ivy:resolve]           :: dom4j#dom4j;working@host: not found
[ivy:resolve]           :: org.antlr#antlr-runtime;working@host: not found
[ivy:resolve]           :: org.apache.hadoop#hadoop-annotations;working@host: 
not found
[ivy:resolve]           :: org.apache.hadoop#hadoop-auth;working@host: not found
[ivy:resolve]           :: org.apache.hadoop#hadoop-common;working@host: not 
found
[ivy:resolve]           :: org.apache.hadoop#hadoop-hdfs;working@host: not found
[ivy:resolve]           :: org.apache.httpcomponents#httpclient;working@host: 
not found
[ivy:resolve]           :: org.apache.httpcomponents#httpcore;working@host: not 
found
[ivy:resolve]           :: org.apache.httpcomponents#httpmime;working@host: not 
found
[ivy:resolve]           :: org.codehaus.woodstox#wstx-asl;working@host: not 
found
[ivy:resolve]           :: org.eclipse.jetty#jetty-continuation;working@host: 
not found
[ivy:resolve]           :: org.eclipse.jetty#jetty-deploy;working@host: not 
found
[ivy:resolve]           :: org.eclipse.jetty#jetty-http;working@host: not found
[ivy:resolve]           :: org.eclipse.jetty#jetty-io;working@host: not found
[ivy:resolve]           :: org.eclipse.jetty#jetty-jmx;working@host: not found
[ivy:resolve]           :: org.eclipse.jetty#jetty-security;working@host: not 
found
[ivy:resolve]           :: org.eclipse.jetty#jetty-server;working@host: not 
found
[ivy:resolve]           :: org.eclipse.jetty#jetty-servlet;working@host: not 
found
[ivy:resolve]           :: org.eclipse.jetty#jetty-util;working@host: not found
[ivy:resolve]           :: org.eclipse.jetty#jetty-webapp;working@host: not 
found
[ivy:resolve]           :: org.eclipse.jetty#jetty-xml;working@host: not found
[ivy:resolve]           :: org.eclipse.jetty.orbit#javax.servlet;working@host: 
not found
[ivy:resolve]           :: org.noggit#noggit;working@host: not found
[ivy:resolve]           :: org.ow2.asm#asm;working@host: not found
[ivy:resolve]           :: org.ow2.asm#asm-commons;working@host: not found
[ivy:resolve]           :: org.restlet.jee#org.restlet;working@host: not found
[ivy:resolve]           :: 
org.restlet.jee#org.restlet.ext.servlet;working@host: not found
[ivy:resolve]           :: 
org.apache.lucene#lucene-test-framework;working@host: not found
[ivy:resolve]           :: 
com.carrotsearch.randomizedtesting#junit4-ant;working@host: not found
[ivy:resolve]           :: 
com.carrotsearch.randomizedtesting#randomizedtesting-runner;working@host: not 
found
[ivy:resolve]           :: org.apache.ant#ant;working@host: not found
[ivy:resolve]           ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:resolve]
{noformat}

They all appear to be transitive dependencies from "org.apache.solr" - 
"solr-core" - "4.7.1". It seems the Solr/Lucene POM's don't specify versions of 
their dependencies, which may be a factor here.

> ModuleRules.getRule is O(n) leading to resolution slowness
> ----------------------------------------------------------
>
>                 Key: IVY-1465
>                 URL: https://issues.apache.org/jira/browse/IVY-1465
>             Project: Ivy
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.3.0
>         Environment: OpenJDK 6,7, MacOSX + Ubuntu
>            Reporter: Joshua Suereth
>            Priority: Minor
>              Labels: performance
>
> So, for the sbt project we noticed significant resolution time improvements 
> with the following patch:
> https://github.com/sbt/ivy/pull/1
> The reasoning:
> A lot of artifacts being resolved use Maven's "dependencyManagement" 
> conventions
> Ivy appears to turn these into "exact matcher" rules
> A ton of resolution time is spent filtering through these rules
> The existing solution is O(n) for all overrides
> What the patch does:
> Creates a key'd store for all "exact matcher" rules
> When executing rules, ensure that we only traverse what we have to 
> (non-exact, exact specific to our key and "default").
> As I said, this represents a significant speed bump for sbt builds using Ivy. 
>  All existing tests pass, and I think they cover this aspect of ivy pretty 
> well, from what I could see.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to