Skip to content

Commit 8d1485b

Browse files
authored
Merge branch 'main' into bwc-fix-maintenance
2 parents f31b02a + 5383f0f commit 8d1485b

File tree

6 files changed

+39
-10
lines changed

6 files changed

+39
-10
lines changed

docs/changelog/126840.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 126840
2+
summary: Fix `PolicyStepsRegistry` cache concurrency issue
3+
area: ILM+SLM
4+
type: bug
5+
issues:
6+
- 118406

docs/changelog/126850.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 126850
2+
summary: "[otel-data] Bump plugin version to release _metric_names_hash changes"
3+
area: Data streams
4+
type: bug
5+
issues: []

docs/reference/query-languages/esql/esql-lookup-join.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
navigation_title: "Correlate data with LOOKUP JOIN"
33
mapped_pages:
4-
- https://www.elastic.co/guide/en/elasticsearch/reference/current/esql-enrich-data.html
4+
- https://www.elastic.co/guide/en/elasticsearch/reference/8.18/_lookup_join.html
55
---
66

77
# LOOKUP JOIN [esql-lookup-join-reference]
@@ -35,7 +35,7 @@ The `LOOKUP JOIN` command adds new columns to a table, with data from {{es}} ind
3535
:::
3636

3737
`<lookup_index>`
38-
: The name of the lookup index. This must be a specific index name - wildcards, aliases, and remote cluster references are not supported.
38+
: The name of the lookup index. This must be a specific index name - wildcards, aliases, and remote cluster references are not supported. Indices used for lookups must be configured with the [`lookup` index mode](/reference/elasticsearch/index-settings/index-modules.md#index-mode-setting).
3939

4040
`<field_name>`
4141
: The field to join on. This field must exist in both your current query results and in the lookup index. If the field contains multi-valued entries, those entries will not match anything (the added fields will contain `null` for those rows).
@@ -107,6 +107,7 @@ FROM employees
107107

108108
To use `LOOKUP JOIN`, the following requirements must be met:
109109

110+
* Indices used for lookups must be configured with the [`lookup` index mode](/reference/elasticsearch/index-settings/index-modules.md#index-mode-setting)
110111
* **Compatible data types**: The join key and join field in the lookup index must have compatible data types. This means:
111112
* The data types must either be identical or be internally represented as the same type in {{esql}}
112113
* Numeric types follow these compatibility rules:
@@ -122,7 +123,7 @@ For a complete list of supported data types and their internal representations,
122123

123124
The following are the current limitations with `LOOKUP JOIN`
124125

125-
* Indices in [lookup](/reference/elasticsearch/index-settings/index-modules.md#index-mode-setting) mode are always single-sharded.
126+
* Indices in [`lookup` mode](/reference/elasticsearch/index-settings/index-modules.md#index-mode-setting) are always single-sharded.
126127
* Cross cluster search is unsupported initially. Both source and lookup indices must be local.
127128
* Currently, only matching on equality is supported.
128129
* `LOOKUP JOIN` can only use a single match field and a single index. Wildcards, aliases, datemath, and datastreams are not supported.

muted-tests.yml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,6 @@ tests:
135135
- class: org.elasticsearch.xpack.test.rest.XPackRestIT
136136
method: test {p0=transform/transforms_unattended/Test unattended put and start}
137137
issue: https://github.com/elastic/elasticsearch/issues/120019
138-
- class: org.elasticsearch.xpack.ilm.actions.SearchableSnapshotActionIT
139-
method: testUpdatePolicyToAddPhasesYieldsInvalidActionsToBeSkipped
140-
issue: https://github.com/elastic/elasticsearch/issues/118406
141138
- class: org.elasticsearch.xpack.security.QueryableReservedRolesIT
142139
method: testConfiguredReservedRolesAfterClosingAndOpeningIndex
143140
issue: https://github.com/elastic/elasticsearch/issues/120127
@@ -408,6 +405,24 @@ tests:
408405
- class: org.elasticsearch.xpack.test.rest.XPackRestIT
409406
method: test {p0=ml/inference_crud/Test delete given unused trained model}
410407
issue: https://github.com/elastic/elasticsearch/issues/126881
408+
- class: org.elasticsearch.repositories.gcs.GoogleCloudStorageBlobStoreRepositoryTests
409+
method: testRequestStats
410+
issue: https://github.com/elastic/elasticsearch/issues/126902
411+
- class: org.elasticsearch.repositories.gcs.GoogleCloudStorageBlobStoreRepositoryTests
412+
method: testWriteReadLarge
413+
issue: https://github.com/elastic/elasticsearch/issues/126903
414+
- class: org.elasticsearch.repositories.gcs.GoogleCloudStorageBlobStoreRepositoryTests
415+
method: testWriteFileMultipleOfChunkSize
416+
issue: https://github.com/elastic/elasticsearch/issues/126908
417+
- class: org.elasticsearch.repositories.gcs.GoogleCloudStorageBlobStoreRepositoryTests
418+
method: testSnapshotWithLargeSegmentFiles
419+
issue: https://github.com/elastic/elasticsearch/issues/126909
420+
- class: org.elasticsearch.index.engine.CompletionStatsCacheTests
421+
method: testCompletionStatsCache
422+
issue: https://github.com/elastic/elasticsearch/issues/126910
423+
- class: org.elasticsearch.xpack.ml.integration.ClassificationHousePricingIT
424+
method: testFeatureImportanceValues
425+
issue: https://github.com/elastic/elasticsearch/issues/124341
411426

412427
# Examples:
413428
#

x-pack/plugin/ilm/src/main/java/org/elasticsearch/xpack/ilm/PolicyStepsRegistry.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,6 @@ Map<String, Map<Step.StepKey, Step>> getStepMap() {
105105
public void update(IndexLifecycleMetadata meta) {
106106
assert meta != null : "IndexLifecycleMetadata cannot be null when updating the policy steps registry";
107107

108-
// since the policies (may have) changed, the whole steps cache needs to be thrown out
109-
cachedSteps.clear();
110-
111108
DiffableUtils.MapDiff<String, LifecyclePolicyMetadata, Map<String, LifecyclePolicyMetadata>> mapDiff = DiffableUtils.diff(
112109
lifecyclePolicyMap,
113110
meta.getPolicyMetadatas(),
@@ -163,6 +160,11 @@ public LifecyclePolicyMetadata read(StreamInput in, String key) {
163160
}
164161
}
165162
}
163+
164+
// Since the policies (may have) changed, the whole steps cache needs to be thrown out.
165+
// We do this after we update `lifecyclePolicyMap` to ensure `cachedSteps` does not contain outdated data.
166+
// This means we may clear up-to-date data, but that's a lot better than the cache containing outdated entries indefinitely.
167+
cachedSteps.clear();
166168
}
167169

168170
/**

x-pack/plugin/otel-data/src/main/resources/resources.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# "version" holds the version of the templates and ingest pipelines installed
22
# by xpack-plugin otel-data. This must be increased whenever an existing template is
33
# changed, in order for it to be updated on Elasticsearch upgrade.
4-
version: 8
4+
version: 9
55

66
component-templates:
77
- otel@mappings

0 commit comments

Comments
 (0)