jenkinsci / jenkinsci/gerrit-trigger-plugin
[JENKINS-33933] Gerrit-trigger: null-pointer exception in GerritTriggerBuildChooser
- Dominant language
- Java
- Stars
- 226
- Forks
- 289
- PR merge metrics
- No merged PRs in 30d
Description
In my test install I can not trigger jobs anymore:
I always get a null-pointer exception in BuildChooser (see log below).
Manually triggered by user pedersen for Gerrit: https:///review/3200
[lockable-resources] acquired lock on [Test1]
[EnvInject] - Loading node environment variables.
Baue auf Master in Arbeitsbereich /usr/local/jenkins/jobs/ResiSingleCounterMulti/workspace
> /usr/local/bin/git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
> /usr/local/bin/git config remote.origin.url ssh://:29418/ # timeout=10
Fetching upstream changes from ssh://:29418/
> /usr/local/bin/git --version # timeout=10
using GIT_SSH to set credentials
> /usr/local/bin/git fetch --tags --progress ssh://:29418/ refs/changes/00/3200/2
> /usr/local/bin/git rev-parse efa17ba464d2392714029effc904c9fb8612e255^{commit} # timeout=10
Checking out Revision efa17ba464d2392714029effc904c9fb8612e255 (master)
> /usr/local/bin/git config core.sparsecheckout # timeout=10
> /usr/local/bin/git checkout -f efa17ba464d2392714029effc904c9fb8612e255
> /usr/local/bin/git rev-parse FETCH_HEAD^{commit} # timeout=10
> /usr/local/bin/git rev-list b8aa077a767bace642bbe5cbd88cae7eef3cab14 # timeout=10
Polling SCM changes on master
Using strategy: Gerrit Trigger
[poll] Last Built Revision: Revision efa17ba464d2392714029effc904c9fb8612e255 (refs/changes/00/3200/2)
> /usr/local/bin/git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repositories
> /usr/local/bin/git config remote.origin.url ssh://:29418/.git # timeout=10
Fetching upstream changes from ssh://:29418/.git
> /usr/local/bin/git --version # timeout=10
using GIT_ASKPASS to set credentials
> /usr/local/bin/git fetch --tags --progress ssh://:29418/.git refs/changes/00/3200/2 --depth=1
Polling for changes in
ERROR: Build step failed with exception
java.lang.NullPointerException
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTriggerBuildChooser$GetGerritEventRevision.invoke(GerritTriggerBuildChooser.java:217)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTriggerBuildChooser$GetGerritEventRevision.invoke(GerritTriggerBuildChooser.java:212)
at hudson.plugins.git.GitSCM$BuildChooserContextImpl.actOnBuild(GitSCM.java:864)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTriggerBuildChooser.getCandidateRevisions(GerritTriggerBuildChooser.java:107)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWithImpl(GitSCM.java:663)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:528)
at hudson.scm.SCM.compareRemoteRevisionWith(SCM.java:381)
at hudson.scm.SCM.poll(SCM.java:398)
at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1468)
at hudson.model.AbstractProject._poll(AbstractProject.java:1438)
at hudson.model.AbstractProject.poll(AbstractProject.java:1349)
at com.tikal.jenkins.plugins.multijob.MultiJobBuilder.getScmChange(MultiJobBuilder.java:173)
at com.tikal.jenkins.plugins.multijob.MultiJobBuilder.perform(MultiJobBuilder.java:243)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782)
at hudson.model.Build$BuildExecution.build(Build.java:205)
at hudson.model.Build$BuildExecution.doRun(Build.java:162)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.run(MultiJobBuild.java:136)
at hudson.model.Run.execute(Run.java:1738)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild.run(MultiJobBuild.java:73)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:410)
Build step 'MultiJob Phase' marked build as failure
[BFA] Scanning build for known causes...
[BFA] No failure causes found
[BFA] Done. 0s
---
Originally reported by pedersen, imported from: Gerrit-trigger: null-pointer exception in GerritTriggerBuildChooser
rsandell
Raw content of original issue
In my test install I can not trigger jobs anymore:
I always get a null-pointer exception in BuildChooser (see log below).Manually triggered by user pedersen for Gerrit: https://<hostname>/review/3200
[lockable-resources] acquired lock on [Test1]
[EnvInject] - Loading node environment variables.
Baue auf Master in Arbeitsbereich /usr/local/jenkins/jobs/ResiSingleCounterMulti/workspace
> /usr/local/bin/git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
> /usr/local/bin/git config remote.origin.url ssh://<hostname>:29418/<project> # timeout=10
Fetching upstream changes from ssh://<hostname>:29418/<project>
> /usr/local/bin/git --version # timeout=10
using GIT_SSH to set credentials
> /usr/local/bin/git fetch --tags --progress ssh://<hostname>:29418/<project> refs/changes/00/3200/2
> /usr/local/bin/git rev-parse efa17ba464d2392714029effc904c9fb8612e255^{commit} # timeout=10
Checking out Revision efa17ba464d2392714029effc904c9fb8612e255 (master)
> /usr/local/bin/git config core.sparsecheckout # timeout=10
> /usr/local/bin/git checkout -f efa17ba464d2392714029effc904c9fb8612e255
> /usr/local/bin/git rev-parse FETCH_HEAD^{commit} # timeout=10
> /usr/local/bin/git rev-list b8aa077a767bace642bbe5cbd88cae7eef3cab14 # timeout=10
Polling SCM changes on master
Using strategy: Gerrit Trigger
[poll] Last Built Revision: Revision efa17ba464d2392714029effc904c9fb8612e255 (refs/changes/00/3200/2)
> /usr/local/bin/git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repositories
> /usr/local/bin/git config remote.origin.url ssh://<hostname>:29418/<project>.git # timeout=10
Fetching upstream changes from ssh://<hostname>:29418/<project>.git
> /usr/local/bin/git --version # timeout=10
using GIT_ASKPASS to set credentials
> /usr/local/bin/git fetch --tags --progress ssh://<hostname>:29418/<project>.git refs/changes/00/3200/2 --depth=1
Polling for changes in
ERROR: Build step failed with exception
java.lang.NullPointerException
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTriggerBuildChooser$GetGerritEventRevision.invoke(GerritTriggerBuildChooser.java:217)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTriggerBuildChooser$GetGerritEventRevision.invoke(GerritTriggerBuildChooser.java:212)
at hudson.plugins.git.GitSCM$BuildChooserContextImpl.actOnBuild(GitSCM.java:864)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTriggerBuildChooser.getCandidateRevisions(GerritTriggerBuildChooser.java:107)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWithImpl(GitSCM.java:663)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:528)
at hudson.scm.SCM.compareRemoteRevisionWith(SCM.java:381)
at hudson.scm.SCM.poll(SCM.java:398)
at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1468)
at hudson.model.AbstractProject._poll(AbstractProject.java:1438)
at hudson.model.AbstractProject.poll(AbstractProject.java:1349)
at com.tikal.jenkins.plugins.multijob.MultiJobBuilder.getScmChange(MultiJobBuilder.java:173)
at com.tikal.jenkins.plugins.multijob.MultiJobBuilder.perform(MultiJobBuilder.java:243)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782)
at hudson.model.Build$BuildExecution.build(Build.java:205)
at hudson.model.Build$BuildExecution.doRun(Build.java:162)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild$MultiJobRunnerImpl.run(MultiJobBuild.java:136)
at hudson.model.Run.execute(Run.java:1738)
at com.tikal.jenkins.plugins.multijob.MultiJobBuild.run(MultiJobBuild.java:73)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:410)
Build step 'MultiJob Phase' marked build as failure
[BFA] Scanning build for known causes...
[BFA] No failure causes found
[BFA] Done. 0s
environment
```
jenkins 1.655/ jenkins 2.0-alpha/beta
gerrit-trigger-plugin 2.18.3+, also with f1a6a39 applied
```
Contributor guide
Research direction
Start in GerritTriggerBuildChooser.java at GetGerritEventRevision.invoke, especially lines 212 and 217 named by the stack trace. Reproduce polling with the reported Jenkins and gerrit-trigger-plugin versions, then verify that the Gerrit-triggered job no longer fails with a NullPointerException.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- ci-cd
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100