Skip to content

Commit 1019b20

Browse files
committed
Merge remote-tracking branch 'origin/main' into tracking-postings-memory-bytes-remove-ff
2 parents 28d8f45 + b3a06fb commit 1019b20

File tree

181 files changed

+4401
-1985
lines changed

Some content is hidden

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

181 files changed

+4401
-1985
lines changed

benchmarks/src/main/java/org/elasticsearch/benchmark/exponentialhistogram/ExponentialHistogramMergeBench.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ private ExponentialHistogram asCompressedHistogram(ExponentialHistogram histogra
130130
CompressedExponentialHistogram.writeHistogramBytes(histoBytes, histogram.scale(), negativeBuckets, positiveBuckets);
131131
CompressedExponentialHistogram result = new CompressedExponentialHistogram();
132132
BytesRef data = histoBytes.bytes().toBytesRef();
133-
result.reset(histogram.zeroBucket().zeroThreshold(), totalCount, data);
133+
result.reset(histogram.zeroBucket().zeroThreshold(), totalCount, histogram.sum(), data);
134134
return result;
135135
} catch (IOException e) {
136136
throw new RuntimeException(e);

distribution/docker/src/docker/dockerfiles/cloud_ess_fips/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
# Extract Elasticsearch artifact
2525
################################################################################
2626
27-
FROM docker.elastic.co/wolfi/chainguard-base-fips:latest@sha256:173cd032e2a8b194c04e08f605b40c743cc52f8eb4ecfc9c5e3280ae97c119b4 AS builder
27+
FROM docker.elastic.co/wolfi/chainguard-base-fips:latest@sha256:d9382de1615bfd6fe66348a9c80258c63fa311b1f583a607addde8ec5bf0f343 AS builder
2828
2929
# Install required packages to extract the Elasticsearch distribution
3030
RUN <%= retry.loop(package_manager, "export DEBIAN_FRONTEND=noninteractive && ${package_manager} update && ${package_manager} update && ${package_manager} add --no-cache curl") %>
@@ -103,7 +103,7 @@ WORKDIR /usr/share/elasticsearch/config
103103
# Add entrypoint
104104
################################################################################
105105

106-
FROM docker.elastic.co/wolfi/chainguard-base-fips:latest@sha256:173cd032e2a8b194c04e08f605b40c743cc52f8eb4ecfc9c5e3280ae97c119b4
106+
FROM docker.elastic.co/wolfi/chainguard-base-fips:latest@sha256:d9382de1615bfd6fe66348a9c80258c63fa311b1f583a607addde8ec5bf0f343
107107

108108
RUN <%= retry.loop(package_manager,
109109
"export DEBIAN_FRONTEND=noninteractive && \n" +

distribution/docker/src/docker/dockerfiles/wolfi/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
# Extract Elasticsearch artifact
2525
################################################################################
2626
27-
FROM docker.elastic.co/wolfi/chainguard-base:latest@sha256:45d6016686787642209440ee29f410a125d2392e6752701cb9960f0ac0c80c1d AS builder
27+
FROM docker.elastic.co/wolfi/chainguard-base:latest@sha256:4dbe94045c967ec89afcee3727cfb746820bd3f699bbbb621e529bde1ce122b1 AS builder
2828
2929
# Install required packages to extract the Elasticsearch distribution
3030
RUN <%= retry.loop(package_manager, "export DEBIAN_FRONTEND=noninteractive && ${package_manager} update && ${package_manager} update && ${package_manager} add --no-cache curl") %>
@@ -79,7 +79,7 @@ RUN sed -i -e 's/ES_DISTRIBUTION_TYPE=tar/ES_DISTRIBUTION_TYPE=docker/' bin/elas
7979
# Add entrypoint
8080
################################################################################
8181

82-
FROM docker.elastic.co/wolfi/chainguard-base:latest@sha256:45d6016686787642209440ee29f410a125d2392e6752701cb9960f0ac0c80c1d
82+
FROM docker.elastic.co/wolfi/chainguard-base:latest@sha256:4dbe94045c967ec89afcee3727cfb746820bd3f699bbbb621e529bde1ce122b1
8383

8484
RUN <%= retry.loop(package_manager,
8585
"export DEBIAN_FRONTEND=noninteractive && \n" +

docs/changelog/130824.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 130824
2+
summary: Add read permissions for osquery manager result indices
3+
area: Security
4+
type: enhancement
5+
issues: []

docs/changelog/132536.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 132536
2+
summary: Avoid stack overflow in `IndicesClusterStateService` `applyClusterState`
3+
area: Cluster Coordination
4+
type: bug
5+
issues: []

docs/changelog/133397.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 133397
2+
summary: Push down loading of singleton dense double based field types to the …
3+
area: "Codec"
4+
type: enhancement
5+
issues: []

docs/changelog/133601.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
pr: 133601
2+
summary: Fix bug in topn
3+
area: ES|QL
4+
type: bug
5+
issues:
6+
- 133600
7+
- 133574
8+
- 133607

docs/reference/elasticsearch/mapping-reference/dense-vector.md

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -115,23 +115,23 @@ To retrieve vector values explicitly, you can use:
115115

116116
* The `fields` option to request specific vector fields directly:
117117

118-
```console
119-
POST my-index-2/_search
120-
{
121-
"fields": ["my_vector"]
122-
}
123-
```
118+
```console
119+
POST my-index-2/_search
120+
{
121+
"fields": ["my_vector"]
122+
}
123+
```
124124

125125
- The `_source.exclude_vectors` flag to re-enable vector inclusion in `_source` responses:
126126

127-
```console
128-
POST my-index-2/_search
129-
{
130-
"_source": {
131-
"exclude_vectors": false
127+
```console
128+
POST my-index-2/_search
129+
{
130+
"_source": {
131+
"exclude_vectors": false
132+
}
132133
}
133-
}
134-
```
134+
```
135135

136136
### Storage behavior and `_source`
137137

@@ -309,7 +309,7 @@ $$$dense-vector-similarity$$$
309309
`l2_norm`
310310
: Computes similarity based on the L2 distance (also known as Euclidean distance) between the vectors. The document `_score` is computed as `1 / (1 + l2_norm(query, vector)^2)`.
311311

312-
For `bit` vectors, instead of using `l2_norm`, the `hamming` distance between the vectors is used. The `_score` transformation is `(numBits - hamming(a, b)) / numBits`
312+
For `bit` vectors, instead of using `l2_norm`, the `hamming` distance between the vectors is used. The `_score` transformation is `(numBits - hamming(a, b)) / numBits`
313313

314314
`dot_product`
315315
: Computes the dot product of two unit vectors. This option provides an optimized way to perform cosine similarity. The constraints and computed score are defined by `element_type`.
@@ -341,15 +341,13 @@ $$$dense-vector-index-options$$$
341341
`type`
342342
: (Required, string) The type of kNN algorithm to use. Can be either any of:
343343
* `hnsw` - This utilizes the [HNSW algorithm](https://arxiv.org/abs/1603.09320) for scalable approximate kNN search. This supports all `element_type` values.
344-
* `int8_hnsw` - The default index type for some float vectors:
345-
344+
* `int8_hnsw` - The default index type for some float vectors:
346345
* {applies_to}`stack: ga 9.1` Default for float vectors with less than 384 dimensions.
347346
* {applies_to}`stack: ga 9.0` Default for float all vectors.
348-
349347
This utilizes the [HNSW algorithm](https://arxiv.org/abs/1603.09320) in addition to automatically scalar quantization for scalable approximate kNN search with `element_type` of `float`. This can reduce the memory footprint by 4x at the cost of some accuracy. See [Automatically quantize vectors for kNN search](#dense-vector-quantization).
350348
* `int4_hnsw` - This utilizes the [HNSW algorithm](https://arxiv.org/abs/1603.09320) in addition to automatically scalar quantization for scalable approximate kNN search with `element_type` of `float`. This can reduce the memory footprint by 8x at the cost of some accuracy. See [Automatically quantize vectors for kNN search](#dense-vector-quantization).
351349
* `bbq_hnsw` - This utilizes the [HNSW algorithm](https://arxiv.org/abs/1603.09320) in addition to automatically binary quantization for scalable approximate kNN search with `element_type` of `float`. This can reduce the memory footprint by 32x at the cost of accuracy. See [Automatically quantize vectors for kNN search](#dense-vector-quantization).
352-
350+
353351
{applies_to}`stack: ga 9.1` `bbq_hnsw` is the default index type for float vectors with greater than or equal to 384 dimensions.
354352
* `flat` - This utilizes a brute-force search algorithm for exact kNN search. This supports all `element_type` values.
355353
* `int8_flat` - This utilizes a brute-force search algorithm in addition to automatically scalar quantization. Only supports `element_type` of `float`.
@@ -365,7 +363,6 @@ $$$dense-vector-index-options$$$
365363
`confidence_interval`
366364
: (Optional, float) Only applicable to `int8_hnsw`, `int4_hnsw`, `int8_flat`, and `int4_flat` index types. The confidence interval to use when quantizing the vectors. Can be any value between and including `0.90` and `1.0` or exactly `0`. When the value is `0`, this indicates that dynamic quantiles should be calculated for optimized quantization. When between `0.90` and `1.0`, this value restricts the values used when calculating the quantization thresholds. For example, a value of `0.95` will only use the middle 95% of the values when calculating the quantization thresholds (e.g. the highest and lowest 2.5% of values will be ignored). Defaults to `1/(dims + 1)` for `int8` quantized vectors and `0` for `int4` for dynamic quantile calculation.
367365

368-
369366
`rescore_vector` {applies_to}`stack: preview 9.0, ga 9.1`
370367
: (Optional, object) An optional section that configures automatic vector rescoring on knn queries for the given field. Only applicable to quantized index types.
371368
:::::{dropdown} Properties of rescore_vector
@@ -386,7 +383,7 @@ $$$dense-vector-index-options$$$
386383
`dense_vector` fields support [synthetic `_source`](/reference/elasticsearch/mapping-reference/mapping-source-field.md#synthetic-source) .
387384

388385

389-
## Indexing & Searching bit vectors [dense-vector-index-bit]
386+
## Indexing and searching bit vectors [dense-vector-index-bit]
390387

391388
When using `element_type: bit`, this will treat all vectors as bit vectors. Bit vectors utilize only a single bit per dimension and are internally encoded as bytes. This can be useful for very high-dimensional vectors or models.
392389

docs/reference/query-languages/esql/_snippets/functions/description/tbucket.md

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/reference/query-languages/esql/_snippets/functions/examples/tbucket.md

Lines changed: 43 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)