Gerrit 2.0.24 is now available in the usual location:

Schema Change

WARNING: This version contains a schema change (since 2.0.21)

Apply the database specific schema script:

  java -jar gerrit.war --cat sql/upgrade018_019_postgres.sql | psql reviewdb
  java -jar gerrit.war --cat sql/upgrade018_019_mysql.sql    | mysql reviewdb

LDAP Change

LDAP groups are now bound via their full distinguished name, and not by their common name. Sites using LDAP groups will need to have the site administrator visit every LDAP backed group through the web UI (Admin > Groups), search for, and select the underlying LDAP group from the directory server.

This change was made to remove some of the guesswork when it comes to setting up an LDAP enabled group, as well as to permit creating new LDAP enabled groups completely from the web UI. It also removes an ambiguous case when different parts of the same directory space create identically named groups.

New Features

  • Check if the user has permission to upload changes

    The new READ +2 permission is required to upload a change to a project, while READ +1 permits read but denies uploading a change. The schema upgrade script automatically converts READ +1 to +2.

  • Use LDAP DN to match LDAP group to Gerrit group

  • issue 297 Allow admins to search for and bind to LDAP groups

    As noted above, LDAP groups now use the full DN to match to their Gerrit database counterpart, rather than just the common name. Administrators may now create Gerrit groups and attach them to any LDAP group, by performing a query on the LDAP directory for matching groups and selecting a result.

  • issue 301 Try to prevent forgotten git add during replace

    Users are now stopped from performing a replace of a patch set if they have not made a meaningful change (modify a file, or modify the commit message). If only the commit message was modified, a warning is printed, but the replace still occurs.

  • issue 126 Link to our issue tracker in the page footer

    The footer now includes a link to the Gerrit project’s issue tracker, so end-users can more easily report bugs or feature requests back to the developers.

  • issue 300 Support SMTP over SSL/TLS

    Encrypted SMTP is now supported natively within Gerrit, see

Fixes in 2.0.24.1

  • Fix unused import in OpenIdServiceImpl

  • dev-readme: Fix formatting of initdb command

    Minor documentation/code fixes with no impact on execution.

  • Fix LDAP account lookup when user not in group

    Fixes a NullPointerException when a user is not in any group and the underlying LDAP server is ActiveDirectory.

  • issue 315 Correct sendemail.smtppass

    Fixes sendemail configuration to use the documented smtppass variable and not the undocumented smtpuserpass variable.

Fixes in 2.0.24.2

  • Fix CreateSchema to create Administrators group

  • Fix CreateSchema to set type of Registered Users group

  • Default AccountGroup instances to type INTERNAL

  • Document the various AccountGroup.Type states better

    CreateSchema was broken in 2.0.24 and 2.0.24.1 due to the default groups being misconfigured during insertion. Fixed.

  • Grant anonymous uses READ +1, registered users READ +…

    Default permissions were a bit confusing, there is no point in an anonymous user having READ +2.

  • Use the H2 database for unit tests

  • Unit test for SystemConfigProvider and CreateSchema

    Added unit tests to validate CreateSchema works properly, so we don’t have a repeat of breakage here.

Other Changes

  • Start 2.0.24 development

  • Merge change Ie16b8ca2

  • Switch to the new org.eclipse.jgit package

  • Allow default of $JETTY_HOME in to_jetty.sh

  • LdapRealm: Remove unused throws declaration

  • LdapRealm: Fix missing type parameter warnings

  • Remove dead exists method from AccountManager

  • Document ldap.groupPattern

  • AuthSMTPClient: Fix formatting errors

  • style fixup: remote trailing whitespace from our sour…

  • show-caches: Correct example output in documentation

  • Move server programs section under User Guide

  • Revert "Remove dead exists method from AccountManager"

  • Ensure prior commit body is parsed before comparing m…

  • Gerrit 2.0.24