Skip to content

Commit 1ba7797

Browse files
author
elasticsearchmachine
committed
Update docs for v8.19.0 release
1 parent 93788a8 commit 1ba7797

File tree

4 files changed

+648
-1
lines changed

4 files changed

+648
-1
lines changed

docs/reference/migration/migrate_8_19.asciidoc

Lines changed: 202 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,206 @@ coming::[8.19.0]
1616
[[breaking-changes-8.19]]
1717
=== Breaking changes
1818

19-
There are no breaking changes in {es} 8.19.
19+
The following changes in {es} 8.19 might affect your applications
20+
and prevent them from operating normally.
21+
Before upgrading to 8.19, review these changes and take the described steps
22+
to mitigate the impact.
23+
24+
[discrete]
25+
[[breaking_819_cluster_and_node_setting_changes]]
26+
==== Cluster and node setting changes
27+
28+
[[upgrade_discovery_ec2_to_aws_sdk_v2]]
29+
.Upgrade `discovery-ec2` to AWS SDK v2
30+
[%collapsible]
31+
====
32+
*Details* +
33+
In earlier versions of {es} the `discovery-ec2` plugin was based on the AWS SDK v1. AWS will withdraw support for this SDK before the end of the life of {es} {minor-version} so we must migrate to the newer AWS SDK v2.
34+
Unfortunately there are several differences between the two AWS SDK versions which may require you to adjust your system configuration when upgrading to {es} {minor-version} or later. These differences include, but may not be limited to, the following items.
35+
* AWS SDK v2 does not support the EC2 IMDSv1 protocol.
36+
* AWS SDK v2 does not support the `aws.secretKey` or
37+
`com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system properties.
38+
39+
* AWS SDK v2 does not permit specifying a choice between HTTP and HTTPS so
40+
the `discovery.ec2.protocol` setting is no longer effective.
41+
42+
* AWS SDK v2 does not accept an access key without a secret key or vice
43+
versa.
44+
45+
*Impact* +
46+
If you use the `discovery-ec2` plugin, test your upgrade thoroughly before upgrading any production workloads.
47+
Adapt your configuration to the new SDK functionality. This includes, but may not be limited to, the following items.
48+
* If you use IMDS to determine the availability zone of a node or to obtain
49+
credentials for accessing the EC2 API, ensure that it supports the IMDSv2
50+
protocol.
51+
52+
* If applicable, discontinue use of the `aws.secretKey` and
53+
`com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system properties.
54+
55+
* If applicable, specify that you wish to use the insecure HTTP protocol to
56+
access the EC2 API by setting `discovery.ec2.endpoint` to a URL which
57+
starts with `http://`.
58+
59+
* Either supply both an access key and a secret key using the keystore
60+
settings `discovery.ec2.access_key` and `discovery.ec2.secret_key`, or
61+
configure neither of these settings.
62+
====
63+
64+
[[upgrade_repository_s3_to_aws_sdk_v2]]
65+
.Upgrade `repository-s3` to AWS SDK v2
66+
[%collapsible]
67+
====
68+
*Details* +
69+
In earlier versions of {es} the `repository-s3` plugin was based on the AWS SDK v1. AWS will withdraw support for this SDK before the end of the life of {es} {minor-version} so we must migrate to the newer AWS SDK v2.
70+
Unfortunately there are several differences between the two AWS SDK versions which may require you to adjust your system configuration when upgrading to {es} {minor-version} or later. These differences include, but may not be limited to, the following items.
71+
* AWS SDK v2 requires users to specify the region to use for signing
72+
requests, or else to run in an environment in which it can determine the
73+
correct region automatically. The older SDK would try to determine the
74+
region based on the endpoint URL as specified with the
75+
`s3.client.${CLIENT_NAME}.endpoint` setting, together with other data
76+
drawn from the operating environment, and would ultimately fall back to
77+
`us-east-1` if no better value could be found.
78+
79+
* AWS SDK v2 does not support the EC2 IMDSv1 protocol.
80+
* AWS SDK v2 does not support the
81+
`com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system property.
82+
83+
* AWS SDK v2 does not permit specifying a choice between HTTP and HTTPS so
84+
the `s3.client.${CLIENT_NAME}.protocol` setting is deprecated.
85+
86+
* AWS SDK v2 does not permit control over throttling for retries, so the
87+
the `s3.client.${CLIENT_NAME}.use_throttle_retries` setting is deprecated
88+
and no longer has any effect.
89+
90+
* AWS SDK v2 requires the use of the V4 signature algorithm, so the
91+
`s3.client.${CLIENT_NAME}.signer_override` setting is deprecated and no
92+
longer has any effect.
93+
94+
* AWS SDK v2 does not support the `log-delivery-write` canned ACL.
95+
* AWS SDK v2 counts 4xx responses differently in its metrics reporting.
96+
* AWS SDK v2 always uses the regional STS endpoint, whereas AWS SDK v2
97+
could use either a regional endpoint or the global
98+
`https://sts.amazonaws.com` one.
99+
100+
*Impact* +
101+
If you use the `repository-s3` module, test your upgrade thoroughly before upgrading any production workloads.
102+
Adapt your configuration to the new SDK functionality. This includes, but may not be limited to, the following items.
103+
* Specify the correct signing region using the
104+
`s3.client.${CLIENT_NAME}.region` setting on each node. {es} will try and
105+
determine the correct region based on the endpoint URL and other data
106+
drawn from the operating environment but cannot guarantee to do so
107+
correctly in all cases.
108+
109+
* If you use IMDS to determine the availability zone of a node or to obtain
110+
credentials for accessing the EC2 API, ensure that it supports the IMDSv2
111+
protocol.
112+
113+
* If applicable, discontinue use of the
114+
`com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system property.
115+
116+
* If applicable, specify the protocol to use to access the S3 API by
117+
setting `s3.client.${CLIENT_NAME}.endpoint` to a URL which starts with
118+
`http://` or `https://`.
119+
120+
* If applicable, discontinue use of the `log-delivery-write` canned ACL.
121+
====
122+
123+
[discrete]
124+
[[breaking_819_es_ql_changes]]
125+
==== ES|QL changes
126+
127+
[[allow_partial_results_by_default_in_es_ql]]
128+
.Allow partial results by default in ES|QL
129+
[%collapsible]
130+
====
131+
*Details* +
132+
In earlier versions of {es}, ES|QL would fail the entire query if it encountered any error. ES|QL now returns partial results instead of failing when encountering errors.
133+
134+
*Impact* +
135+
Callers should check the `is_partial` flag returned in the response to determine if the result is partial or complete. If returning partial results is not desired, this option can be overridden per request via an `allow_partial_results` parameter in the query URL or globally via the cluster setting `esql.query.allow_partial_results`.
136+
====
137+
138+
[discrete]
139+
[[breaking_819_es_ql_changes]]
140+
==== ES|QL changes
141+
142+
[[cluster_setting_skip_unavailable_catches_all_runtime_errors]]
143+
.Cluster setting "skip_unavailable" catches all runtime errors
144+
[%collapsible]
145+
====
146+
*Details* +
147+
If `skip_unavailable` is set to `true`, the runtime errors from this cluster do not lead to a failure of the query. Instead, the cluster is set to `skipped` or `partial` status, and the query execution continues. This is a breaking change from previous versions, where `skip_unavailable` only applied to errors related to a cluster being unavailable.
148+
149+
*Impact* +
150+
The errors on remote clusters, e.g. missing indices, will not lead to a failure of the query. Instead, the cluster is set to `skipped` or `partial` status in the response metadata.
151+
====
152+
153+
[[disallow_mixed_quoted_unquoted_patterns_in_from]]
154+
.Disallow mixed quoted/unquoted patterns in FROM
155+
[%collapsible]
156+
====
157+
*Details* +
158+
Previously, the ES|QL grammar allowed users to individually quote constituent strings in index patterns such as "remote_cluster":"index_name". This would allow users to write complex malformed index patterns that often slip through grammar and the subsequent validation. This could result in runtime errors that can be misleading. This change simplifies the grammar to early reject such malformed index patterns at the parsing stage, allowing users to write simpler queries and see more relevant and meaningful errors.
159+
160+
*Impact* +
161+
Users can write queries with simpler index patterns and see more meaningful and relevant errors.
162+
====
163+
164+
[[unquoted_index_patterns_do_not_allow_characters]]
165+
.Unquoted index patterns do not allow `(` and `)` characters
166+
[%collapsible]
167+
====
168+
*Details* +
169+
Previously, ES|QL accepted unquoted index patterns containing brackets, such as `FROM index(1) | ENRICH policy(2)`.
170+
This query syntax is no longer valid because it could conflict with subquery syntax, where brackets are used as delimiters.
171+
Brackets are now only allowed in quoted index patterns. For example: `FROM "index(1)" | ENRICH "policy(2)"`.
172+
173+
*Impact* +
174+
This affects existing queries containing brackets in index or policy names, i.e. in FROM, ENRICH, and LOOKUP JOIN commands.
175+
====
176+
177+
178+
[discrete]
179+
[[deprecated-8.19]]
180+
=== Deprecations
181+
182+
The following functionality has been deprecated in {es} 8.19
183+
and will be removed in a future version.
184+
While this won't have an immediate impact on your applications,
185+
we strongly encourage you to take the described steps to update your code
186+
after upgrading to 8.19.
187+
188+
To find out if you are using any deprecated functionality,
189+
enable <<deprecation-logging, deprecation logging>>.
190+
191+
[discrete]
192+
[[deprecations_819_ingest]]
193+
==== Ingest deprecations
194+
195+
[[deprecate_indices_merge_scheduler_use_thread_pool_setting]]
196+
.Deprecate `indices.merge.scheduler.use_thread_pool` setting
197+
[%collapsible]
198+
====
199+
*Details* +
200+
This deprecates the `indices.merge.scheduler.use_thread_pool` node setting that was introduced in
201+
202+
*Impact* +
203+
There should be no impact to users since the setting was not released before its deprecation here (and is not documented).
204+
====
205+
206+
[discrete]
207+
[[deprecations_819_rest_api]]
208+
==== REST API deprecations
209+
210+
[[deprecate_ability_to_connect_to_nodes_of_versions_8_18_earlier]]
211+
.Deprecate ability to connect to nodes of versions 8.18 and earlier
212+
[%collapsible]
213+
====
214+
*Details* +
215+
Versions 9.1.0 and later of {es} will not support communication with nodes of versions earlier than 8.19.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}>>).
216+
{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.1.0 onwards. You must upgrade all your clusters to version 8.19.0 or later before upgrading any of your clusters to 9.1.0 or later.
217+
218+
*Impact* +
219+
Upgrade all of your clusters to at least 8.19.0 before upgrading any of them to 9.1.0 or later.
220+
====
20221

docs/reference/release-notes.asciidoc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@
77
This section summarizes the changes in each release.
88

99
* <<release-notes-8.19.0>>
10+
* <<release-notes-8.18.4>>
1011
* <<release-notes-8.18.3>>
1112
* <<release-notes-8.18.2>>
1213
* <<release-notes-8.18.1>>
1314
* <<release-notes-8.18.0>>
15+
* <<release-notes-8.17.9>>
1416
* <<release-notes-8.17.8>>
1517
* <<release-notes-8.17.7>>
1618
* <<release-notes-8.17.6>>
@@ -97,10 +99,12 @@ This section summarizes the changes in each release.
9799
--
98100

99101
include::release-notes/8.19.0.asciidoc[]
102+
include::release-notes/8.18.4.asciidoc[]
100103
include::release-notes/8.18.3.asciidoc[]
101104
include::release-notes/8.18.2.asciidoc[]
102105
include::release-notes/8.18.1.asciidoc[]
103106
include::release-notes/8.18.0.asciidoc[]
107+
include::release-notes/8.17.9.asciidoc[]
104108
include::release-notes/8.17.8.asciidoc[]
105109
include::release-notes/8.17.7.asciidoc[]
106110
include::release-notes/8.17.6.asciidoc[]

0 commit comments

Comments
 (0)