Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-20186

MalformedURLException in mercurial.browser.KilnHG for HTTPS URL

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Critical
    • Resolution: Fixed
    • Component/s: mercurial-plugin
    • Labels:
      None
    • Environment:
      Ubuntu Precise, Jenkins 1.536
    • Similar Issues:

      Description

      We recently updated our Jenkins server from an earlier version (maybe 1.514) using aptitude. After the upgrade, we now get an error when updating a job config. The stack trace is below. It appears to be throwing a MalformedURLException on "https://yougov.kilnhg.com/Code/Repositories/G/gryphon/".

      I've upgraded the Mercurial plugin to the latest available (using the web interface), but the problem persists. I've also tried replacing the 'kiln://' scheme of the repository URL with a full 'https://' URL, but the problem persists.

      javax.servlet.ServletException: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.mercurial.MercurialSCM from {"value":"2","source":"kiln://G/gryphon","credentialsId":"","branch":"default","modules":"","clean":false,"subdir":"","":"4","browser":{"stapler-class":"hudson.plugins.mercurial.browser.KilnHG","url":"https://yougov.kilnhg.com/Code/Repositories/G/gryphon/"}}
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:777)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
      at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:841)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:630)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:224)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
      at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      at org.eclipse.jetty.server.Server.handle(Server.java:370)
      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
      at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:679)
      Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.mercurial.MercurialSCM from {"value":"2","source":"kiln://G/gryphon","credentialsId":"","branch":"default","modules":"","clean":false,"subdir":"","":"4","browser":{"stapler-class":"hudson.plugins.mercurial.browser.KilnHG","url":"https://yougov.kilnhg.com/Code/Repositories/G/gryphon/"}}
      at hudson.model.Descriptor.newInstance(Descriptor.java:578)
      at hudson.plugins.mercurial.MercurialSCM$DescriptorImpl.newInstance(MercurialSCM.java:770)
      at hudson.plugins.mercurial.MercurialSCM$DescriptorImpl.newInstance(MercurialSCM.java:744)
      at hudson.scm.SCMS.parseSCM(SCMS.java:63)
      at hudson.model.AbstractProject.submit(AbstractProject.java:2002)
      at hudson.model.Project.submit(Project.java:202)
      at hudson.model.Job.doConfigSubmit(Job.java:1136)
      at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:787)
      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:616)
      at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297)
      at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:160)
      at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:95)
      at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:727)
      ... 46 more
      Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.plugins.mercurial.MercurialSCM from {"value":"2","source":"kiln://G/gryphon","credentialsId":"","branch":"default","modules":"","clean":false,"subdir":"","":"4","browser":{"stapler-class":"hudson.plugins.mercurial.browser.KilnHG","url":"https://yougov.kilnhg.com/Code/Repositories/G/gryphon/"}}
      at hudson.model.Descriptor.newInstance(Descriptor.java:578)
      at hudson.plugins.mercurial.MercurialSCM$DescriptorImpl.newInstance(MercurialSCM.java:770)
      at hudson.plugins.mercurial.MercurialSCM$DescriptorImpl.newInstance(MercurialSCM.java:744)
      at hudson.model.Descriptor$1.instantiate(Descriptor.java:1046)
      at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:665)
      at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
      at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
      at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
      at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:396)
      at hudson.model.Descriptor.newInstance(Descriptor.java:569)
      ... 63 more
      Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.mercurial.MercurialSCM from {"value":"2","source":"kiln://G/gryphon","credentialsId":"","branch":"default","modules":"","clean":false,"subdir":"","":"4","browser":{"stapler-class":"hudson.plugins.mercurial.browser.KilnHG","url":"https://yougov.kilnhg.com/Code/Repositories/G/gryphon/"}}
      at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
      at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
      at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:396)
      at hudson.model.Descriptor.newInstance(Descriptor.java:569)
      ... 72 more
      Caused by: java.lang.IllegalArgumentException: Failed to convert the browser parameter of the constructor public hudson.plugins.mercurial.MercurialSCM(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,hudson.plugins.mercurial.browser.HgBrowser,boolean,java.lang.String)
      at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:686)
      at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
      at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
      ... 75 more
      Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.plugins.mercurial.browser.HgBrowser from

      {"stapler-class":"hudson.plugins.mercurial.browser.KilnHG","url":"https://yougov.kilnhg.com/Code/Repositories/G/gryphon/"}

      at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:589)
      at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
      at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:684)
      ... 77 more
      Caused by: java.lang.IllegalArgumentException: java.net.MalformedURLException
      at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:462)
      at org.kohsuke.stapler.RequestImpl.bindParameters(RequestImpl.java:392)
      at org.kohsuke.stapler.RequestImpl.bindParameters(RequestImpl.java:363)
      at hudson.plugins.mercurial.browser.KilnHG$DescriptorImpl.newInstance(KilnHG.java:72)
      at hudson.plugins.mercurial.browser.KilnHG$DescriptorImpl.newInstance(KilnHG.java:65)
      at hudson.model.Descriptor$1.instantiate(Descriptor.java:1046)
      at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:665)
      at org.kohsuke.stapler.RequestImpl.access$100(RequestImpl.java:81)
      at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:587)
      ... 79 more
      Caused by: java.net.MalformedURLException
      at java.net.URL.<init>(URL.java:619)
      at java.net.URL.<init>(URL.java:482)
      at java.net.URL.<init>(URL.java:431)
      at hudson.plugins.mercurial.browser.HgBrowser.<init>(HgBrowser.java:72)
      at hudson.plugins.mercurial.browser.KilnHG.<init>(KilnHG.java:24)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:532)
      at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:447)
      ... 87 more
      Caused by: java.lang.NullPointerException

        Attachments

          Issue Links

            Activity

            Hide
            jglick Jesse Glick added a comment -

            Sounds like the analogue of JENKINS-20123 but for the Mercurial plugin. A recent core bugfix seems to have broken a bunch of plugins.

            Show
            jglick Jesse Glick added a comment - Sounds like the analogue of JENKINS-20123 but for the Mercurial plugin. A recent core bugfix seems to have broken a bunch of plugins.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            src/main/java/hudson/plugins/mercurial/browser/BitBucket.java
            src/main/java/hudson/plugins/mercurial/browser/FishEye.java
            src/main/java/hudson/plugins/mercurial/browser/GoogleCode.java
            src/main/java/hudson/plugins/mercurial/browser/HgWeb.java
            src/main/java/hudson/plugins/mercurial/browser/KilnHG.java
            src/main/java/hudson/plugins/mercurial/browser/RhodeCode.java
            src/main/java/hudson/plugins/mercurial/browser/RhodeCodeLegacy.java
            src/test/java/hudson/plugins/mercurial/browser/HgBrowserSelectionTest.java
            http://jenkins-ci.org/commit/mercurial-plugin/651ce333e8a982b4ebb559a1b0d60e6d8162afad
            Log:
            [FIXED JENKINS-20186] Incompatibility with Jenkins 1.536+.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/hudson/plugins/mercurial/browser/BitBucket.java src/main/java/hudson/plugins/mercurial/browser/FishEye.java src/main/java/hudson/plugins/mercurial/browser/GoogleCode.java src/main/java/hudson/plugins/mercurial/browser/HgWeb.java src/main/java/hudson/plugins/mercurial/browser/KilnHG.java src/main/java/hudson/plugins/mercurial/browser/RhodeCode.java src/main/java/hudson/plugins/mercurial/browser/RhodeCodeLegacy.java src/test/java/hudson/plugins/mercurial/browser/HgBrowserSelectionTest.java http://jenkins-ci.org/commit/mercurial-plugin/651ce333e8a982b4ebb559a1b0d60e6d8162afad Log: [FIXED JENKINS-20186] Incompatibility with Jenkins 1.536+.
            Hide
            jaraco Jason R. Coombs added a comment -

            Thanks for the quick response.

            Show
            jaraco Jason R. Coombs added a comment - Thanks for the quick response.
            Hide
            jglick Jesse Glick added a comment -

            Sure. Update to 1.49 for the fix.

            Show
            jglick Jesse Glick added a comment - Sure. Update to 1.49 for the fix.

              People

              • Assignee:
                jglick Jesse Glick
                Reporter:
                jaraco Jason R. Coombs
              • Votes:
                1 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: