Skip to content

Commit 55a0b9e

Browse files
Merge branch 'main' into pkar/cps-search-force-reconnect
2 parents e5f0618 + 9db4361 commit 55a0b9e

File tree

167 files changed

+6604
-667
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

167 files changed

+6604
-667
lines changed

docs/changelog/130092.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 130092
2+
summary: "Added Llama provider support to the Inference Plugin"
3+
area: Machine Learning
4+
type: enhancement
5+
issues: []

docs/changelog/131395.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 131395
2+
summary: Enable failure store for newly created OTel data streams
3+
area: Data streams
4+
type: enhancement
5+
issues: []

docs/changelog/131442.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 131442
2+
summary: Track inference deployments
3+
area: Machine Learning
4+
type: enhancement
5+
issues: []

docs/changelog/131525.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 131525
2+
summary: Fix semantic highlighting bug on flat quantized fields
3+
area: Highlighting
4+
type: bug
5+
issues:
6+
- 131443

docs/changelog/131541.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 131541
2+
summary: Added Sample operator `NamedWritable` to plugin
3+
area: ES|QL
4+
type: bug
5+
issues: []

docs/reference/elasticsearch/index-settings/slow-log.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ Events that meet the specified threshold are emitted into [{{es}} logging](docs-
2020
* If [{{es}} monitoring](docs-content://deploy-manage/monitor/stack-monitoring.md) is enabled, from [Stack Monitoring](docs-content://deploy-manage/monitor/monitoring-data/visualizing-monitoring-data.md). Slow log events have a `logger` value of `index.search.slowlog` or `index.indexing.slowlog`.
2121
* From local {{es}} service logs directory. Slow log files have a suffix of `_index_search_slowlog.json` or `_index_indexing_slowlog.json`.
2222

23+
See this [this video](https://www.youtube.com/watch?v=ulUPJshB5bU) for a walkthrough of setting and reviewing slow logs.
2324

2425
## Slow log format [slow-log-format]
2526

docs/reference/elasticsearch/jvm-settings.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,18 @@ To override the default heap size, set the minimum and maximum heap size setting
8787

8888
The heap size should be based on the available RAM:
8989

90-
* Set `Xms` and `Xmx` to no more than 50% of your total memory. {{es}} requires memory for purposes other than the JVM heap. For example, {{es}} uses off-heap buffers for efficient network communication and relies on the operating system’s filesystem cache for efficient access to files. The JVM itself also requires some memory. It’s normal for {{es}} to use more memory than the limit configured with the `Xmx` setting.
90+
* Set `Xms` and `Xmx` to no more than 50% of the total memory available to each {{es}} node. {{es}} requires memory for purposes other than the JVM heap. For example, {{es}} uses off-heap buffers for efficient network communication and relies on the operating system’s filesystem cache for efficient access to files. The JVM itself also requires some memory. It’s normal for {{es}} to use more memory than the limit configured with the `Xmx` setting.
9191

9292
::::{note}
93-
When running in a container, such as [Docker](docs-content://deploy-manage/deploy/self-managed/install-elasticsearch-with-docker.md), total memory is defined as the amount of memory visible to the container, not the total system memory on the host.
93+
When running in a container, such as [Docker](docs-content://deploy-manage/deploy/self-managed/install-elasticsearch-with-docker.md), the total memory available to {{es}} means the amount of memory available within the container, not the total system memory on the host.
94+
95+
If you are running multiple {{es}} nodes on the same host, or in the same container, the total of all the nodes' heap sizes should not exceed 50% of the total available memory.
96+
97+
Account for the memory usage of other processes running on the same host, or in the same container, when computing the total memory available to {{es}}.
98+
99+
The 50% guideline is intended as a safe upper bound on the heap size. You may find that heap sizes smaller than this maximum offer better performance, for instance by allowing your operating system to use a larger filesystem cache.
100+
101+
If you set the heap size too large, {{es}} may perform poorly and nodes may be terminated by the operating system.
94102
::::
95103

96104
* Set `Xms` and `Xmx` to no more than the threshold for compressed ordinary object pointers (oops). The exact threshold varies but 26GB is safe on most systems and can be as large as 30GB on some systems. To verify you are under the threshold, check the {{es}} log for an entry like this:

docs/reference/elasticsearch/security-privileges.md

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -286,22 +286,20 @@ This section lists the privileges that you can assign to a role.
286286
`create`
287287
: Privilege to index documents.
288288

289-
:::{admonition} Deprecated in 8.0
290-
Also grants the permission to update the index mapping (but not the data streams mapping), using the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping) or by relying on [dynamic field mapping](docs-content://manage-data/data-store/mapping/dynamic-mapping.md). In a future major release, this privilege will not grant any mapping update permissions.
291-
:::
292-
293289
::::{note}
294290
This privilege does not restrict the index operation to the creation of documents but instead restricts API use to the index API. The index API allows a user to overwrite a previously indexed document. See the `create_doc` privilege for an alternative.
295291
::::
296292

293+
:::{important}
294+
Starting from 8.0, this privilege no longer grants the permission to update index mappings.
295+
In earlier versions, it implicitly permitted index mapping updates (excluding data stream mappings) via the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping) or through [dynamic field mapping](docs-content://manage-data/data-store/mapping/dynamic-mapping.md).
296+
Mapping update capabilities will be fully removed in a future major release.
297+
:::
298+
297299

298300
`create_doc`
299301
: Privilege to index documents. It does not grant the permission to update or overwrite existing documents.
300302

301-
:::{admonition} Deprecated in 8.0
302-
Also grants the permission to update the index mapping (but not the data streams mapping), using the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping) or by relying on [dynamic field mapping](docs-content://manage-data/data-store/mapping/dynamic-mapping.md). In a future major release, this privilege will not grant any mapping update permissions.
303-
:::
304-
305303
::::{note}
306304
This privilege relies on the `op_type` of indexing requests ([Index](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-create) and [Bulk](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-bulk)). When ingesting documents as a user who has the `create_doc` privilege (and no higher privilege such as `index` or `write`), you must ensure that *op_type* is set to *create* through one of the following:
307305

@@ -311,6 +309,12 @@ This section lists the privileges that you can assign to a role.
311309

312310
::::
313311

312+
:::{important}
313+
Starting from 8.0, this privilege no longer grants the permission to update index mappings.
314+
In earlier versions, it implicitly permitted index mapping updates (excluding data stream mappings) via the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping) or through [dynamic field mapping](docs-content://manage-data/data-store/mapping/dynamic-mapping.md).
315+
Mapping update capabilities will be fully removed in a future major release.
316+
:::
317+
314318

315319
`create_index`
316320
: Privilege to create an index or data stream. A create index request may contain aliases to be added to the index once created. In that case the request requires the `manage` privilege as well, on both the index and the aliases names.
@@ -340,8 +344,10 @@ This section lists the privileges that you can assign to a role.
340344
`index`
341345
: Privilege to index and update documents.
342346

343-
:::{admonition} Deprecated in 8.0
344-
Also grants the permission to update the index mapping (but not the data streams mapping), using the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping) or by relying on [dynamic field mapping](docs-content://manage-data/data-store/mapping/dynamic-mapping.md). In a future major release, this privilege will not grant any mapping update permissions.
347+
:::{important}
348+
Starting from 8.0, this privilege no longer grants the permission to update index mappings.
349+
In earlier versions, it implicitly permitted index mapping updates (excluding data stream mappings) via the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping) or through [dynamic field mapping](docs-content://manage-data/data-store/mapping/dynamic-mapping.md).
350+
Mapping update capabilities will be fully removed in a future major release.
345351
:::
346352

347353
`maintenance`
@@ -389,8 +395,10 @@ This section lists the privileges that you can assign to a role.
389395
`write`
390396
: Privilege to perform all write operations to documents, which includes the permission to index, update, and delete documents as well as performing bulk operations, while also allowing to dynamically update the index mapping.
391397

392-
:::{admonition} Deprecated in 8.0
393-
It also grants the permission to update the index mapping (but not the data streams mapping), using the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping). This will be retracted in a future major release.
398+
:::{important}
399+
Starting from 8.0, this privilege no longer grants the permission to update index mappings.
400+
In earlier versions, it implicitly permitted index mapping updates (excluding data stream mappings) via the [updating mapping API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-indices-put-mapping) or through [dynamic field mapping](docs-content://manage-data/data-store/mapping/dynamic-mapping.md).
401+
Mapping update capabilities will be fully removed in a future major release.
394402
:::
395403

396404
## Run as privilege [_run_as_privilege]

docs/reference/query-languages/esql/_snippets/operators/detailedDescription/rlike.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ ROW message = "foo ( bar"
1818
```
1919

2020
```{applies_to}
21-
stack: ga 9.1
21+
stack: ga 9.2
2222
serverless: ga
2323
```
2424

libs/x-content/src/main/java/org/elasticsearch/xcontent/ConstructingObjectParser.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,27 @@ public <T> void declareField(BiConsumer<Value, T> consumer, ContextParser<Contex
220220
}
221221
}
222222

223+
/**
224+
* Declare a field that is an array of objects or null. Used to avoid calling the consumer when used with
225+
* {@link #optionalConstructorArg()} or {@link #constructorArg()}.
226+
* @param consumer Consumer that will be passed as is to the {@link #declareField(BiConsumer, ContextParser, ParseField, ValueType)}.
227+
* @param objectParser Parser that will parse the objects in the array, checking for nulls.
228+
* @param field Field to declare.
229+
*/
230+
@Override
231+
public <T> void declareObjectArrayOrNull(
232+
BiConsumer<Value, List<T>> consumer,
233+
ContextParser<Context, T> objectParser,
234+
ParseField field
235+
) {
236+
declareField(
237+
consumer,
238+
(p, c) -> p.currentToken() == XContentParser.Token.VALUE_NULL ? null : parseArray(p, c, objectParser),
239+
field,
240+
ValueType.OBJECT_ARRAY_OR_NULL
241+
);
242+
}
243+
223244
@Override
224245
public <T> void declareNamedObject(
225246
BiConsumer<Value, T> consumer,

0 commit comments

Comments
 (0)