Skip to content

Commit

Permalink
Merge branch 'main' into remove_sort_from_dataframe_reindex_step
Browse files Browse the repository at this point in the history
  • Loading branch information
edsavage authored Nov 27, 2024
2 parents f93e0a9 + c2e4afc commit d475cdb
Show file tree
Hide file tree
Showing 188 changed files with 3,395 additions and 1,589 deletions.
4 changes: 4 additions & 0 deletions .buildkite/hooks/pre-command
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ export GRADLE_BUILD_CACHE_PASSWORD
BUILDKITE_API_TOKEN=$(vault read -field=token secret/ci/elastic-elasticsearch/buildkite-api-token)
export BUILDKITE_API_TOKEN

export GH_TOKEN="$VAULT_GITHUB_TOKEN"

if [[ "${USE_LUCENE_SNAPSHOT_CREDS:-}" == "true" ]]; then
data=$(.buildkite/scripts/get-legacy-secret.sh aws-elastic/creds/lucene-snapshots)

Expand Down Expand Up @@ -117,3 +119,5 @@ if [[ -f /etc/os-release ]] && grep -q '"Amazon Linux 2"' /etc/os-release; then
echo "$(hostname -i | cut -d' ' -f 2) $(hostname -f)." | sudo tee /etc/dnsmasq.hosts
sudo systemctl restart dnsmasq.service
fi

.buildkite/scripts/get-latest-test-mutes.sh
3 changes: 3 additions & 0 deletions .buildkite/hooks/pre-command.bat
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,12 @@ set BUILD_NUMBER=%BUILDKITE_BUILD_NUMBER%
set COMPOSE_HTTP_TIMEOUT=120
set JOB_BRANCH=%BUILDKITE_BRANCH%

set GH_TOKEN=%VAULT_GITHUB_TOKEN%

set GRADLE_BUILD_CACHE_USERNAME=vault read -field=username secret/ci/elastic-elasticsearch/migrated/gradle-build-cache
set GRADLE_BUILD_CACHE_PASSWORD=vault read -field=password secret/ci/elastic-elasticsearch/migrated/gradle-build-cache

bash.exe -c "nohup bash .buildkite/scripts/setup-monitoring.sh </dev/null >/dev/null 2>&1 &"
bash.exe -c "bash .buildkite/scripts/get-latest-test-mutes.sh"

exit /b 0
6 changes: 3 additions & 3 deletions .buildkite/pipelines/periodic-packaging.yml
Original file line number Diff line number Diff line change
Expand Up @@ -273,8 +273,8 @@ steps:
env:
BWC_VERSION: 8.14.3

- label: "{{matrix.image}} / 8.15.4 / packaging-tests-upgrade"
command: ./.ci/scripts/packaging-test.sh -Dbwc.checkout.align=true destructiveDistroUpgradeTest.v8.15.4
- label: "{{matrix.image}} / 8.15.6 / packaging-tests-upgrade"
command: ./.ci/scripts/packaging-test.sh -Dbwc.checkout.align=true destructiveDistroUpgradeTest.v8.15.6
timeout_in_minutes: 300
matrix:
setup:
Expand All @@ -287,7 +287,7 @@ steps:
machineType: custom-16-32768
buildDirectory: /dev/shm/bk
env:
BWC_VERSION: 8.15.4
BWC_VERSION: 8.15.6

- label: "{{matrix.image}} / 8.16.2 / packaging-tests-upgrade"
command: ./.ci/scripts/packaging-test.sh -Dbwc.checkout.align=true destructiveDistroUpgradeTest.v8.16.2
Expand Down
6 changes: 3 additions & 3 deletions .buildkite/pipelines/periodic.yml
Original file line number Diff line number Diff line change
Expand Up @@ -287,8 +287,8 @@ steps:
- signal_reason: agent_stop
limit: 3

- label: 8.15.4 / bwc
command: .ci/scripts/run-gradle.sh -Dbwc.checkout.align=true v8.15.4#bwcTest
- label: 8.15.6 / bwc
command: .ci/scripts/run-gradle.sh -Dbwc.checkout.align=true v8.15.6#bwcTest
timeout_in_minutes: 300
agents:
provider: gcp
Expand All @@ -297,7 +297,7 @@ steps:
buildDirectory: /dev/shm/bk
preemptible: true
env:
BWC_VERSION: 8.15.4
BWC_VERSION: 8.15.6
retry:
automatic:
- exit_status: "-1"
Expand Down
20 changes: 20 additions & 0 deletions .buildkite/scripts/get-latest-test-mutes.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!/bin/bash

if [[ ! "${BUILDKITE_PULL_REQUEST:-}" || "${BUILDKITE_AGENT_META_DATA_PROVIDER:-}" == "k8s" ]]; then
exit 0
fi

testMuteBranch="${BUILDKITE_PULL_REQUEST_BASE_BRANCH:-main}"
testMuteFile="$(mktemp)"

# If this PR contains changes to muted-tests.yml, we disable this functionality
# Otherwise, we wouldn't be able to test unmutes
if [[ ! $(gh pr diff "$BUILDKITE_PULL_REQUEST" --name-only | grep 'muted-tests.yml') ]]; then
gh api -H 'Accept: application/vnd.github.v3.raw' "repos/elastic/elasticsearch/contents/muted-tests.yml?ref=$testMuteBranch" > "$testMuteFile"

if [[ -s "$testMuteFile" ]]; then
mkdir -p ~/.gradle
# This is using gradle.properties instead of an env var so that it's easily compatible with the Windows pre-command hook
echo "org.gradle.project.org.elasticsearch.additional.muted.tests=$testMuteFile" >> ~/.gradle/gradle.properties
fi
fi
2 changes: 1 addition & 1 deletion .ci/bwcVersions
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ BWC_VERSION:
- "8.12.2"
- "8.13.4"
- "8.14.3"
- "8.15.4"
- "8.15.6"
- "8.16.2"
- "8.17.0"
- "8.18.0"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ public enum DockerBase {
// Chainguard based wolfi image with latest jdk
// This is usually updated via renovatebot
// spotless:off
WOLFI("docker.elastic.co/wolfi/chainguard-base:latest@sha256:55b297da5151d2a2997e8ab9729fe1304e4869389d7090ab7031cc29530f69f8",
WOLFI("docker.elastic.co/wolfi/chainguard-base:latest@sha256:32f06b169bb4b0f257fbb10e8c8379f06d3ee1355c89b3327cb623781a29590e",
"-wolfi",
"apk"
),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,12 @@
import java.io.UncheckedIOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;

public abstract class MutedTestsBuildService implements BuildService<MutedTestsBuildService.Params> {
private final List<String> excludePatterns = new ArrayList<>();
private final Set<String> excludePatterns = new LinkedHashSet<>();
private final ObjectMapper objectMapper = new ObjectMapper(new YAMLFactory());

public MutedTestsBuildService() {
Expand All @@ -43,23 +45,23 @@ public MutedTestsBuildService() {
}
}

public List<String> getExcludePatterns() {
public Set<String> getExcludePatterns() {
return excludePatterns;
}

private List<String> buildExcludePatterns(File file) {
private Set<String> buildExcludePatterns(File file) {
List<MutedTest> mutedTests;

try (InputStream is = new BufferedInputStream(new FileInputStream(file))) {
mutedTests = objectMapper.readValue(is, MutedTests.class).getTests();
if (mutedTests == null) {
return Collections.emptyList();
return Collections.emptySet();
}
} catch (IOException e) {
throw new UncheckedIOException(e);
}

List<String> excludes = new ArrayList<>();
Set<String> excludes = new LinkedHashSet<>();
if (mutedTests.isEmpty() == false) {
for (MutedTestsBuildService.MutedTest mutedTest : mutedTests) {
if (mutedTest.getClassName() != null && mutedTest.getMethods().isEmpty() == false) {
Expand Down
5 changes: 0 additions & 5 deletions docs/changelog/114193.yaml

This file was deleted.

6 changes: 0 additions & 6 deletions docs/changelog/114227.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/114268.yaml

This file was deleted.

5 changes: 5 additions & 0 deletions docs/changelog/114317.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
pr: 114317
summary: "ESQL: CATEGORIZE as a `BlockHash`"
area: ES|QL
type: enhancement
issues: []
5 changes: 0 additions & 5 deletions docs/changelog/114521.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/114548.yaml

This file was deleted.

6 changes: 0 additions & 6 deletions docs/changelog/116277.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116292.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116357.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116382.yaml

This file was deleted.

6 changes: 0 additions & 6 deletions docs/changelog/116408.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116478.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116650.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116676.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116915.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116918.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116942.yaml

This file was deleted.

5 changes: 0 additions & 5 deletions docs/changelog/116995.yaml

This file was deleted.

6 changes: 0 additions & 6 deletions docs/changelog/117182.yaml

This file was deleted.

5 changes: 5 additions & 0 deletions docs/changelog/117235.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
pr: 117235
summary: "Deprecate `ChunkingOptions` parameter"
area: ES|QL
type: enhancement
issues: []
5 changes: 5 additions & 0 deletions docs/changelog/117265.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
pr: 117265
summary: Async search responses have CCS metadata while searches are running
area: ES|QL
type: enhancement
issues: []
6 changes: 6 additions & 0 deletions docs/changelog/117503.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
pr: 117503
summary: Fix COUNT filter pushdown
area: ES|QL
type: bug
issues:
- 115522

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions docs/reference/esql/functions/types/categorize.asciidoc

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

61 changes: 31 additions & 30 deletions docs/reference/inference/service-elser.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,39 @@ If `adaptive_allocations` is enabled, do not set this value, because it's automa
Sets the number of threads used by each model allocation during inference. This generally increases the speed per inference request. The inference process is a compute-bound process; `threads_per_allocations` must not exceed the number of available allocated processors per node.
Must be a power of 2. Max allowed value is 32.

[discrete]
[[inference-example-elser-adaptive-allocation]]
==== ELSER service example with adaptive allocations

When adaptive allocations are enabled, the number of allocations of the model is set automatically based on the current load.

NOTE: For more information on how to optimize your ELSER endpoints, refer to {ml-docs}/ml-nlp-elser.html#elser-recommendations[the ELSER recommendations] section in the model documentation.
To learn more about model autoscaling, refer to the {ml-docs}/ml-nlp-auto-scale.html[trained model autoscaling] page.

The following example shows how to create an {infer} endpoint called `my-elser-model` to perform a `sparse_embedding` task type and configure adaptive allocations.

The request below will automatically download the ELSER model if it isn't already downloaded and then deploy the model.

[source,console]
------------------------------------------------------------
PUT _inference/sparse_embedding/my-elser-model
{
"service": "elser",
"service_settings": {
"adaptive_allocations": {
"enabled": true,
"min_number_of_allocations": 3,
"max_number_of_allocations": 10
},
"num_threads": 1
}
}
------------------------------------------------------------
// TEST[skip:TBD]

[discrete]
[[inference-example-elser]]
==== ELSER service example
==== ELSER service example without adaptive allocations

The following example shows how to create an {infer} endpoint called `my-elser-model` to perform a `sparse_embedding` task type.
Refer to the {ml-docs}/ml-nlp-elser.html[ELSER model documentation] for more info.
Expand Down Expand Up @@ -151,32 +180,4 @@ You might see a 502 bad gateway error in the response when using the {kib} Conso
This error usually just reflects a timeout, while the model downloads in the background.
You can check the download progress in the {ml-app} UI.
If using the Python client, you can set the `timeout` parameter to a higher value.
====

[discrete]
[[inference-example-elser-adaptive-allocation]]
==== Setting adaptive allocations for the ELSER service

NOTE: For more information on how to optimize your ELSER endpoints, refer to {ml-docs}/ml-nlp-elser.html#elser-recommendations[the ELSER recommendations] section in the model documentation.
To learn more about model autoscaling, refer to the {ml-docs}/ml-nlp-auto-scale.html[trained model autoscaling] page.

The following example shows how to create an {infer} endpoint called `my-elser-model` to perform a `sparse_embedding` task type and configure adaptive allocations.

The request below will automatically download the ELSER model if it isn't already downloaded and then deploy the model.

[source,console]
------------------------------------------------------------
PUT _inference/sparse_embedding/my-elser-model
{
"service": "elser",
"service_settings": {
"adaptive_allocations": {
"enabled": true,
"min_number_of_allocations": 3,
"max_number_of_allocations": 10
},
"num_threads": 1
}
}
------------------------------------------------------------
// TEST[skip:TBD]
====
Loading

0 comments on commit d475cdb

Please sign in to comment.