Elasticsearch version 8.8.2edit

Also see Breaking changes in 8.8.

Known issuesedit

  • 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.

Bug fixesedit

  • Fix iteration of empty percentiles throwing Null Pointer Exception #96668 (issue: #96626)
  • Uses ClusterSettings instead of Node Settings in HealthMetadataService #96843 (issue: #96219)
Ingest Node
  • Support dotted field notations in the reroute processor #96243
Machine Learning
  • Ensure NLP model inference queue is always cleared after shutdown or failure #96738
  • Fix translation of queries involving Version vals #96540 (issue: #96509)
  • Increase concurrent request of opening point-in-time #96782
  • The get data stream api incorrectly prints warning log for upgraded tsdb data streams #96606


  • Adding null check to fix potential NPE #96785 (issue: #96781)