Gerrit 2.4.1 is now available:

There are no schema changes from 2.4. However, if upgrading from anything but 2.4, follow the upgrade procedure in the 2.4 ReleaseNotes.

Bug Fixes

  • Catch all exceptions when async emailing

    This fixes email notification issues reported here.

  • Fixed cleanup of propagated SshScopes

    This improves error reporting in case of email notification errors.

  • issue 1394 Fix lookup of the Commit Message file in patch set

    There is an assumption that the commit message is always first in the list of files of a patch set. However, there was another place in Gerrit code, which did binary search through the list of the files, without taking this assumption into account. In case when a patch set contained a file which lexicographically sorted before /COMMIT_MSG (like .gitignore for example) it could have happened that the commit message was not found and, as a side effect, it wasn’t possible to review it.

  • issue 1162 Fix deadlock on destroy of CommandFactoryProvider

  • Honor the sendmail.smtpUser from gerrit.config on upgrade

    If sendmail.smtpUser was not present in the gerrit.config then don’t set it in site upgrade.

  • issue 1420 Forge committer bypassed

    It was possible to forge committer even without having permission for that. This was a regression from 2.3.

  • Make sure the "Object too large…" error message is printed when an object larger than receive.maxObjectSizeLimit is rejected by Gerrit

  • Display proper error if file diff fails because content is too large

  • Get around a log4j bug that causes AsyncAppender-Dispatcher thread to die and block other threads

    • Make async logging buffer size configurable

    • Make logging events discardable, prevent NPE in AsyncAppender-Dispatcher thread