Elasticsearch version 8.10.3

Elasticsearch version 8.10.3

Known issues

  • Snapshot-based downgrades

    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 change in JDK 21

    This version of Elasticsearch is bundled with JDK 21. In JDK 21 Preventive GC has been removed. This may lead to increased memory pressure and an increased number of CircuitBreakerExceptions when retrieving large documents under some particular load. (issue: #99592)

    If you needed to explicitly enable Preventive GC for your workload in a previous Elasticsearch version, we recommend you avoid to upgrade to this version, as the settings to enable Preventive GC have been removed from JDK 21.

Also see Breaking changes in 8.10.

Bug fixes

Aggregations

  • Fix cardinality agg for const_keyword #99814 (issue: #99776)

Distributed

  • Skip settings validation during desired nodes updates #99946

Highlighting

  • Implement matches() on SourceConfirmedTextQuery #100252

ILM+SLM

  • ILM introduce the check-ts-end-time-passed step #100179 (issue: #99696)
  • ILM the delete action waits for a TSDS index time/bounds to lapse #100207

Ingest Node

  • Validate enrich index before completing policy execution #100106

Machine Learning

  • Adding retry logic for start model deployment API #99673
  • Using 1 MB chunks for elser model storage #99677

Search

  • Close expired search contexts on SEARCH thread #99660
  • Fix fields API for geo_point fields inside other arrays #99868 (issue: #99781)

Snapshot/Restore

  • Support $ and / in restore rename replacements #99892 (issue: #99078)

Transform

  • Do not use PIT in the presence of remote indices in source #99803
  • Ignore “index not found” error when delete_dest_index flag is set but the dest index doesn’t exist #99738
  • Let _stats internally timeout if checkpoint information can not be retrieved #99914

Vector Search

  • Update version range in jvm.options for the Panama Vector API #99846

Enhancements

Authorization

  • Add manage permission for fleet managed threat intel indices #99231

Highlighting

  • Implement matches() on SourceConfirmedTextQuery #100134

Ingest Node

  • Show a concrete error when the enrich index does not exist rather than a NullPointerException #99604

Search

  • Add checks in term and terms queries that input terms are not too long #99818 (issue: #99802)

Upgrades

Packaging

  • Upgrade bundled JDK to Java 21 #99724