There are no schema changes from 2.8.3.

Bug Fixes

Secondary Index

  • Disable commitWithin when running Reindex.

    If commitWithin was set to a low value, it caused poor performance when running the Reindex program on sites with a large amount of changes.

    The commitWithin setting is now disabled from within Reindex by overriding the configuration with -1. Index updates are auto-flushed but not auto-committed, which is the least safe but the most efficient for reindexing the entire site.

  • Fix memory leak in Lucene index.

    SubIndex.NrtFuture objects were being added as listeners of searchManager and never released.

Change Screen

  • Issue 2456: Respect the comment visibility preference in the new change screen.

    The "Expand All" and "Collapse All" settings now work like they did on the old change screen.

  • Issue 2538: Don’t show the "Patch File" download for merge commits.

    The patch file download does not work for commits with more than one parent (i.e. merges) and results in an error being displayed. Now the link is not shown for merge commits; a solution for merge patches will be investigated for future releases.

  • Issue 2526: Hide the refs/heads/ prefix in branch suggestion list for cherry-picks.

    Regular branches like refs/heads/stable/ will now be displayed as just stable in the suggestion list when cherry-picking a change in the Web UI.

  • Disable the "Save" button after it is pressed when editing the commit message.

    The "Save" button was not being disabled, and could be pressed multiple times while the message was being saved, resulting in multiple new patch sets being created.

  • Fix syntax highlighting for shell files in new side-by-side diff.

  • Fix inconsistent behavior of diff view when viewing binary files.

    In the new change screen, if the user clicked on a binary file in the file list, the unified view was used. Then when navigating to a previous or next file that is not binary, the diff view stayed in the old unified setting.

  • Make the skip bar more user friendly in side-by-side diff.

    The whole "skipped xxx common lines" text is now a link, rather than just the number.

  • Show previous and next file shortcut keys in new side-by-side navigation arrow tooltips.

    In the top right corner of a file the navigation cluster has a tooltip on the up arrow but did not show the tooltip on the left or right arrows.


  • Fix ChangeListener auto-registered implementations.

    Add missing @ExtensionPoint in ChangeListener so implementors can use @Listen to register.

  • Escape dollar sign in plugin manifest entries.

    Plugins could be built, but not loaded, if they had any manifest entries that contained a dollar sign.


  • Issue 2564, Issue 2571: Emit ref-updated event when editing project access via Web UI.

  • Issue 2557: By default don’t allow admins to create new branches by push.

    When pushing changes it is easy to make a typo in the refspec and in this case new branches should not be created. If administrators want to create branches by push they should explicitly assign themselves the needed access rights.

  • Do not refresh project list if filter did not change.

    The project list was being refreshed on every key event even if the filter did not change, e.g. moving the cursor inside the text entry was causing the list to update unnecessarily.

  • Fix mail thread getting stuck when waiting for response from SMTP server.

    It is now possible to configure the default thread pool size, the size of the thread pool for sending emails, and the SMTP server connection timeout.

  • Issue 2215: Paginate the project list screen.

    The project list screen was taking a long time to render over a large amount of projects (1,000+) and with even larger number of projects (3,000+), it could make the browser unresponsive.

    The project list screen now uses pagination to resolve this issue. The number of projects displayed is determined by the Maximum Page Size user preference.

    Option S is added to the projects REST API to support query offset.

  • Issue 2599: Always auto confirm adding reviewers in set-reviewers SSH command.

    If a group contains more than addreviewer.maxWithoutConfirmation members, adding it as reviewer to a change requires a confirmation. A user should only be asked for the confirmation when reviewers are added from the Web UI but not when the set-reviewers SSH command is used.

  • Set uploader to current user in patchset-created event upon cherry-picking.

    When using the Web UI (both old and new change screens) to cherry-pick a change to a branch that already has this change (e.g. cherry-picking on the same branch to get rid of dependencies), the corresponding patchset-created event had its patchSet.uploader set to the change’s owner instead of the current user. It is now set to the current user, so stream-events consumers can properly detect who uploaded the rebased patch set.


  • Issue 1273: Update the MySQL documentation concerning character sets.

    The setup documentation is updated to mention that there is no need to use latin1 encoding if you are using an engine other than MyISAM.

  • Use consistent grammatical tense in ssh command descriptions.

  • Add more detail about refs/drafts in access control documentation.