Page MenuHomePhabricator

ircbot-plugin emits SEVERE java.lang.IndexOutOfBoundsException when parsing AWAY IRCv3 notifications
Closed, ResolvedPublic


There is still a SEVERE log though:

May 17, 2021 11:44:04 AM INFO org.pircbotx.InputParser handleLine
:fdans!sid24243@gateway/web/ AWAY

May 17, 2021 11:38:05 AM SEVERE org.pircbotx.PircBotX startLineProcessing
Exception encountered when parsing line
java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
	at java.base/jdk.internal.util.Preconditions.outOfBounds(
	at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(
	at java.base/jdk.internal.util.Preconditions.checkIndex(
	at java.base/java.util.Objects.checkIndex(
	at java.base/java.util.ArrayList.get(
	at org.pircbotx.InputParser.processCommand(
	at org.pircbotx.InputParser.handleLine(
	at org.pircbotx.PircBotX.startLineProcessing(
	at org.pircbotx.PircBotX.connect(
	at org.pircbotx.PircBotX.startBot(
	at hudson.plugins.ircbot.v2.IRCConnection$

Which is from

574         } else if (command.equals("AWAY"))
575             //IRCv3 AWAY notify
576             source.setAwayMessage(parsedLine.get(0));

Apparently when processing AWAY commands. Probably Issue with string parsing in various places.

The ircbot plugin uses Pircbotx 2.0.1. The issue got addressed by which got released in 2.1.

Event Timeline

In the ideal world we would get the Jenkins IRC plugin to upgrade Pircbotx, but it does not seem to be actively maintained. So it is merely logspam.

We currently run 2.36

Pircbotx got bumped from 2.0.1 to 2.1-g479835f-165 with
And further bumped to v2.3-gb1b48bf-9 with

So I guess if we upgrade the Jenkins plugin we might finally get rid of those notices :)

Mentioned in SAL (#wikimedia-releng) [2023-05-16T15:04:19Z] <hashar> CI Jenkins: updating IRC plugin from 2.42 to 3.829.v12d4b_d1f7650 and instant-messaging plugin from 1.48 to 2.666.va_6c1e97cc252 # T283009

hashar claimed this task.

Following the plugin update, the SEVERE logs no more show up in the systemd log for the CI Jenkins!