jenkinsci / jenkinsci/gerrit-trigger-plugin

[JENKINS-28161] Gerrit trigger NPE on report and event

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

Description

On a gerrit event, the gerrit trigger fails with NPE:

Apr 29, 2015 6:04:43 PM com.sonyericsson.hudson.plugins.gerrit.gerritevents.GerritHandler notifyListener

SEVERE: Exception thrown during event handling.

java.lang.NullPointerException

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:63)

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:60)

at java.util.TreeMap.getEntryUsingComparator(TreeMap.java:368)

at java.util.TreeMap.getEntry(TreeMap.java:339)

at java.util.TreeMap.get(TreeMap.java:272)

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory.isBuilding(BuildMemory.java:295)

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener.isBuilding(ToGerritRunListener.java:264)

at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTrigger.gerritEvent(GerritTrigger.java:979)

at com.sonyericsson.hudson.plugins.gerrit.gerritevents.GerritHandler.notifyListener(GerritHandler.java:328)

at com.sonyericsson.hudson.plugins.gerrit.gerritevents.GerritHandler.notifyListeners(GerritHandler.java:290)

at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.AbstractGerritEventWork.perform(AbstractGerritEventWork.java:45)

at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.AbstractJsonObjectWork.perform(AbstractJsonObjectWork.java:57)

at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.StreamEventsStringWork.perform(StreamEventsStringWork.java:66)

at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.EventThread.run(EventThread.java:65)

And on a job finished it also throws NPE on:

Apr 29, 2015 5:53:09 PM hudson.model.listeners.RunListener report

WARNING: RunListener failed

java.lang.NullPointerException

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:63)

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:60)

at java.util.TreeMap.getEntryUsingComparator(TreeMap.java:368)

at java.util.TreeMap.getEntry(TreeMap.java:339)

at java.util.TreeMap.get(TreeMap.java:272)

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory.started(BuildMemory.java:168)

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener.onStarted(ToGerritRunListener.java:150)

at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener.onStarted(ToGerritRunListener.java:54)

at hudson.model.listeners.RunListener.fireStarted(RunListener.java:213)

at hudson.model.Run.execute(Run.java:1737)

at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)

at hudson.model.ResourceController.execute(ResourceController.java:98)

at hudson.model.Executor.run(Executor.java:374)

---
Originally reported by dcaroest, imported from: Gerrit trigger NPE on report and event


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

Raw content of original issue

On a gerrit event, the gerrit trigger fails with NPE:

Apr 29, 2015 6:04:43 PM com.sonyericsson.hudson.plugins.gerrit.gerritevents.GerritHandler notifyListener
SEVERE: Exception thrown during event handling.
java.lang.NullPointerException
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:63)
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:60)
at java.util.TreeMap.getEntryUsingComparator(TreeMap.java:368)
at java.util.TreeMap.getEntry(TreeMap.java:339)
at java.util.TreeMap.get(TreeMap.java:272)
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory.isBuilding(BuildMemory.java:295)
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener.isBuilding(ToGerritRunListener.java:264)
at com.sonyericsson.hudson.plugins.gerrit.trigger.hudsontrigger.GerritTrigger.gerritEvent(GerritTrigger.java:979)
at com.sonyericsson.hudson.plugins.gerrit.gerritevents.GerritHandler.notifyListener(GerritHandler.java:328)
at com.sonyericsson.hudson.plugins.gerrit.gerritevents.GerritHandler.notifyListeners(GerritHandler.java:290)
at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.AbstractGerritEventWork.perform(AbstractGerritEventWork.java:45)
at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.AbstractJsonObjectWork.perform(AbstractJsonObjectWork.java:57)
at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.StreamEventsStringWork.perform(StreamEventsStringWork.java:66)
at com.sonyericsson.hudson.plugins.gerrit.gerritevents.workers.EventThread.run(EventThread.java:65)

And on a job finished it also throws NPE on:

Apr 29, 2015 5:53:09 PM hudson.model.listeners.RunListener report
WARNING: RunListener failed
java.lang.NullPointerException
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:63)
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory$GerritTriggeredEventComparator.compare(BuildMemory.java:60)
at java.util.TreeMap.getEntryUsingComparator(TreeMap.java:368)
at java.util.TreeMap.getEntry(TreeMap.java:339)
at java.util.TreeMap.get(TreeMap.java:272)
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.model.BuildMemory.started(BuildMemory.java:168)
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener.onStarted(ToGerritRunListener.java:150)
at com.sonyericsson.hudson.plugins.gerrit.trigger.gerritnotifier.ToGerritRunListener.onStarted(ToGerritRunListener.java:54)
at hudson.model.listeners.RunListener.fireStarted(RunListener.java:213)
at hudson.model.Run.execute(Run.java:1737)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:374)


environment

```
Jenkins 1.607

gerrit trigger 2.11, 2.12 and 2.13
```

Contributor guide

Open the contributing guide

Research direction

Start with BuildMemory.java, especially GerritTriggeredEventComparator.compare at line 63, and trace its callers in isBuilding and started. Reproduce the reported paths for a Gerrit event and a completed job, then verify that neither path throws 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
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.