= Release notes for Gerrit 2.1.8

Gerrit 2.1.8 is now available:

link:https://www.gerritcodereview.com/download/gerrit-2.1.8.war[https://www.gerritcodereview.com/download/gerrit-2.1.8.war]

== New Features
* Add cache for tag advertisements
+
When READ level access controls are used on references/branches, this
cache provides a massive performance boost. On some repositories,
no-op Git client requests can go from 7.910s to 0.550s.  Since all
of the time reduction is server CPU, this is a major performance
improvement for busy servers.

* Substantially speed up pushing changes for review
+
Pushing changes to big projects was very slow, for similar issues
as the READ level access controls. Push checks have been improved,
reducing the amount of server CPU required to validate a push for
review is connected to the branch its intended for.

* Avoid costly findMergedInto during push to refs/for/*
+
Checking to see if a new commit uploaded for review has already been
merged into a branch turns out to be expensive, and not very useful.
Since the commit is brand new to the server, it cannot possibly ever
have been merged. Skip the merge check to get a major performance
improvement on upload to big projects.

* Allow serving static files in subdirectories
+
The /static/ subdirectory can now serve static files contained within
subdirectories. This change also patches the code to perform better
checks to ensure the requested URL is actually in the subdirectory.
These additional checks are only relevant on Windows servers, where
MS-DOS compatibility may have permitted access to special device
files in any directory, rather than just the "\\.\" device namespace.

== Bug Fixes
* issue 518 Fix MySQL counter resets
+
MySQL databases lost their change_id, account_id counters after
server restarts, causing duplicate key insertion errors. Fixed.

* issue 1019 Normalize OpenID URLs with http:// prefix
+
OpenID standards require sites to add "http://" to an OpenID
identifier if the user did not enter it themselves.

* Ignore PartialResultException from LDAP.
+
Instead of crashing with an exception, partial results are ignored
when configured to be ignored.
