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/changelog-bundles/9.0.5.yml
+89Lines changed: 89 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -7,60 +7,113 @@ changelogs:
7
7
area: EQL
8
8
type: bug
9
9
issues: []
10
+
entryOverride: |
11
+
:::{dropdown} Prevent double invocation of EQL listener
12
+
In some cases, the EQL listener could be resolved twice, potentially leading to unexpected behavior.
13
+
[#124918](https://github.com/elastic/elasticsearch/pull/124918) updates the control flow to exit early and ensure the listener is only invoked once.
14
+
:::
10
15
- pr: 129282
11
16
summary: "Fix query rewrite logic to preserve `boosts` and `queryName` for `match`, `knn`, and `sparse_vector` queries on semantic_text fields"
12
17
area: Search
13
18
type: bug
14
19
issues: []
20
+
entryOverride: |
21
+
:::{dropdown} Preserve `boost` and `queryName` for semantic queries
22
+
Query rewrite logic dropped `boost` and `queryName` values for `match`, `knn`, and `sparse_vector` queries on `semantic_text` fields, causing query weighting and naming to be lost. [#129282](https://github.com/elastic/elasticsearch/pull/129282) resolves the issue so these values are now preserved correctly during query rewriting.
:::{dropdown} Fix `mv_expand` inconsistent column order
32
+
The `mv_expand` command could return columns in a different order depending on query execution paths. Now, the new attribute generated by `mv_expand` preserves the original field positions in the output. [#129745](https://github.com/elastic/elasticsearch/pull/129745) (issue: [#129000](https://github.com/elastic/elasticsearch/issues/129000))
33
+
:::
21
34
- pr: 130279
22
35
summary: Fix missing removal of query cancellation callback in QueryPhase
23
36
area: Search
24
37
type: bug
25
38
issues:
26
39
- 130071
40
+
entryOverride: |
41
+
:::{dropdown} Fix missing removal of query cancellation callback in QueryPhase
42
+
A missing removal of a query cancellation callback caused unintended timeouts or cancellations in later search phases when `allow_partial_search_results` was enabled, which could lead to `ArrayIndexOutOfBoundsException` errors.
43
+
[#130279](https://github.com/elastic/elasticsearch/pull/130279) resolves the issue and ensures predictable search execution. (issue: [#130071](https://github.com/elastic/elasticsearch/issues/130071))
44
+
:::
27
45
- pr: 131236
28
46
summary: Correctly handling `download_database_on_pipeline_creation` within a pipeline processor within a default or final pipeline
29
47
area: Ingest Node
30
48
type: bug
31
49
issues: []
50
+
entryOverride: |
51
+
:::{dropdown} Correctly handle `download_database_on_pipeline_creation` in default or final pipelines
52
+
A bug in the `download_database_on_pipeline_creation` setting caused geoip databases not to download when the geoip processor was referenced from a pipeline processor in a default or final pipeline.
53
+
This resulted in documents being tagged with `_geoip_database_unavailable_GeoLite2-City.mmdb` instead of having geo data.
54
+
[#131236](https://github.com/elastic/elasticsearch/pull/131236) resolves the issue and ensures geoip databases download correctly in this scenario.
55
+
:::
32
56
- pr: 131391
33
57
summary: Fix bug in point in time response
34
58
area: Search
35
59
type: bug
36
60
issues:
37
61
- 131026
62
+
entryOverride: |
63
+
:::{dropdown} Correct shard status reporting in point-in-time responses
64
+
The Open PIT API incorrectly swapped the skipped and failed shard counts when partial search results were allowed. This caused the API to report failed shards as skipped and vice versa. [#131391](https://github.com/elastic/elasticsearch/pull/131391) fixes the field mapping so shard status is reported accurately. (issue: [#131026](https://github.com/elastic/elasticsearch/issues/131026))
65
+
:::
38
66
- pr: 131426
39
67
summary: Disallow remote enrich after lu join
40
68
area: ES|QL
41
69
type: bug
42
70
issues:
43
71
- 129372
72
+
entryOverride: |
73
+
:::{dropdown} Disallow remote `ENRICH` after `LOOKUP JOIN`
74
+
Combining a `LOOKUP JOIN` with remote `ENRICH` could trigger a `ClassCastException` due to pipeline breaker interactions when limits or top-N queries were involved. [#131426](https://github.com/elastic/elasticsearch/pull/131426) adds a validation that forbids remote `ENRICH` after `LOOKUP JOIN`, preventing the runtime error. (issue: [#129372](https://github.com/elastic/elasticsearch/issues/129372))
75
+
:::
44
76
- pr: 131429
45
77
summary: Prevent auto-sharding for data streams in LOOKUP index mode
46
78
area: Data streams
47
79
type: bug
48
80
issues: []
81
+
entryOverride: |
82
+
:::{dropdown} Disables auto-sharding for LOOKUP index mode
83
+
Auto-sharding for data streams caused unsupported replica scaling when the index mode was set to `LOOKUP`.
84
+
This happened because lookup mappers do not support scaling beyond one replica.
85
+
[#131429](https://github.com/elastic/elasticsearch/pull/131429) resolves this issue by disabling auto-sharding for data streams with `LOOKUP` index modes, avoiding unsupported replica settings.
86
+
:::
49
87
- pr: 131630
50
88
summary: Fix memory usage estimation for ELSER models
51
89
area: Machine Learning
52
90
type: bug
53
91
issues: []
92
+
entryOverride: |
93
+
:::{dropdown} Fix memory usage estimation for ELSER models
94
+
Using the deployment ID instead of the model ID caused `isElserV1Or2Model` to fail for ELSER models, because deployment IDs don’t start with `.elser_model_2`.
95
+
[#131630](https://github.com/elastic/elasticsearch/pull/131630) updates the code to pass the model ID, ensuring memory usage is estimated correctly.
96
+
:::
54
97
- pr: 131677
55
98
summary: Throw better exception if verifying empty repo
56
99
area: Snapshot/Restore
57
100
type: bug
58
101
issues: []
102
+
entryOverride: |
103
+
:::{dropdown} Improve error handling when verifying an empty snapshot repository
104
+
105
+
Verifying the integrity of a brand-new snapshot repository without any index blobs failed with a low-level error because the repository generation was `-1`, which cannot be sent over the wire. [#131677](https://github.com/elastic/elasticsearch/pull/131677) updates the logic to reject such requests early with a clearer, more helpful error message.
106
+
:::
59
107
- pr: 131680
60
108
summary: Grant server module read/write entitlements for deprecated path setting "path.shared_data"
61
109
area: Infra/Core
62
110
type: bug
63
111
issues: []
112
+
entryOverride: |
113
+
:::{dropdown} Grants server module read/write permissions for deprecated `path.shared_data` setting
114
+
The server module is now granted read/write permissions for the deprecated `path.shared_data` setting.
115
+
[#131680](https://github.com/elastic/elasticsearch/pull/131680) resolves issues surfaced in internal testing and ensures compatibility with legacy configurations.
116
+
:::
64
117
- pr: 131711
65
118
summary: Track & log when there is insufficient disk space available to execute merges
66
119
area: Engine
@@ -71,31 +124,67 @@ changelogs:
71
124
area: Machine Learning
72
125
type: bug
73
126
issues: []
127
+
entryOverride: |
128
+
:::{dropdown} Prevents double-counting of allocations in trained model deployment memory estimation
129
+
A recent refactor introduced a bug that caused the trained model memory estimation to double-count the number of allocations, leading to inflated memory usage projections.
130
+
[#131990](https://github.com/elastic/elasticsearch/pull/131990) resolves the issue by reverting the change and restoring accurate memory estimation for trained model deployments.
131
+
:::
74
132
- pr: 132018
75
133
summary: Fix decoding of non-ascii field names in ignored source
76
134
area: Mapping
77
135
type: bug
78
136
issues: []
137
+
entryOverride: |
138
+
:::{dropdown} Fixes decoding failure for non-ASCII field names in `_ignored_source`
139
+
A decoding error occurred when field names in `_ignored_source` contained non-ASCII characters.
140
+
This happened because `String.length()` was used to calculate the byte length of the field name, which only works correctly for ASCII characters.
141
+
[#132018](https://github.com/elastic/elasticsearch/pull/132018) resolves the issue by using the actual byte array length of the encoded field name, ensuring proper decoding regardless of character encoding.
142
+
:::
79
143
- pr: 132101
80
144
summary: Simulate ingest API uses existing index mapping when `mapping_addition` is given
81
145
area: Ingest Node
82
146
type: bug
83
147
issues: []
148
+
entryOverride: |
149
+
:::{dropdown} Fixes incorrect mapping resolution in simulate ingest API when `mapping_addition` is provided
150
+
When using the simulate ingest API with a `mapping_addition`, the system incorrectly ignored the existing mapping of the target index and instead applied the mapping from a matching index template, if one existed.
151
+
This caused mismatches between the index and simulation behavior.
152
+
[#132101](https://github.com/elastic/elasticsearch/pull/132101) resolves the issue and ensures that the index’s actual mapping is used when available, preserving consistency between simulation and execution.
153
+
:::
84
154
- pr: 132167
85
155
summary: Deal with internally created IN in a different way for EQL
86
156
area: EQL
87
157
type: bug
88
158
issues:
89
159
- 118621
160
+
entryOverride: |
161
+
:::{dropdown} Resolves EQL parsing failure for IP-mapped fields in `OR` expressions
162
+
Parsing EQL queries failed when comparing the same IP-mapped field to multiple values joined by an `OR` expression.
163
+
This occurred because lookup operators were internally rewritten into `IN` expressions, which are unsupported for IP-type fields.
164
+
[#132167](https://github.com/elastic/elasticsearch/pull/132167) resolves the issue and ensures EQL can now successfully parse and execute such or queries involving IP fields. (issue: [#118621](https://github.com/elastic/elasticsearch/issues/118621))
165
+
:::
90
166
- pr: 132260
91
167
summary: FIx Driver creating status with a live list of operators
92
168
area: ES|QL
93
169
type: bug
94
170
issues:
95
171
- 131564
172
+
entryOverride: |
173
+
:::{dropdown} Fixes `ConcurrentModificationException` caused by live operator list
174
+
A `ConcurrentModificationException` caused test failures in `CrossClusterAsyncEnrichStopIT.testEnrichAfterStop` under certain conditions.
175
+
This happened because the ES|QL driver added a live operator list to the `DriverStatus` object, which could be modified while the status was being serialized.
176
+
[#132260](https://github.com/elastic/elasticsearch/pull/132260) fixes the issue by copying the operator list before storing it, preventing concurrent changes during status reads.
summary: "Aggs: Add validation to Bucket script pipeline agg"
98
181
area: Aggregations
99
182
type: bug
100
183
issues:
101
184
- 132272
185
+
entryOverride: |
186
+
:::{dropdown} Validate parent aggregation type in `bucket_script`
187
+
The `bucket_script` pipeline aggregation didn’t validate that its parent aggregation was a multi-bucket aggregation.
188
+
This caused a `ClassCastException` at runtime when the parent was not multi-bucket.
189
+
[#132320](https://github.com/elastic/elasticsearch/pull/132320) adds a validation step so the aggregation fails early, preventing the runtime error. (issue: [#132272](https://github.com/elastic/elasticsearch/issues/132272))
0 commit comments