jenkinsci / jenkinsci/gerrit-trigger-plugin

[JENKINS-34514] NPE if job is marked as parameterized with no parameters

Open
#778 0 comments 0 reactions 0 assignees View on GitHub
component:gerrit-trigger-plugin imported-jira-issue priority:minor resolution:unresolved
Dominant language
Java
Stars
226
Forks
289
PR merge metrics
No merged PRs in 30d

Description

If a build is marked as "This build is parameterized" but has no defined parameters, the Gerrit Trigger cannot trigger it. An NPE gets logged:

```
Apr 29, 2016 12:22:28 PM com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener onTriggered
INFO: Project [Some_Build_Project] triggered by Gerrit: [PatchsetCreated: Change-Id for #43226: Idde0e7ec2fa298b9f5fb9ee59f63af390699fedb PatchSet: 1]
Apr 29, 2016 12:22:28 PM com.sonymobile.tools.gerrit.gerritevents.GerritHandler notifyListeners
SEVERE: When notifying listener: com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener@​19fdac1f about event: PatchsetCreated: Change-Id for #43226: Idde0e7ec2fa298b9f5fb9ee59f63af390699fedb Pa
tchSet: 1
Apr 29, 2016 12:22:28 PM com.sonymobile.tools.gerrit.gerritevents.GerritHandler notifyListeners
SEVERE: Notify-error:
java.lang.NullPointerException
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.getDefaultParametersValues(EventListener.java:278)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.createParameters(EventListener.java:252)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.schedule(EventListener.java:182)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.schedule(EventListener.java:158)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.gerritEvent(EventListener.java:100)
at com.sonymobile.tools.gerrit.gerritevents.GerritHandler.notifyListener(GerritHandler.java:328)
at com.sonymobile.tools.gerrit.gerritevents.GerritHandler.notifyListeners(GerritHandler.java:296)
at com.sonyericsson.hudson.plugins.gerrit.trigger.JenkinsAwareGerritHandler.notifyListeners(JenkinsAwareGerritHandler.java:77)
at com.sonymobile.tools.gerrit.gerritevents.workers.AbstractGerritEventWork.perform(AbstractGerritEventWork.java:46)
at com.sonymobile.tools.gerrit.gerritevents.workers.AbstractJsonObjectWork.perform(AbstractJsonObjectWork.java:77)
at com.sonymobile.tools.gerrit.gerritevents.workers.StreamEventsStringWork.perform(StreamEventsStringWork.java:67)
at com.sonymobile.tools.gerrit.gerritevents.workers.EventThread.run(EventThread.java:66)
at com.sonyericsson.hudson.plugins.gerrit.trigger.SystemEventThread.run(SystemEventThread.java:66)

```

Even after fixing the job (by deselecting the parameters option), manual trigger via 'query and trigger Gerrit patchsets' doesn't work for the specific patchset generating the NPE. Nothing happens. A new patchset is required to get the trigger to work.

---
Originally reported by wsaxon, imported from: NPE if job is marked as parameterized with no parameters


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

Raw content of original issue

If a build is marked as "This build is parameterized" but has no defined parameters, the Gerrit Trigger cannot trigger it. An NPE gets logged:


Apr 29, 2016 12:22:28 PM com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener onTriggered

INFO: Project [Some_Build_Project] triggered by Gerrit: [PatchsetCreated: Change-Id for #43226: Idde0e7ec2fa298b9f5fb9ee59f63af390699fedb PatchSet: 1]
Apr 29, 2016 12:22:28 PM com.sonymobile.tools.gerrit.gerritevents.GerritHandler notifyListeners
SEVERE: When notifying listener: com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener@19fdac1f about event: PatchsetCreated: Change-Id for #43226: Idde0e7ec2fa298b9f5fb9ee59f63af390699fedb Pa
tchSet: 1
Apr 29, 2016 12:22:28 PM com.sonymobile.tools.gerrit.gerritevents.GerritHandler notifyListeners
SEVERE: Notify-error:
java.lang.NullPointerException
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.getDefaultParametersValues(EventListener.java:278)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.createParameters(EventListener.java:252)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.schedule(EventListener.java:182)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.schedule(EventListener.java:158)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.EventListener.gerritEvent(EventListener.java:100)
at com.sonymobile.tools.gerrit.gerritevents.GerritHandler.notifyListener(GerritHandler.java:328)
at com.sonymobile.tools.gerrit.gerritevents.GerritHandler.notifyListeners(GerritHandler.java:296)
at com.sonyericsson.hudson.plugins.gerrit.trigger.JenkinsAwareGerritHandler.notifyListeners(JenkinsAwareGerritHandler.java:77)
at com.sonymobile.tools.gerrit.gerritevents.workers.AbstractGerritEventWork.perform(AbstractGerritEventWork.java:46)
at com.sonymobile.tools.gerrit.gerritevents.workers.AbstractJsonObjectWork.perform(AbstractJsonObjectWork.java:77)
at com.sonymobile.tools.gerrit.gerritevents.workers.StreamEventsStringWork.perform(StreamEventsStringWork.java:67)
at com.sonymobile.tools.gerrit.gerritevents.workers.EventThread.run(EventThread.java:66)
at com.sonyericsson.hudson.plugins.gerrit.trigger.SystemEventThread.run(SystemEventThread.java:66)

Even after fixing the job (by deselecting the parameters option), manual trigger via 'query and trigger Gerrit patchsets' doesn't work for the specific patchset generating the NPE. Nothing happens. A new patchset is required to get the trigger to work.

  • environment: Gerrit 2.12.2, Jenkins 1.651.1, Gerrit Trigger 2.20.0

Contributor guide

Open the contributing guide

Research direction

Start in EventListener.java at getDefaultParametersValues, createParameters, and schedule, then reproduce a Gerrit event for a job marked parameterized with no parameters. Verify that triggering the event, including the reported patchset query flow, no longer logs a NullPointerException and successfully schedules the build.

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
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.