Skip to content

Commit 1395979

Browse files
committed
Merge branch 'main' of https://github.com/elastic/elasticsearch into MVs_warnings_for_binary_comparisons
2 parents 85b8aca + c1d69ec commit 1395979

File tree

222 files changed

+4647
-1725
lines changed

Some content is hidden

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

222 files changed

+4647
-1725
lines changed

docs/changelog/136828.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 136828
2+
summary: Can match phase coordinator duration APM metric
3+
area: Search
4+
type: enhancement
5+
issues: []

docs/changelog/136996.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 136996
2+
summary: Add periodic PKC JWK set reloading capability to JWT realm
3+
area: Security
4+
type: enhancement
5+
issues: []

docs/changelog/137222.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 137222
2+
summary: "[Sentinel One] Add `manage`, `create_index`, `read`, `index`, `write`, `delete`, permission for third-party agent indices in the `Kibana system` to support the threat event data stream."
3+
area: Authorization
4+
type: enhancement
5+
issues:
6+
- 240901

docs/changelog/137375.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 137375
2+
summary: Allow opting out of force-merging on a cloned index in ILM's searchable snapshot
3+
action
4+
area: ILM+SLM
5+
type: enhancement
6+
issues: []

docs/changelog/137394.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 137394
2+
summary: Fix dropped ignore above fields
3+
area: Mapping
4+
type: bug
5+
issues:
6+
- 137360

docs/reference/elasticsearch/configuration-reference/security-settings.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1523,7 +1523,19 @@ $$$jwt-claim-pattern-principal$$$
15231523
: ([Static](docs-content://deploy-manage/stack-settings.md#static-cluster-setting)) Specifies the time-to-live for the period of time to cache JWT entries. JWTs can only be cached if client authentication is successful (or disabled). Uses the standard {{es}} [time units](/reference/elasticsearch/rest-apis/api-conventions.md#time-units). If clients use a different JWT for every request, set to `0` to disable the JWT cache. Defaults to `20m`.
15241524

15251525
`pkc_jwkset_path` ![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elastic Cloud Hosted")
1526-
: ([Static](docs-content://deploy-manage/stack-settings.md#static-cluster-setting)) The file name or URL to a JSON Web Key Set (JWKS) with the public key material that the JWT Realm uses for verifying token signatures. A value is considered a file name if it does not begin with `https`. The file name is resolved relative to the {{es}} configuration directory. If a URL is provided, then it must begin with `https://` (`http://` is not supported). {{es}} automatically caches the JWK set and will attempt to refresh the JWK set upon signature verification failure, as this might indicate that the JWT Provider has rotated the signing keys.
1526+
: ([Static](docs-content://deploy-manage/stack-settings.md#static-cluster-setting)) The file name or URL to a JSON Web Key Set (JWKS) with the public key material that the JWT Realm uses for verifying token signatures. A value is considered a file name if it does not begin with `https`. The file name is resolved relative to the {{es}} configuration directory. If a URL is provided, then it must begin with `https://` (`http://` is not supported). {{es}} automatically caches the JWK set and will attempt to refresh the JWK set upon signature verification failure, as this might indicate that the JWT Provider has rotated the signing keys. Background JWKS reloading can also be configured with the setting `pkc_jwkset_reload.enabled`. This ensures that rotated keys are automatically discovered and used to verify JWT signatures.
1527+
1528+
`pkc_jwkset_reload.enabled` {applies_to}`stack: ga 9.3` ![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elastic Cloud Hosted")
1529+
: ([Static](docs-content://deploy-manage/stack-settings.md#static-cluster-setting)) Indicates whether JWKS background reloading is enabled. Defaults to `false`.
1530+
1531+
`pkc_jwkset_reload.file_interval` {applies_to}`stack: ga 9.3` ![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elastic Cloud Hosted")
1532+
: ([Static](docs-content://deploy-manage/stack-settings.md#static-cluster-setting)) Specifies the reload interval for file-based JWKS. Defaults to `5m`.
1533+
1534+
`pkc_jwkset_reload.url_interval_min` {applies_to}`stack: ga 9.3` ![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elastic Cloud Hosted")
1535+
: ([Static](docs-content://deploy-manage/stack-settings.md#static-cluster-setting)) Specifies the minimum reload interval for URL-based JWKS. The `Expires` and `Cache-Control` HTTP response headers inform the reload interval. This configuration setting is the lower bound of what is considered, and it is also the default interval in the absence of useful response headers. Defaults to `1h`.
1536+
1537+
`pkc_jwkset_reload.url_interval_max` {applies_to}`stack: ga 9.3` ![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elastic Cloud Hosted")
1538+
: ([Static](docs-content://deploy-manage/stack-settings.md#static-cluster-setting)) Specifies the maximum reload interval for URL-based JWKS. This configuration setting is the upper bound of what is considered from header responses (`5d`).
15271539

15281540
`hmac_jwkset` ![logo cloud](https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg "Supported on Elastic Cloud Hosted")
15291541
: ([Secure](docs-content://deploy-manage/security/secure-settings.md)) Contents of a JSON Web Key Set (JWKS), including the secret key that the JWT realm uses to verify token signatures. This format supports multiple keys and optional attributes, and is preferred over the `hmac_key` setting. Cannot be used in conjunction with the `hmac_key` setting. Refer to [Configure {{es}} to use a JWT realm](docs-content://deploy-manage/users-roles/cluster-or-deployment-auth/jwt.md).

docs/reference/elasticsearch/index-lifecycle-actions/ilm-searchable-snapshot.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,11 @@ By default, this snapshot is deleted by the [delete action](/reference/elasticse
4646

4747
This force merging occurs in the phase that the index is in **prior** to the `searchable_snapshot` action. For example, if using a `searchable_snapshot` action in the `hot` phase, the force merge will be performed on the hot nodes. If using a `searchable_snapshot` action in the `cold` phase, the force merge will be performed on whatever tier the index is **prior** to the `cold` phase (either `hot` or `warm`).
4848

49+
`force_merge_on_clone` {applies_to}`stack: ga 9.2.1`
50+
: (Optional, Boolean) By default, if `force_merge_index` is `true`, the index will first be cloned with 0 replicas and the force-merge will be performed on the clone before the searchable snapshot is created. This avoids performing the force-merge redundantly on replica shards, as the snapshot operation only uses primary shards. Setting this option to `false` will skip the clone step and perform the force-merge directly on the managed index. Defaults to `true`.
51+
4952
`total_shards_per_node`
50-
: The maximum number of shards (replicas and primaries) that will be allocated to a single node for the searchable snapshot index. Defaults to unbounded.
53+
: (Optional, Integer) The maximum number of shards (replicas and primaries) that will be allocated to a single node for the searchable snapshot index. Defaults to unbounded.
5154

5255

5356
## Examples [ilm-searchable-snapshot-ex]

docs/reference/query-languages/esql/limitations.md

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,19 +46,28 @@ By default, an {{esql}} query returns up to 1,000 rows. You can increase the num
4646
* `geo_shape`
4747
* `point`
4848
* `shape`
49+
* TSDB metrics {preview}`9.2`
50+
* `counter`
51+
* `gauge`
52+
* `aggregate_metric_double`
4953

5054

5155

5256
### Unsupported types [_unsupported_types]
5357

5458
{{esql}} does not yet support the following field types:
5559

60+
::::{tab-set}
61+
:::{tab-item} 9.0-9.1
5662
* TSDB metrics
57-
58-
* `counter`
59-
* `position`
60-
* `aggregate_metric_double`
61-
63+
* `counter`
64+
* `gauge`
65+
* `aggregate_metric_double`
66+
:::
67+
:::{tab-item} 9.2+
68+
This limitation no longer exists and TSDB metrics are now supported (preview).
69+
:::
70+
::::
6271
* Date/time
6372

6473
* `date_range`
@@ -188,11 +197,16 @@ As discussed in more detail in [Using {{esql}} to query multiple indices](/refer
188197
* All underlying indexes and shards must be active. Using admin commands or UI, it is possible to pause an index or shard, for example by disabling a frozen tier instance, but then any {{esql}} query that includes that index or shard will fail, even if the query uses [`WHERE`](/reference/query-languages/esql/commands/where.md) to filter out the results from the paused index. If you see an error of type `search_phase_execution_exception`, with the message `Search rejected due to missing shards`, you likely have an index or shard in `UNASSIGNED` state.
189198
* The same field must have the same type across all indexes. If the same field is mapped to different types it is still possible to query the indexes, but the field must be [explicitly converted to a single type](/reference/query-languages/esql/esql-multi-index.md#esql-multi-index-union-types).
190199

200+
## Time series data streams [esql-tsdb]
191201

192-
## Time series data streams are not supported [esql-tsdb]
193-
202+
::::{tab-set}
203+
:::{tab-item} 9.0-9.1
194204
{{esql}} does not support querying time series data streams (TSDS).
195-
205+
:::
206+
:::{tab-item} 9.2+
207+
This limitation no longer exists and time series data streams (TSDS) are now supported (preview).
208+
:::
209+
::::
196210

197211
## Date math limitations [esql-limitations-date-math]
198212

modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/extras/MatchOnlyTextFieldMapper.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,8 @@ private IOFunction<LeafReaderContext, CheckedIntFunction<List<Object>, IOExcepti
295295
String parentFieldName = searchExecutionContext.parentPath(name());
296296
var parent = searchExecutionContext.lookup().fieldType(parentFieldName);
297297

298-
if (parent instanceof KeywordFieldMapper.KeywordFieldType keywordParent && keywordParent.ignoreAbove().isSet()) {
298+
if (parent instanceof KeywordFieldMapper.KeywordFieldType keywordParent
299+
&& keywordParent.ignoreAbove().valuesPotentiallyIgnored()) {
299300
final String parentFallbackFieldName = keywordParent.syntheticSourceFallbackFieldName();
300301
if (parent.isStored()) {
301302
return storedFieldFetcher(parentFieldName, parentFallbackFieldName);
@@ -323,7 +324,7 @@ private IOFunction<LeafReaderContext, CheckedIntFunction<List<Object>, IOExcepti
323324
final SearchExecutionContext searchExecutionContext,
324325
final KeywordFieldMapper.KeywordFieldType keywordDelegate
325326
) {
326-
if (keywordDelegate.ignoreAbove().isSet()) {
327+
if (keywordDelegate.ignoreAbove().valuesPotentiallyIgnored()) {
327328
// because we don't know whether the delegate field will be ignored during parsing, we must also check the current field
328329
String fieldName = name();
329330
String fallbackName = syntheticSourceFallbackFieldName();

muted-tests.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -501,12 +501,15 @@ tests:
501501
- class: org.elasticsearch.readiness.ReadinessClusterIT
502502
method: testReadinessDuringRestartsNormalOrder
503503
issue: https://github.com/elastic/elasticsearch/issues/136955
504-
- class: org.elasticsearch.xpack.esql.expression.function.aggregate.DimensionValuesByteRefGroupingAggregatorFunctionTests
505-
method: testSimple
506-
issue: https://github.com/elastic/elasticsearch/issues/137378
507504
- class: org.elasticsearch.xpack.ilm.TimeSeriesDataStreamsIT
508505
method: testSearchableSnapshotAction
509506
issue: https://github.com/elastic/elasticsearch/issues/137167
507+
- class: org.elasticsearch.xpack.security.CoreWithSecurityClientYamlTestSuiteIT
508+
method: test {yaml=indices.validate_query/20_query_string/validate_query with query_string parameters}
509+
issue: https://github.com/elastic/elasticsearch/issues/137391
510+
- class: org.elasticsearch.xpack.downsample.ILMDownsampleDisruptionIT
511+
method: testILMDownsampleRollingRestart
512+
issue: https://github.com/elastic/elasticsearch/issues/136585
510513

511514
# Examples:
512515
#

0 commit comments

Comments
 (0)