Ivy
  1. Ivy
  2. IVY-996

Remove excessive HEAD requests for URL repository

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-RC2
    • Fix Version/s: 2.1.0-RC1
    • Component/s: Core
    • Labels:
      None

      Description

      Fixing useless extra HEAD requests

      When searching for an artifact named "project" version "2.2.+" for organization "org", Ivy attempts HEAD requests for completely not possible versions.

      IE: /org/project/0.9.2/ivy-0.9.2.xml

      This is not terribly painful unless you have thousands of builds and are not on the same network as your ivy server.

      Are HEAD requests even necessary?

      Simply getting a directory listing should be good enough to determine if there is an artifact (for choosing latest-release). Now, after one is chosen, if no ivy.xml file exists, I could understand trying the next one, but trying all of them, just to select the latest one anyways seems like a complete waste.

        Activity

        Hide
        Xavier Hanin added a comment -

        I've made some modifications on trunk which should fix this as you asked: making head requests only for potential matches. I've made some testing in my environment, and it works well. I'd appreciate feedback though to know if it works for you too.

        Show
        Xavier Hanin added a comment - I've made some modifications on trunk which should fix this as you asked: making head requests only for potential matches. I've made some testing in my environment, and it works well. I'd appreciate feedback though to know if it works for you too.
        Hide
        Eric Anderson added a comment -

        I'd love to test this from Eclipse (I have a guy in the field), however I don't know how to take a nightly and get it setup with ivyde. Any help would be great

        Show
        Eric Anderson added a comment - I'd love to test this from Eclipse (I have a guy in the field), however I don't know how to take a nightly and get it setup with ivyde. Any help would be great
        Hide
        Xavier Hanin added a comment -

        Mmm, this is not straightforward to use a nightly in eclipse, mainly because we have a naming convention for nightlies which conflict with eclipse version naming convention. But this is pretty easy to fix, I'll try to find some time to do it and keep you informed.

        Show
        Xavier Hanin added a comment - Mmm, this is not straightforward to use a nightly in eclipse, mainly because we have a naming convention for nightlies which conflict with eclipse version naming convention. But this is pretty easy to fix, I'll try to find some time to do it and keep you informed.
        Hide
        Eric Anderson added a comment -

        Thank you very much for your help. As soon as there is a way for me to run with this in Eclipse, I can get my guys to test it.

        Show
        Eric Anderson added a comment - Thank you very much for your help. As soon as there is a way for me to run with this in Eclipse, I can get my guys to test it.
        Hide
        Xavier Hanin added a comment -

        Thanks to Nicolas Lalevée, an update site with trunk versions of both IvyDE and Ivy is now available here:
        http://hudson.zones.apache.org/hudson/view/Ant/job/IvyDE-updatesite/lastSuccessfulBuild/artifact/trunk/build/

        Please use this to test the trunk Ivy version and tell me if it works as you expect.

        Show
        Xavier Hanin added a comment - Thanks to Nicolas Lalevée, an update site with trunk versions of both IvyDE and Ivy is now available here: http://hudson.zones.apache.org/hudson/view/Ant/job/IvyDE-updatesite/lastSuccessfulBuild/artifact/trunk/build/ Please use this to test the trunk Ivy version and tell me if it works as you expect.

          People

          • Assignee:
            Xavier Hanin
            Reporter:
            Eric Anderson
          • Votes:
            1 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development