DiamondLightSource / DiamondLightSource/gerrit-plugins

NPE in unverify plugin when run by auto change cleanup

Open
#1 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

If the Gerrit server is configured with the auto abandon change cleanup then when this plugin is called there is a NPE. Looking at the messages on these changes the issue is probably that the event doesn't have a username/name.

The NPE is on line 130:
```java
event.getWho().username, event.getWho().name, event.getChange()._number);
```

The stack trace is:
```
er@159c4f35[Wrapped task = com.google.gerrit.server.logging.LoggingContextAwareRunnable@1a4eb392]]]] WARN com.google.gerrit.server.plugincontext.PluginContext : Failure in class uk.ac.diamond.daq.gerrit.plugin.unverify.DLSUnverify of plugin DLS-unverify
java.lang.NullPointerException
at uk.ac.diamond.daq.gerrit.plugin.unverify.DLSUnverify.onChangeAbandoned(DLSUnverify.java:130)
at com.google.gerrit.server.extensions.events.ChangeAbandoned.lambda$fire$0(ChangeAbandoned.java:70)
at com.google.gerrit.server.plugincontext.PluginContext.runLogExceptions(PluginContext.java:214)
at com.google.gerrit.server.plugincontext.PluginSetContext.lambda$runEach$1(PluginSetContext.java:148)
at java.base/java.lang.Iterable.forEach(Iterable.java:75)
at com.google.gerrit.server.plugincontext.PluginSetContext.runEach(PluginSetContext.java:148)
at com.google.gerrit.server.extensions.events.ChangeAbandoned.fire(ChangeAbandoned.java:70)
at com.google.gerrit.server.change.AbandonOp.postUpdate(AbandonOp.java:127)
at com.google.gerrit.server.update.BatchUpdate.executePostOps(BatchUpdate.java:902)
at com.google.gerrit.server.update.BatchUpdate.execute(BatchUpdate.java:189)
at com.google.gerrit.server.update.BatchUpdate.execute(BatchUpdate.java:488)
at com.google.gerrit.server.change.BatchAbandon.batchAbandon(BatchAbandon.java:90)
at com.google.gerrit.server.change.BatchAbandon.batchAbandon(BatchAbandon.java:106)
at com.google.gerrit.server.change.AbandonUtil.abandonInactiveOpenChanges(AbandonUtil.java:87)
at com.google.gerrit.server.change.ChangeCleanupRunner.lambda$run$0(ChangeCleanupRunner.java:86)
at com.google.gerrit.server.update.RetryableChangeAction.lambda$new$0(RetryableChangeAction.java:48)
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.