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

Null value passed through ParametersAction causes all jobs to throw StackTrace

      I was attempting to trigger a build using the System Groovy Script with the following method call:

      item.scheduleBuild2(0, new Cause.UpstreamCause(build), new ParametersAction(null))

      The passing of null should cause an NPE, but because of this all jobs that were submitted from then on were stuck in our Build Queue. In order to fix it we had to bounce our Jenkins instance.

      Initial Stack Trace:
      SEVERE: Timer task hudson.model.LoadStatistics$LoadStatisticsUpdater@1b2ee745 failed
      java.lang.NullPointerException
      at hudson.model.ParametersAction.getAssignedLabel(ParametersAction.java:140)
      at hudson.model.Queue$Item.getAssignedLabelFor(Queue.java:2079)
      at hudson.model.Label$1.matches(Label.java:120)
      at hudson.model.LoadStatistics.computeSnapshot(LoadStatistics.java:361)
      at hudson.model.LoadStatistics$LoadStatisticsUpdater.doRun(LoadStatistics.java:395)
      at hudson.triggers.SafeTimerTask.run(SafeTimerTask.java:50)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:724)

      Stack Traces that occurred on all other jobs is attached.

          [JENKINS-37099] Null value passed through ParametersAction causes all jobs to throw StackTrace

          Oleg Nenashev added a comment -

          Nothing to do in the Groovy plugin.
          Since https://github.com/jenkinsci/jenkins/blob/master/core/src/main/java/hudson/model/ParametersAction.java#L102 is not documented, I agree it makes sense to add such defensive logic to the core

          Oleg Nenashev added a comment - Nothing to do in the Groovy plugin. Since https://github.com/jenkinsci/jenkins/blob/master/core/src/main/java/hudson/model/ParametersAction.java#L102 is not documented, I agree it makes sense to add such defensive logic to the core

          Li Ke added a comment -

          I think this should already been fixed...

          Li Ke added a comment - I think this should already been fixed...

          Looks like this has been fixed already

          Mitch McLaughlin added a comment - Looks like this has been fixed already

            Unassigned Unassigned
            sfletche Stacey Fletcher
            Votes:
            2 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: