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

Build Jobs formerly using Sidebar-Link Plugin vanished unintentionally

      Reproduction:

      1.) Install sidebar-link plugin
      2.) Use sidebar link in a Build Job "foobar"

      Up to that point everything is fine.

      3.) Now remove usage of sidebar plugin from the Build Job. Sidebar plugin is still installed!
      4.) In config.xml of Build Job "foobar" there's still the empty XML element <hudson.plugins.sidebar__link.ProjectLinks/> included now!
      5.) If at any later time from now on Jenkins Job configuration is reloaded or Jenkins is restarted then the whole Build Job is gone (Not being displayed in your Browser any longer!).

      The correlated Build Job data still exists on the underlying mass storage device although it is not loaded.

      If in config.xml the line containing XML element <hudson.plugins.sidebar__link.ProjectLinks/> is removed then after restart the Job is available again.

      Expected behaviour would be that such manual removal of this line shall not be neccessary.

      Thank you...

          [JENKINS-15924] Build Jobs formerly using Sidebar-Link Plugin vanished unintentionally

          Jenkins 1.502,

          I came across the same issue. After removing the sidebar, the job configuration could not be modified anymore, and the configuration can not be loaded anymore, until the remaining line > <hudson.plugins.sidebar__link.ProjectLinks plugin="sidebar-link@1.6"/> is removed from the config.xml.

          I think related traces are:

          Apr 16, 2013 9:54:18 AM jenkins.InitReactorRunner$1 onTaskFailed
          SEVERE: Failed Loading job xyz
          java.lang.NullPointerException
          at java.util.Vector.addAll(Vector.java:857)
          at hudson.model.AbstractProject.createTransientActions(AbstractProject.java:706)
          at hudson.model.Project.createTransientActions(Project.java:206)
          at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:699)
          at hudson.model.AbstractProject.onLoad(AbstractProject.java:298)
          at hudson.model.Project.onLoad(Project.java:83)
          at hudson.model.Items.load(Items.java:221)
          at jenkins.model.Jenkins$17.run(Jenkins.java:2539)
          at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146)
          at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259)
          at jenkins.model.Jenkins$7.runTask(Jenkins.java:883)
          at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187)
          at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
          at java.lang.Thread.run(Thread.java:679)

          And

          Apr 16, 2013 9:53:32 AM winstone.Logger logInternal
          SEVERE: Error while serving http://server/view/foo/xyz/configSubmit
          java.lang.reflect.InvocationTargetException
          at sun.reflect.GeneratedMethodAccessor1045.invoke(Unknown Source)
          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:288)
          at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
          at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
          at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:573)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658)
          at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:573)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658)
          at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:573)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:487)
          at org.kohsuke.stapler.Stapler.service(Stapler.java:164)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
          at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
          at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
          at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:64)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
          at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227)
          at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
          at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
          at java.util.concurrent.FutureTask.run(FutureTask.java:166)
          at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
          at java.lang.Thread.run(Thread.java:679)
          Caused by: java.lang.NullPointerException
          at java.util.Vector.addAll(Vector.java:857)
          at hudson.model.AbstractProject.createTransientActions(AbstractProject.java:706)
          at hudson.model.Project.createTransientActions(Project.java:206)
          at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:699)
          at hudson.model.AbstractProject.save(AbstractProject.java:267)
          at hudson.model.AbstractItem.setDisplayName(AbstractItem.java:158)
          at hudson.model.Job.doConfigSubmit(Job.java:1030)
          at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:740)
          ... 69 more

          Kjell Morgenstern added a comment - Jenkins 1.502, I came across the same issue. After removing the sidebar, the job configuration could not be modified anymore, and the configuration can not be loaded anymore, until the remaining line > <hudson.plugins.sidebar__link.ProjectLinks plugin="sidebar-link@1.6"/> is removed from the config.xml. I think related traces are: Apr 16, 2013 9:54:18 AM jenkins.InitReactorRunner$1 onTaskFailed SEVERE: Failed Loading job xyz java.lang.NullPointerException at java.util.Vector.addAll(Vector.java:857) at hudson.model.AbstractProject.createTransientActions(AbstractProject.java:706) at hudson.model.Project.createTransientActions(Project.java:206) at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:699) at hudson.model.AbstractProject.onLoad(AbstractProject.java:298) at hudson.model.Project.onLoad(Project.java:83) at hudson.model.Items.load(Items.java:221) at jenkins.model.Jenkins$17.run(Jenkins.java:2539) at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:146) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:259) at jenkins.model.Jenkins$7.runTask(Jenkins.java:883) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:187) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:94) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679) And Apr 16, 2013 9:53:32 AM winstone.Logger logInternal SEVERE: Error while serving http://server/view/foo/xyz/configSubmit java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor1045.invoke(Unknown Source) 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:288) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:573) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:573) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:573) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:487) at org.kohsuke.stapler.Stapler.service(Stapler.java:164) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:248) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:64) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at winstone.RequestDispatcher.forward(RequestDispatcher.java:331) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:679) Caused by: java.lang.NullPointerException at java.util.Vector.addAll(Vector.java:857) at hudson.model.AbstractProject.createTransientActions(AbstractProject.java:706) at hudson.model.Project.createTransientActions(Project.java:206) at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:699) at hudson.model.AbstractProject.save(AbstractProject.java:267) at hudson.model.AbstractItem.setDisplayName(AbstractItem.java:158) at hudson.model.Job.doConfigSubmit(Job.java:1030) at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:740) ... 69 more

          Code changed in jenkins
          User: Daniel Beck
          Path:
          src/main/java/hudson/plugins/sidebar_link/ProjectLinks.java
          http://jenkins-ci.org/commit/sidebar-link-plugin/f0d9ced85dc97f542de232d77198c83a7e81f447
          Log:
          [FIXED JENKINS-15924] Fix issues with empty link list in job

          • Don't allow saving a null list of links (no links)
          • readResolve() fix existing broken configurations

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Daniel Beck Path: src/main/java/hudson/plugins/sidebar_link/ProjectLinks.java http://jenkins-ci.org/commit/sidebar-link-plugin/f0d9ced85dc97f542de232d77198c83a7e81f447 Log: [FIXED JENKINS-15924] Fix issues with empty link list in job Don't allow saving a null list of links (no links) readResolve() fix existing broken configurations

          Code changed in jenkins
          User: Lucie Votypkova
          Path:
          pom.xml
          src/main/java/hudson/plugins/sidebar_link/ProjectLinks.java
          http://jenkins-ci.org/commit/sidebar-link-plugin/8391045fc4218405ae8a7fba361b138a81761bc9
          Log:
          Merge branch 'JENKINS-15924' of https://github.com/daniel-beck/sidebar-link-plugin into daniel-beck-JENKINS-15924

          Conflicts:
          pom.xml

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Lucie Votypkova Path: pom.xml src/main/java/hudson/plugins/sidebar_link/ProjectLinks.java http://jenkins-ci.org/commit/sidebar-link-plugin/8391045fc4218405ae8a7fba361b138a81761bc9 Log: Merge branch ' JENKINS-15924 ' of https://github.com/daniel-beck/sidebar-link-plugin into daniel-beck- JENKINS-15924 Conflicts: pom.xml

            danielbeck Daniel Beck
            merkel Oliver Merkel
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: