You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/release-notes/breaking-changes.md
+6-98Lines changed: 6 additions & 98 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,112 +12,20 @@ If you are migrating from a version prior to version 9.0, you must first upgrade
12
12
13
13
% ## Next version [elasticsearch-nextversion-breaking-changes]
14
14
15
-
```{applies_to}
16
-
stack: coming 9.1.0
17
-
```
18
15
## 9.1.0 [elasticsearch-9.1.0-breaking-changes]
19
16
20
17
Discovery-Plugins:
21
-
:::{dropdown} Migrates `discovery-ec2` plugin to AWS SDK v2
22
-
The `discovery-ec2` plugin now uses AWS SDK v2 instead of v1, as AWS plans to deprecate SDK v1 before the end of Elasticsearch 8.19’s support period. AWS SDK v2 introduces several behavior changes that affect configuration.
23
-
24
-
**Impact:**
25
-
If you use the `discovery-ec2` plugin, your existing settings may no longer be compatible. Notable changes include, but may not be limited to:
26
-
- AWS SDK v2 does not support the EC2 IMDSv1 protocol.
27
-
- AWS SDK v2 does not support the `aws.secretKey` or `com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system properties.
28
-
- AWS SDK v2 does not permit specifying a choice between HTTP and HTTPS so the `discovery.ec2.protocol` setting is no longer effective.
29
-
- AWS SDK v2 does not accept an access key without a secret key or vice versa.
30
-
31
-
**Action:**
32
-
Test the upgrade in a non-production environment. Adapt your configuration to the new SDK functionality. This includes, but may not be limited to, the following items:
33
-
- If you use IMDS to determine the availability zone of a node or to obtain credentials for accessing the EC2 API, ensure that it supports the IMDSv2 protocol.
34
-
- If applicable, discontinue use of the `aws.secretKey` and `com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system properties.
35
-
- If applicable, specify that you wish to use the insecure HTTP protocol to access the EC2 API by setting `discovery.ec2.endpoint` to a URL which starts with `http://`.
36
-
- Either supply both an access key and a secret key using the `discovery.ec2.access_key` and `discovery.ec2.secret_key` keystore settings, or configure neither of these settings.
37
-
38
-
For more information, view [#122062](https://github.com/elastic/elasticsearch/pull/122062).
39
-
:::
18
+
* Upgrade `discovery-ec2` to AWS SDK v2 [#122062](https://github.com/elastic/elasticsearch/pull/122062)
40
19
41
20
ES|QL:
42
-
43
-
:::{dropdown} ES|QL now returns partial results by default
44
-
In previous versions, ES|QL queries failed entirely when any error occurred. As of 8.19.0, ES|QL returns partial results instead.
45
-
46
-
**Impact:**
47
-
Callers must check the `is_partial` flag in the response to determine whether the result is complete. Relying on full results without checking this flag may lead to incorrect assumptions about the response.
48
-
49
-
**Action:**
50
-
If partial results are not acceptable for your use case, you can disable this behavior by:
51
-
* Setting `allow_partial_results=false` in the query URL per request, or
52
-
* Setting the `esql.query.allow_partial_results` cluster setting to `false`.
53
-
54
-
For more information, view [#127351](https://github.com/elastic/elasticsearch/pull/127351) (issue: [#122802](https://github.com/elastic/elasticsearch/issues/122802))
55
-
:::
56
-
57
-
:::{dropdown} Disallows parentheses in unquoted index patterns in ES|QL
58
-
To avoid ambiguity with subquery syntax, ES|QL no longer allows the use of `(` and `)` in unquoted index patterns.
59
-
60
-
**Impact:**
61
-
Queries that include parentheses in unquoted index names will now result in a parsing exception.
62
-
63
-
**Action:**
64
-
Update affected queries to quote index names that contain parentheses. For example, use `FROM "("foo")"` instead of `FROM (foo)`.
65
-
For more information, view [#130427](https://github.com/elastic/elasticsearch/pull/130427) (issue: [#130378](https://github.com/elastic/elasticsearch/issues/130378))
66
-
:::
67
-
68
-
:::{dropdown} Disallows mixing quoted and unquoted components in `FROM` index patterns
69
-
ES|QL no longer allows mixing quoted and unquoted parts in `FROM` index patterns (e.g. `FROM remote:"index"`). Previously, such patterns were parsed inconsistently and could result in misleading runtime errors.
70
-
71
-
**Impact:**
72
-
Queries using partially quoted index patterns—such as quoting only the index or only the remote cluster—will now be rejected at parse time. This change simplifies grammar handling and avoids confusing validation failures.
73
-
74
-
**Action:**
75
-
Ensure index patterns are either fully quoted or fully unquoted. For example:
76
-
* Valid: `FROM "remote:index"` or `FROM remote:index`
For more information, view [#127636](https://github.com/elastic/elasticsearch/pull/127636) (issue: [#122651](https://github.com/elastic/elasticsearch/issues/122651))
80
-
:::
81
-
82
-
:::{dropdown} `skip_unavailable` now catches all remote cluster runtime errors in ES|QL
83
-
When `skip_unavailable` is set to `true`, ES|QL now treats all runtime errors from that cluster as non-fatal. Previously, this setting only applied to connectivity issues (i.e. when a cluster was unavailable).
84
-
85
-
**Impact:**
86
-
Errors such as missing indices on a remote cluster will no longer cause the query to fail. Instead, the cluster will appear in the response metadata as `skipped` or `partial`.
87
-
88
-
**Action:**
89
-
If your workflows rely on detecting remote cluster errors, review your use of `skip_unavailable` and adjust error handling as needed.
90
-
91
-
For more information, view [#128163](https://github.com/elastic/elasticsearch/pull/128163)
92
-
:::
21
+
* Allow partial results by default in ES|QL [#127351](https://github.com/elastic/elasticsearch/pull/127351) (issue: [#122802](https://github.com/elastic/elasticsearch/issues/122802))
22
+
* Disallow brackets in unquoted index patterns [#130427](https://github.com/elastic/elasticsearch/pull/130427) (issue: [#130378](https://github.com/elastic/elasticsearch/issues/130378))
23
+
* Disallow mixed quoted/unquoted patterns in FROM [#127636](https://github.com/elastic/elasticsearch/pull/127636) (issue: [#122651](https://github.com/elastic/elasticsearch/issues/122651))
24
+
* Make `skip_unavailable` catch all errors [#128163](https://github.com/elastic/elasticsearch/pull/128163)
93
25
94
26
Snapshot/Restore:
27
+
* Upgrade `repository-s3` to AWS SDK v2 [#126843](https://github.com/elastic/elasticsearch/pull/126843) (issue: [#120993](https://github.com/elastic/elasticsearch/issues/120993))
95
28
96
-
:::{dropdown} Upgrades `repository-s3` plugin to AWS SDK v2
97
-
The `repository-s3` plugin now uses AWS SDK v2 instead of v1, as AWS will deprecate SDK v1 before the end of Elasticsearch 8.19’s support period. The two SDKs differ in behavior, which may require updates to your configuration.
98
-
99
-
**Impact:**
100
-
Existing `repository-s3` configurations may no longer be compatible. Notable differences in AWS SDK v2 include, but may not be limited to:
101
-
- AWS SDK v2 requires users to specify the region to use for signing requests, or else to run in an environment in which it can determine the correct region automatically. The older SDK used to determine the region based on the endpoint URL as specified with the `s3.client.${CLIENT_NAME}.endpoint` setting, together with other data drawn from the operating environment, and fell back to `us-east-1` if no better value was found.
102
-
- AWS SDK v2 does not support the EC2 IMDSv1 protocol.
103
-
- AWS SDK v2 does not support the `com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system property.
104
-
- AWS SDK v2 does not permit specifying a choice between HTTP and HTTPS so the `s3.client.${CLIENT_NAME}.protocol` setting is deprecated and no longer has any effect.
105
-
- AWS SDK v2 does not permit control over throttling for retries, so the `s3.client.${CLIENT_NAME}.use_throttle_retries` setting is deprecated and no longer has any effect.
106
-
- AWS SDK v2 requires the use of the V4 signature algorithm, therefore, the `s3.client.${CLIENT_NAME}.signer_override` setting is deprecated and no longer has any effect.
107
-
- AWS SDK v2 does not support the `log-delivery-write` canned ACL.
108
-
- AWS SDK v2 counts 4xx responses differently in its metrics reporting.
109
-
- AWS SDK v2 always uses the regional STS endpoint, whereas AWS SDK v2 could use either a regional endpoint or the global `https://sts.amazonaws.com` one.
110
-
111
-
**Action:**
112
-
Test the upgrade in a non-production environment. Adapt your configuration to the new SDK functionality. This includes, but may not be limited to, the following items:
113
-
- Specify the correct signing region using the `s3.client.${CLIENT_NAME}.region` setting on each node. {es} will try to determine the correct region based on the endpoint URL and other data drawn from the operating environment, but might not do so correctly in all cases.
114
-
- If you use IMDS to determine the availability zone of a node or to obtain credentials for accessing the EC2 API, ensure that it supports the IMDSv2 protocol.
115
-
- If applicable, discontinue use of the `com.amazonaws.sdk.ec2MetadataServiceEndpointOverride` system property.
116
-
- If applicable, specify that you wish to use the insecure HTTP protocol to access the S3 API by setting `s3.client.${CLIENT_NAME}.endpoint` to a URL which starts with `http://`.
117
-
- If applicable, discontinue use of the `log-delivery-write` canned ACL.
118
-
119
-
For more information, view [#126843](https://github.com/elastic/elasticsearch/pull/126843) (issue: [#120993](https://github.com/elastic/elasticsearch/issues/120993))
Copy file name to clipboardExpand all lines: docs/release-notes/index.md
+20-19Lines changed: 20 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,14 +21,11 @@ To check for security updates, go to [Security announcements for the Elastic sta
21
21
% *
22
22
23
23
## 9.1.0 [elasticsearch-9.1.0-release-notes]
24
-
```{applies_to}
25
-
stack: coming 9.1.0
26
-
```
27
24
28
25
### Highlights [elasticsearch-9.1.0-highlights]
29
26
30
27
::::{dropdown} Upgrade `repository-s3` to AWS SDK v2
31
-
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}} 9.1 so we have migrated this plugin to the newer AWS SDK v2.
28
+
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 have migrated this plugin to the newer AWS SDK v2.
32
29
The two SDKs are not quite compatible, so please check the breaking changes documentation and test the new version thoroughly before upgrading any production workloads.
33
30
::::
34
31
@@ -54,7 +51,8 @@ Users can enable redirection of ingest failures to the failure store on
54
51
new data streams by specifying it in the new `data_stream_options` field
55
52
inside of a component or index template:
56
53
57
-
```yaml
54
+
[source,yaml]
55
+
----
58
56
PUT _index_template/my-template
59
57
{
60
58
"index_patterns": ["logs-test-*"],
@@ -66,20 +64,21 @@ PUT _index_template/my-template
66
64
}
67
65
}
68
66
}
69
-
}
70
-
```
67
+
}'
68
+
----
71
69
72
70
Existing data streams can be configured with the new data stream
73
71
`_options` endpoint:
74
72
75
-
```yaml
73
+
[source,yaml]
74
+
----
76
75
PUT _data_stream/logs-test-apache/_options
77
76
{
78
77
"failure_store": {
79
78
"enabled": "true"
80
79
}
81
80
}
82
-
```
81
+
----
83
82
84
83
When redirection is enabled, any ingestion related failures will be
85
84
captured in the failure store if the cluster is able to, along with the
@@ -91,24 +90,26 @@ default as they are stored in different indices than the normal data
91
90
stream data. In order to retrieve the failures, we use the `_search` API
92
91
along with a new bit of index pattern syntax, the `::` selector.
93
92
94
-
```yaml
93
+
[source,yaml]
94
+
----
95
95
POST logs-test-apache::failures/_search
96
-
```
96
+
----
97
97
98
98
This index syntax informs the search operation to target the indices in
99
99
its failure store instead of its backing indices. It can be mixed in a
100
100
number of ways with other index patterns to include their failure store
101
101
indices in the search operation:
102
102
103
-
```yaml
103
+
[source,yaml]
104
+
----
104
105
POST logs-*::failures/_search
105
106
POST logs-*,logs-*::failures/_search
106
107
POST *::failures/_search
107
108
POST _query
108
109
{
109
110
"query": "FROM my_data_stream*::failures"
110
111
}
111
-
```
112
+
----
112
113
::::
113
114
114
115
::::{dropdown} Mark Token Pruning for Sparse Vector as GA
@@ -131,23 +132,24 @@ Conceptually, fork is:
131
132
132
133
Example:
133
134
134
-
```yaml
135
+
[source,yaml]
136
+
----------------------------
135
137
FROM test
136
138
| FORK
137
139
( WHERE content:"fox" )
138
140
( WHERE content:"dog" )
139
141
| SORT _fork
140
-
```
142
+
----------------------------
141
143
142
144
The FORK command add a discriminator column called `_fork`:
143
145
144
-
```yaml
146
+
[source,yaml]
147
+
----------------------------
145
148
| id | content |_fork |
146
149
|-----|-----------|-------|
147
150
| 3 | brown fox | fork1 |
148
151
| 4 | white dog | fork2 |
149
-
```
150
-
152
+
----------------------------
151
153
::::
152
154
153
155
::::{dropdown} ES|QL cross-cluster querying is now generally available
@@ -364,7 +366,6 @@ Machine Learning:
364
366
* Mark token pruning for sparse vector as GA [#128854](https://github.com/elastic/elasticsearch/pull/128854)
365
367
* Move to the Cohere V2 API for new inference endpoints [#129884](https://github.com/elastic/elasticsearch/pull/129884)
366
368
* Semantic Text Chunking Indexing Pressure [#125517](https://github.com/elastic/elasticsearch/pull/125517)
367
-
* Track memory used in the hierarchical results normalizer [#2831](https://github.com/elastic/ml-cpp/pull/2831)
368
369
* Upgrade AWS v2 SDK to 2.30.38 [#124738](https://github.com/elastic/elasticsearch/pull/124738)
369
370
*[Inference API] Propagate product use case http header to EIS [#124025](https://github.com/elastic/elasticsearch/pull/124025)
370
371
*[ML] Add HuggingFace Chat Completion support to the Inference Plugin [#127254](https://github.com/elastic/elasticsearch/pull/127254)
0 commit comments