Also see Breaking changes in 8.10.
The snapshot repository format changed in a manner that prevents earlier versions of Elasticsearch from reading the repository contents if it contains snapshots from this version and the last cluster to write to this repository was in the 8.10 series. This will prevent you from reverting an upgrade to the 8.10 series by restoring a snapshot taken before the upgrade.
Snapshot repositories written by clusters running versions 8.11.0 and later are compatible with all earlier versions. Moreover, clusters running version 8.11.0 or later will also automatically repair the repository format the first time they write to the repository to take or delete a snapshot, making it so that all earlier versions can read its contents again.
If you wish to downgrade to a version prior to 8.9.0, take or delete a snapshot using a cluster running version 8.11.0 or later to repair the repository format first. If you cannot repair the repository in this way, first delete all the snapshots in the repository taken with version 8.9.0 or later. To do this will require using a cluster running version 8.10.0 or later.
If you wish to downgrade to a version in the 8.9 series, you must take or delete a snapshot using a cluster running version 8.11.0 or later to repair the repository format first. If you cannot repair the repository in this way, first delete all the snapshots in the repository taken with version 8.10.0 or later using a cluster running version 8.10.4.
High Memory Pressure due to a GC JVM setting change
This version of Elasticsearch is bundled with JDK 20. In JDK 20 Preventive GC is disabled by default. This may lead to increased memory pressure and an increased number of CircuitBreakerExceptions when retrieving large documents under some load patterns. (issue: #99592)
If this change affects your use of Elasticsearch, consider re-enabling the previous behaviour by adding the JVM arguments
-XX:+UnlockDiagnosticVMOptions -XX:+G1UsePreventiveGC(reference: JDK 20 release notes). It is important to note that this workaround is temporary and works only with JDK 20, which is bundled with Elasticsearch up to version 8.10.2 inclusive. Successive versions are bundling JDK 21+, where this setting has been removed. Specifying those JVM arguments will prevent the JVM (and therefore Elasticsearch Nodes) from starting.
- Infra/Node Lifecycle
- Fix PIT when resolving with deleted indices #99281