Uploaded image for project: 'Ivy'
  1. Ivy
  2. IVY-1566

Some cached location are badly stored which results in MalformedURLException

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.4.0
    • Fix Version/s: 2.5.0-rc1
    • Component/s: Core
    • Labels:
      None

      Description

      In the cache I have this values:

      artifact\:apache\#pom.original\#pom\#152078872.is-local=true
      artifact\:apache\#pom.original\#pom\#152078872.location=file\:C\:/Users/Aurelien Pupier/.m2/repository/org/apache/apache/17/apache-17.pom
      resolver=cachedGrapes
      artifact\:ivy\#ivy\#xml\#-1725951287.exists=true
      artifact\:apache\#pom.original\#pom\#152078872.exists=true
      artifact\:apache\#pom.original\#pom\#152078872.original=artifact\:apache\#pom.original\#pom\#152078872
      artifact\:ivy\#ivy.original\#xml\#-291525928.is-local=true
      artifact\:ivy\#ivy\#xml\#-1725951287.is-local=true
      artifact.resolver=cachedGrapes
      artifact\:ivy\#ivy.original\#xml\#-291525928.location=C\:\\Users\\Aurelien Pupier\\.groovy\\grapes\\org.apache\\apache\\ivy-17.xml
      artifact\:ivy\#ivy\#xml\#-1725951287.location=C\:\\Users\\Aurelien Pupier\\.groovy\\grapes\\org.apache\\apache\\ivy-17.xml
      artifact\:ivy\#ivy.original\#xml\#-291525928.original=artifact\:ivy\#ivy.original\#xml\#-291525928
      artifact\:ivy\#ivy\#xml\#-1725951287.original=artifact\:ivy\#ivy.original\#xml\#-291525928
      artifact\:ivy\#ivy.original\#xml\#-291525928.exists=true
      

      you can notice some *.location properties which are starting with file:/ and some others not.
      I checked by all entries are really existing on the filesystem.

      when there is no file:/ , a MalformedException occured:

      java.net.MalformedURLException: unknown protocol: c
      	at java.net.URL.<init>(URL.java:600)
      	at java.net.URL.<init>(URL.java:490)
      	at java.net.URL.<init>(URL.java:439)
      	at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.getSavedArtifactOrigin(DefaultRepositoryCacheManager.java:518)
      	at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.doFindModuleInCache(DefaultRepositoryCacheManager.java:755)
      	at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.findModuleInCache(DefaultRepositoryCacheManager.java:684)
      	at org.apache.ivy.plugins.resolver.AbstractResolver.findModuleInCache(AbstractResolver.java:348)
      	at org.apache.ivy.plugins.resolver.ChainResolver.getDependency(ChainResolver.java:91)
      	at org.apache.ivy.core.resolve.IvyNode.loadData(IvyNode.java:170)
      	at org.apache.ivy.core.resolve.VisitNode.loadData(VisitNode.java:292)
      	at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:718)
      	at org.apache.ivy.core.resolve.ResolveEngine.doFetchDependencies(ResolveEngine.java:803)
      	at org.apache.ivy.core.resolve.ResolveEngine.fetchDependencies(ResolveEngine.java:726)
      	at org.apache.ivy.core.resolve.ResolveEngine.getDependencies(ResolveEngine.java:599)
      	at org.apache.ivy.core.resolve.ResolveEngine.resolve(ResolveEngine.java:236)
      	at org.apache.ivy.Ivy.resolve(Ivy.java:523)
      	at org.apache.ivy.Ivy$resolve$0.call(Unknown Source)
      	at groovy.grape.GrapeIvy.getDependencies(GrapeIvy.groovy:410)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:169)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:59)
      	at groovy.grape.GrapeIvy.resolve(GrapeIvy.groovy:571)
      	at groovy.grape.GrapeIvy$resolve$1.callCurrent(Unknown Source)
      	at groovy.grape.GrapeIvy.resolve(GrapeIvy.groovy:538)
      	at groovy.grape.GrapeIvy$resolve$0.callCurrent(Unknown Source)
      	at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:256)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:169)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:59)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:174)
      	at groovy.grape.GrapeIvy.grab(GrapeIvy.groovy:237)
      	at groovy.grape.Grape.grab(Grape.java:152)
      	at org.apache.camel.catalog.maven.MavenVersionManager.loadVersion(MavenVersionManager.java:109)
      	at org.apache.camel.catalog.DefaultCamelCatalog.loadVersion(DefaultCamelCatalog.java:163)
      	at org.fusesource.ide.camel.model.service.internal.CamelService.loadVersion(CamelService.java:113)
      	at org.fusesource.ide.camel.model.service.internal.CamelService.getCatalog(CamelService.java:97)
      	at org.fusesource.ide.camel.model.service.internal.CamelService.updateMavenRepositoryLookup(CamelService.java:303)
      	at org.fusesource.ide.camel.model.service.core.CamelManagerServiceProxy.updateMavenRepositoryLookup(CamelManagerServiceProxy.java:75)
      	at org.fusesource.ide.camel.model.service.core.catalog.cache.CamelCatalogCacheManager.getCamelModelForProject(CamelCatalogCacheManager.java:85)
      	at org.fusesource.ide.camel.model.service.core.util.ProjectClasspathChangedListener.notifyClasspathChanged(ProjectClasspathChangedListener.java:144)
      	at org.fusesource.ide.camel.model.service.core.util.ProjectClasspathChangedListener.visit(ProjectClasspathChangedListener.java:123)
      	at org.fusesource.ide.camel.model.service.core.util.ProjectClasspathChangedListener.visitChildren(ProjectClasspathChangedListener.java:78)
      	at org.fusesource.ide.camel.model.service.core.util.ProjectClasspathChangedListener.visit(ProjectClasspathChangedListener.java:119)
      	at org.fusesource.ide.camel.model.service.core.util.ProjectClasspathChangedListener.elementChanged(ProjectClasspathChangedListener.java:52)
      	at org.eclipse.jdt.internal.core.DeltaProcessor$3.run(DeltaProcessor.java:1703)
      	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
      	at org.eclipse.jdt.internal.core.DeltaProcessor.notifyListeners(DeltaProcessor.java:1693)
      	at org.eclipse.jdt.internal.core.DeltaProcessor.firePostChangeDelta(DeltaProcessor.java:1527)
      	at org.eclipse.jdt.internal.core.DeltaProcessor.fire(DeltaProcessor.java:1503)
      	at org.eclipse.jdt.internal.core.DeltaProcessor.notifyAndFire(DeltaProcessor.java:2219)
      	at org.eclipse.jdt.internal.core.DeltaProcessor.resourceChanged(DeltaProcessor.java:2109)
      	at org.eclipse.jdt.internal.core.DeltaProcessingState.resourceChanged(DeltaProcessingState.java:473)
      	at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:299)
      	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
      	at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:289)
      	at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:152)
      	at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:374)
      	at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1469)
      	at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:157)
      	at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:232)
      	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56)
      

      the exception is caught so the result is "only that" the cache is not used but this might have performance impact.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                jaikiran jaikiran pai
                Reporter:
                aurelien.pupier Aurelien Pupier
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: