Update 3.1.5 release notes

Change-Id: Ia697f3466bef1577b702ff1a492b4d156b58529d
diff --git a/pages/site/releases/3.1.md b/pages/site/releases/3.1.md
index 06aa3f8..003d125 100644
--- a/pages/site/releases/3.1.md
+++ b/pages/site/releases/3.1.md
@@ -294,6 +294,24 @@
 
 ### 3.1.5 (in development)
 
+* New Features
+
+  * Enable to run online noteDb migration using multiple threads.
+
+    The new configuration option
+    [`notedb.onlineMigrationThreads`](http://gerrit-documentation.storage.googleapis.com/Documentation/3.0.9/config-gerrit.html#notedb.onlineMigrationThreads)
+    allows tuning the number of threads the migration can use.
+
+    This helps to speed up online migration at the expense of imposing a
+    higher load on the Gerrit server running at the same time.
+
+  * Add a new metric for monitoring Java deadlocks.
+
+    The metric `proc/jvm/thread/num_deadlocked_threads` monitors the number of
+    threads that are deadlocked waiting for object monitors or ownable synchronizers.
+
+  * Add support for Elasticsearch 7.7.
+
 * Breaking Changes
 
   * Metrics: Cache disk stat metric computation is disabled by default
@@ -306,6 +324,13 @@
     [cache.enableDiskStatMetrics](http://gerrit-documentation.storage.googleapis.com/Documentation/2.16.18/config-gerrit.html#cache.enableDiskStatMetrics)
     configuration option.
 
+  * Plugin API: Deprecated methods related to the draft workflow and change edits are removed
+
+    * `ChangeApi.getEdit()`
+    * `ChangeApi.publish()`
+    * `RevisionApi.delete()`
+    * `RevisionApi.publish()`
+
   * [Issue 12527](https://bugs.chromium.org/p/gerrit/issues/detail?id=12527):
   Elasticsearch: Support for EOL versions v5.6 and v6.0 to v6.5 is discontinued
 
@@ -313,7 +338,7 @@
 
   * Allow end-to-end tests to proportionally scale on their expected execution times.
 
-    A `power_factor` [environment property](https://gerrit-review.googlesource.com/Documentation/dev-e2e-tests.html#_environment_properties)
+    A `power_factor` [environment property](http://gerrit-documentation.storage.googleapis.com/Documentation/3.0.9/dev-e2e-tests.html#_environment_properties)
     was added to the end-to-end tests core framework. Using that optional property,
     scenario steps can take some more (or less) time prior to expecting proper completion.
 
@@ -332,13 +357,144 @@
   * Allow scenarios to create and delete Gerrit changes alongside projects.
 
     Add the corresponding core support for an optional `http` request body to every such
-    `GerritSimulation`. Either automate or allow [environment properties](https://gerrit-review.googlesource.com/Documentation/dev-e2e-tests.html#_environment_properties)
+    `GerritSimulation`. Either automate or allow [environment properties](http://gerrit-documentation.storage.googleapis.com/Documentation/3.0.9/dev-e2e-tests.html#_environment_properties)
     to feed the related input test data.
 
     Beside core, make the `high-availability` and `multi-site` plugin scenarios test changes
     that way. The latter currently has [Issue 12693](https://bugs.chromium.org/p/gerrit/issues/detail?id=12693)
     as a known limitation.
 
+* Bug Fixes
+
+  * [Issue 12606](https://bugs.chromium.org/p/gerrit/issues/detail?id=12606):
+  Fix `visibleto` predicate for groups.
+
+    If a group name was used in the `visibleto` predicate, changes were
+    not returned even if the group had permission to see them.
+
+  * [Issue 12747](https://bugs.chromium.org/p/gerrit/issues/detail?id=12747):
+  Fix change query visibility for internal user.
+
+  * [Issue 12755](https://bugs.chromium.org/p/gerrit/issues/detail?id=12755):
+  Block the removal of the Realm primary external ids.
+
+    It was possible to remove the email address associated with the primary
+    id of a Realm, effectively resulting in the account being removed.
+
+  * [Isssue 12786](https://bugs.chromium.org/p/gerrit/issues/detail?id=12786):
+  Fix wrong status returned when auth backend couldn't be reached.
+
+    The response 401 was returned when the auth backend could not be
+    reached, instead of the response 503.
+
+  * [Issue 14242](https://bugs.chromium.org/p/gerrit/issues/detail?id=12424):
+  Fix email token verification failures caused by non-URL-encoded characters.
+
+  * [Issue 11625](https://bugs.chromium.org/p/gerrit/issues/detail?id=11625):
+  Avoid multiple notifications for existing reviewers.
+
+  * Fix internal server error on parsing commit message during receive commits.
+
+  * Add `autocomplete="off"` to LDAP login form.
+
+    Some security tools will flag the absence of the autocomplete flag as a
+    possible security issue, as it could allow for passwords to be saved and
+    automatically filled in on shared computers.
+
+  * Accept `--ownedby` as an alias of `--owned-by` in the groups REST API.
+
+    The option was incorrectly documented as `--ownedBy` which resulted in an
+    error "not a valid option" if anyone tried to use it.
+
+    The documentation is fixed, and `--ownedBy` is added as an alias so that it
+    also works for anyone still referring to the old documentation.
+
+  * Fix various misuses of the Flogger API causing exception details to be omitted
+  in the log output.
+
+    Exceptions were not properly passed to the logger which would cause the
+    details to be omitted, or in some cases the message "ERROR: UNUSED LOG ARGUMENTS"
+    to be emitted.
+
+    * When a project migration fails in the migration to schema 169
+    * When an invalid PAPE response is received during OpenID authentication
+    * When a plugin config is invalid and cannot be loaded
+    * When an error occurs while migrating a change metadata entry to JSON
+    * When there is an unsupported charset in a patch text
+
+  * [Issue 12673](https://bugs.chromium.org/p/gerrit/issues/detail?id=12673):
+  Fix emitting debug logs while running tests.
+
+* PolyGerrit UI Fixes
+
+  * [Issue 12707](https://bugs.chromium.org/p/gerrit/issues/detail?id=12707):
+  Apply diff preferences immediately after pressing "Save".
+
+  * [Issue 12690](https://bugs.chromium.org/p/gerrit/issues/detail?id=12690):
+  Only show the "Edit" button for open changes in the diff view.
+
+  * [Issue 12726](https://bugs.chromium.org/p/gerrit/issues/detail?id=12726):
+  Fix incorrect highlighting after `/` character in Javascript.
+
+  * [Issue 12775](https://bugs.chromium.org/p/gerrit/issues/detail?id=12775):
+  Fix parent of previous patch sets not being available.
+
+  * [Issue 12385](https://bugs.chromium.org/p/gerrit/issues/detail?id=12385):
+  Fix memory leak in `gr-plugin-endpoints`.
+
+* Replication Plugin Fixes
+
+  * [Issue 12678](https://bugs.chromium.org/p/gerrit/issues/detail?id=12678):
+  Fix missing replication Id in replication logs.
+
+    The migration to use Flogger in 2.16.17 caused a regression in the logging,
+    where the replication Id was omitted from the logs. This is fixed by reverting
+    back to slf4j logging for the replication log.
+
+  * [Issue 12719](https://bugs.chromium.org/p/gerrit/issues/detail?id=12719):
+  Fix `replication start --wait` to track in-flight collisions and to not fail.
+
+  * [Issue 12731](https://bugs.chromium.org/p/gerrit/issues/detail?id=12731):
+  Don't lose state when there's a pending push to the same ref.
+
+    If there was already a pending push (not an in-flight push) to the same endpoint,
+    the start for the push would be dropped when adding the push to the Destination.
+    This meant that a `replication start --wait` command would never complete when
+    one of its pushes was pending since its state would never receive the completion
+    notification for that push.
+
+  * [Issue 11745](https://bugs.chromium.org/p/gerrit/issues/detail?id=11745):
+  Fix firing pending "..all.." events on startup.
+
+  * [Issue 11760](https://bugs.chromium.org/p/gerrit/issues/detail?id=11760)"
+  Make persistent task keys stable.
+
+  * Fix URL matching to match real URLs in addition to templated URLs.
+
+  * Log when skipping deletion of a ref when pushing to a remote in mirror mode.
+
+  * Improve logging of push failures caused by a lock failure on the remote.
+
+  * Improve logging of refs to be pushed.
+
+* Library Upgrades
+
+  * Upgrade rules_closure to forked version
+
+    This fixes the "-parameters is not supported for target value 1.7. Use 1.8 or later."
+    warning when building. See [PR 478](https://github.com/bazelbuild/rules_closure/pull/478).
+
+  * [Issue 12448](https://bugs.chromium.org/p/gerrit/issues/detail?id=12448):
+  Upgrade Guice to 4.2.3 and switch to using no-AOP Guice distribution
+
+    This allows to more easily support newer JDK versions.
+
+  * Upgrade asm to 7.2
+
+  * Upgrade jackson-core to 2.11.0
+
+  * Upgrade jetty to 9.4.27.v20200227
+
 ### 3.1.4
 
 * Breaking Changes