Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add release notes for v8.18.0 release #126353

Merged
merged 6 commits into from
Apr 7, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
121 changes: 120 additions & 1 deletion docs/reference/migration/migrate_8_18.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,124 @@ coming::[8.18.0]
[[breaking-changes-8.18]]
=== Breaking changes

There are no breaking changes in {es} 8.18.
The following changes in {es} 8.18 might affect your applications
and prevent them from operating normally.
Before upgrading to 8.18, review these changes and take the described steps
to mitigate the impact.

[discrete]
[[breaking_818_analysis_changes]]
==== Analysis changes

[[change_semantic_text_to_act_like_normal_text_field]]
.Change Semantic Text To Act Like A Normal Text Field
[%collapsible]
====
*Details* +
The previous semantic_text format used a complex subfield structure in _source to store the embeddings. This complicated interactions/integrations with semantic_text fields and _source in general. This new semantic_text format treats it as a normal text field, where the field's value in _source is the value assigned by the user.

*Impact* +
Users who parsed the subfield structure of the previous semantic_text format in _source will need to update their parsing logic. The new format does not directly expose the chunks and embeddings generated from the input text. The new format will be applied to all new indices, any existing indices will continue to use the previous format.
====

[discrete]
[[breaking_818_cluster_and_node_setting_changes]]
==== Cluster and node setting changes

[[drop_tls_rsa_cipher_support_for_jdk_24]]
.Drop `TLS_RSA` cipher support for JDK 24
[%collapsible]
====
*Details* +
This change removes `TLS_RSA` ciphers from the list of default supported ciphers, for Elasticsearch deployments running on JDK 24.

*Impact* +
The dropped ciphers are `TLS_RSA_WITH_AES_256_GCM_SHA384`, `TLS_RSA_WITH_AES_128_GCM_SHA256`, `TLS_RSA_WITH_AES_256_CBC_SHA256`, `TLS_RSA_WITH_AES_128_CBC_SHA256`, `TLS_RSA_WITH_AES_256_CBC_SHA`, and `TLS_RSA_WITH_AES_128_CBC_SHA`. TLS connections to Elasticsearch using these ciphers will no longer work. Please configure your clients to use one of supported cipher suites.
====

[discrete]
[[breaking_818_packaging_changes]]
==== Packaging changes

[[disable_machine_learning_on_macos_x86_64]]
.Disable machine learning on macOS x86_64
[%collapsible]
====
*Details* +
The machine learning plugin is permanently disabled on macOS x86_64. For the last three years Apple has been selling hardware based on the arm64 architecture, and support will increasingly focus on this architecture in the future. Changes to upstream dependencies of Elastic's machine learning functionality have made it unviable for Elastic to continue to build machine learning on macOS x86_64.

*Impact* +
To continue to use machine learning functionality on macOS please switch to an arm64 machine (Apple silicon). Alternatively, it will still be possible to run Elasticsearch with machine learning enabled in a Docker container on macOS x86_64.
====

[discrete]
[[breaking_818_rest_api_changes]]
==== REST API changes

[[set_allow_partial_search_results_true_by_default]]
.Set allow_partial_search_results=true by default
[%collapsible]
====
*Details* +
Before this change, in case of shard failures, EQL queries always returned an error. With this change, they will keep running and will return partial results.

*Impact* +
EQL queries that would previously fail due to shard failures, will now succeed and return partial results. The previous defaults can be restored by setting `xpack.eql.default_allow_partial_results` cluster setting to `false` or setting with `allow_partial_search_results` to `false` in the query request.
====


[discrete]
[[deprecated-8.18]]
=== Deprecations

The following functionality has been deprecated in {es} 8.18
and will be removed in a future version.
While this won't have an immediate impact on your applications,
we strongly encourage you to take the described steps to update your code
after upgrading to 8.18.

To find out if you are using any deprecated functionality,
enable <<deprecation-logging, deprecation logging>>.

[discrete]
[[deprecations_818_index_setting]]
==== Index setting deprecations

[[increase_frozen_indices_deprecation_level_to_critical]]
.Increase the frozen indices deprecation level to `CRITICAL`
[%collapsible]
====
*Details* +
The migration deprecations API previously returned a warning on frozen indices. Support for reading frozen indices will be removed in 9.0, so in 8.18 this has been made a critical issue.

*Impact* +
Users are required to unfreeze any frozen indices before upgrading to 9.x. (N.B. It was impossible to freeze indices in 8.x, so this only applies to 7.x indices which have not been reindexed.)
====

[discrete]
[[deprecations_818_rest_api]]
==== REST API deprecations

[[deprecate_ability_to_connect_to_nodes_of_versions_8_17_earlier]]
.Deprecate ability to connect to nodes of versions 8.17 and earlier
[%collapsible]
====
*Details* +
Versions 9.0.0 and later of {es} will not support communication with nodes of versions earlier than 8.18.0, so the ability to connect to nodes of earlier versions is deprecated in this version. This applies both to communication within a cluster and communication across clusters (e.g. for <<modules-cross-cluster-search,{ccs}>> or <<xpack-ccr,{ccr}>>).
{es} will report in its <<deprecation-logging, deprecation logging>> each time it opens a connection to a node that will not be supported from version 9.0.0 onwards. You must upgrade all your clusters to version 8.18.0 or later before upgrading any of your clusters to 9.0.0 or later.

*Impact* +
Upgrade all of your clusters to at least 8.18.0 before upgrading any of them to 9.0.0 or later.
====

[[v_7_deprecation_logging_set_to_critical]]
.V_7 deprecation logging set to critical
[%collapsible]
====
*Details* +
This changes the V_7 API deprecation logging level to CRITICAL.

*Impact* +
Any usage of deprecated V_7 API features will now be logged at the CRITICAL level. This does not change functionality.
====

8 changes: 8 additions & 0 deletions docs/reference/release-notes.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,13 @@
This section summarizes the changes in each release.

* <<release-notes-8.18.0>>
* <<release-notes-8.17.4>>
* <<release-notes-8.17.3>>
* <<release-notes-8.17.2>>
* <<release-notes-8.17.1>>
* <<release-notes-8.17.0>>
* <<release-notes-8.16.6>>
* <<release-notes-8.16.5>>
* <<release-notes-8.16.4>>
* <<release-notes-8.16.3>>
* <<release-notes-8.16.2>>
Expand Down Expand Up @@ -85,9 +89,13 @@ This section summarizes the changes in each release.
--

include::release-notes/8.18.0.asciidoc[]
include::release-notes/8.17.4.asciidoc[]
include::release-notes/8.17.3.asciidoc[]
include::release-notes/8.17.2.asciidoc[]
include::release-notes/8.17.1.asciidoc[]
include::release-notes/8.17.0.asciidoc[]
include::release-notes/8.16.6.asciidoc[]
include::release-notes/8.16.5.asciidoc[]
include::release-notes/8.16.4.asciidoc[]
include::release-notes/8.16.3.asciidoc[]
include::release-notes/8.16.2.asciidoc[]
Expand Down
47 changes: 47 additions & 0 deletions docs/reference/release-notes/8.16.5.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
[[release-notes-8.16.5]]
== {es} version 8.16.5

Also see <<breaking-changes-8.16,Breaking changes in 8.16>>.

[[bug-8.16.5]]
[float]
=== Bug fixes

Allocation::
* Deduplicate allocation stats calls {es-pull}123246[#123246]

Authentication::
* Improve jwt logging on failed auth {es-pull}122247[#122247]

CRUD::
* Reduce license checks in `LicensedWriteLoadForecaster` {es-pull}123346[#123346] (issue: {es-issue}123247[#123247])

Data streams::
* Add `_metric_names_hash` field to OTel metric mappings {es-pull}120952[#120952]

EQL::
* Fix JOIN command validation (not supported) {es-pull}122011[#122011]

ES|QL::
* Fix ENRICH validation for use of wildcards {es-pull}121911[#121911]
* Speed up VALUES for many buckets {es-pull}123073[#123073]

Ingest::
* Fix `ArrayIndexOutOfBoundsException` in `ShardBulkInferenceActionFilter` {es-pull}122538[#122538]

Ingest Node::
* Canonicalize processor names and types in `IngestStats` {es-pull}122610[#122610]
* Deduplicate `IngestStats` and `IngestStats.Stats` identity records when deserializing {es-pull}122496[#122496]
* Fix redact processor arraycopy bug {es-pull}122640[#122640]
* Register `IngestGeoIpMetadata` as a NamedXContent {es-pull}123079[#123079]

Mapping::
* fix stale data in synthetic source for string stored field {es-pull}123105[#123105] (issue: {es-issue}123110[#123110])

[[upgrade-8.16.5]]
[float]
=== Upgrades

Authentication::
* Bump json-smart and oauth2-oidc-sdk {es-pull}122737[#122737]

26 changes: 26 additions & 0 deletions docs/reference/release-notes/8.16.6.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
[[release-notes-8.16.6]]
== {es} version 8.16.6

Also see <<breaking-changes-8.16,Breaking changes in 8.16>>.

[[bug-8.16.6]]
[float]
=== Bug fixes

Infra/Core::
* Prevent rare starvation bug when using scaling `EsThreadPoolExecutor` with empty core pool size. {es-pull}124732[#124732] (issue: {es-issue}124667[#124667])

Machine Learning::
* Migrate `model_version` to `model_id` when parsing persistent elser inference endpoints {es-pull}124769[#124769] (issue: {es-issue}124675[#124675])

Search::
* Do not let `ShardBulkInferenceActionFilter` unwrap / rewrap ESExceptions {es-pull}123890[#123890]
* Revert fail-fast disconnect strategy for `_resolve/cluster` {es-pull}124241[#124241]

[[upgrade-8.16.6]]
[float]
=== Upgrades

Security::
* Bump nimbus-jose-jwt to 10.0.2 {es-pull}124544[#124544]

63 changes: 63 additions & 0 deletions docs/reference/release-notes/8.17.3.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
[[release-notes-8.17.3]]
== {es} version 8.17.3

Also see <<breaking-changes-8.17,Breaking changes in 8.17>>.

[[bug-8.17.3]]
[float]
=== Bug fixes

Aggregations::
* Disable concurrency when `top_hits` sorts on anything but `_score` {es-pull}123610[#123610]

Allocation::
* Deduplicate allocation stats calls {es-pull}123246[#123246]

Authentication::
* Improve jwt logging on failed auth {es-pull}122247[#122247]

CRUD::
* Reduce license checks in `LicensedWriteLoadForecaster` {es-pull}123346[#123346] (issue: {es-issue}123247[#123247])

Data streams::
* Add `_metric_names_hash` field to OTel metric mappings {es-pull}120952[#120952]

EQL::
* Fix JOIN command validation (not supported) {es-pull}122011[#122011]

ES|QL::
* Fix ENRICH validation for use of wildcards {es-pull}121911[#121911]
* Fix listener leak in exchange service {es-pull}122417[#122417] (issue: {es-issue}122271[#122271])
* Speed up VALUES for many buckets {es-pull}123073[#123073]

Infra/Node Lifecycle::
* Block running ES 8.17 with JDK 24+ {es-pull}122517[#122517]

Ingest::
* Fix `ArrayIndexOutOfBoundsException` in `ShardBulkInferenceActionFilter` {es-pull}122538[#122538]

Ingest Node::
* Canonicalize processor names and types in `IngestStats` {es-pull}122610[#122610]
* Deduplicate `IngestStats` and `IngestStats.Stats` identity records when deserializing {es-pull}122496[#122496]
* Fix redact processor arraycopy bug {es-pull}122640[#122640]
* Register `IngestGeoIpMetadata` as a NamedXContent {es-pull}123079[#123079]
* Use ordered maps for `PipelineConfiguration` xcontent deserialization {es-pull}123403[#123403]

Logs::
* Fix issues that prevents using search only snapshots for indices that use index sorting. This is includes Logsdb and time series indices. {es-pull}122199[#122199]
* Use min node version to guard injecting settings in logs provider {es-pull}123005[#123005] (issue: {es-issue}122950[#122950])

Mapping::
* Fix synthetic source bug that would mishandle nested `dense_vector` fields {es-pull}122425[#122425]
* fix stale data in synthetic source for string stored field {es-pull}123105[#123105] (issue: {es-issue}123110[#123110])

Stats::
* Fixing serialization of `ScriptStats` `cache_evictions_history` {es-pull}123384[#123384]

[[upgrade-8.17.3]]
[float]
=== Upgrades

Authentication::
* Bump json-smart and oauth2-oidc-sdk {es-pull}122737[#122737]

36 changes: 36 additions & 0 deletions docs/reference/release-notes/8.17.4.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
[[release-notes-8.17.4]]
== {es} version 8.17.4

Also see <<breaking-changes-8.17,Breaking changes in 8.17>>.

[[bug-8.17.4]]
[float]
=== Bug fixes

ES|QL::
* Catch parsing exception {es-pull}124958[#124958] (issue: {es-issue}119025[#119025])
* Fix early termination in `LuceneSourceOperator` {es-pull}123197[#123197]

Indices APIs::
* Avoid hoarding cluster state references during rollover {es-pull}124107[#124107] (issue: {es-issue}123893[#123893])
* [8.17] Avoid hoarding cluster state references during rollover {es-pull}124267[#124267]

Infra/Core::
* Prevent rare starvation bug when using scaling `EsThreadPoolExecutor` with empty core pool size. {es-pull}124732[#124732] (issue: {es-issue}124667[#124667])

Machine Learning::
* Migrate `model_version` to `model_id` when parsing persistent elser inference endpoints {es-pull}124769[#124769] (issue: {es-issue}124675[#124675])

Search::
* Do not let `ShardBulkInferenceActionFilter` unwrap / rewrap ESExceptions {es-pull}123890[#123890]
* Don't generate stacktrace in `TaskCancelledException` {es-pull}125002[#125002]
* Fix concurrency issue in `ScriptSortBuilder` {es-pull}123757[#123757]
* Revert fail-fast disconnect strategy for `_resolve/cluster` {es-pull}124241[#124241]

[[upgrade-8.17.4]]
[float]
=== Upgrades

Security::
* Bump nimbus-jose-jwt to 10.0.2 {es-pull}124544[#124544]

Loading