jenkinsci / jenkinsci/gerrit-trigger-plugin

[JENKINS-33933] Gerrit-trigger: null-pointer exception in GerritTriggerBuildChooser

Open
#775 2 comments 0 reactions 0 assignees View on GitHub
component:gerrit-trigger-plugin imported-jira-issue priority:critical resolution:unresolved
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


  • assignee: rsandell
  • status: Reopened
  • priority: Critical
  • component(s): gerrit-trigger-plugin
  • resolution: Unresolved
  • votes: 0
  • watchers: 1
  • imported: 2025-12-06

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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.