Skip to content

Commit 6a4b677

Browse files
authored
Merge branch 'main' into ps250318-public-isValidFormatId
2 parents 16f327b + 582fcaf commit 6a4b677

File tree

282 files changed

+5920
-2442
lines changed

Some content is hidden

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

282 files changed

+5920
-2442
lines changed

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/toolchain/ArchivedOracleJdkToolchainResolver.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
*/
3030
public abstract class ArchivedOracleJdkToolchainResolver extends AbstractCustomJavaToolchainResolver {
3131

32-
private static final Map<Integer, String> ARCHIVED_BASE_VERSIONS = Maps.of(20, "20.0.2", 19, "19.0.2", 18, "18.0.2.1");
32+
private static final Map<Integer, String> ARCHIVED_BASE_VERSIONS = Maps.of(21, "21.0.6", 20, "20.0.2", 19, "19.0.2", 18, "18.0.2.1");
3333

3434
@Override
3535
public Optional<JavaToolchainDownload> resolve(JavaToolchainRequest request) {

build-tools-internal/src/main/java/org/elasticsearch/gradle/internal/toolchain/OracleOpenJdkToolchainResolver.java

Lines changed: 13 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,9 @@ public String url(String os, String arch, String extension) {
5858
}
5959
}
6060

61-
record EarlyAccessJdkBuild(JavaLanguageVersion languageVersion) implements JdkBuild {
61+
record EarlyAccessJdkBuild(JavaLanguageVersion languageVersion, String buildNumber) implements JdkBuild {
6262
@Override
6363
public String url(String os, String arch, String extension) {
64-
String buildNumber = resolveBuildNumber(languageVersion.asInt());
6564
return "https://download.java.net/java/early_access/jdk"
6665
+ languageVersion.asInt()
6766
+ "/"
@@ -77,29 +76,6 @@ public String url(String os, String arch, String extension) {
7776
+ "_bin."
7877
+ extension;
7978
}
80-
81-
private static String resolveBuildNumber(int version) {
82-
String buildNumber = System.getProperty("runtime.java." + version + ".build");
83-
if (buildNumber != null) {
84-
System.out.println("buildNumber = " + buildNumber);
85-
return buildNumber;
86-
}
87-
buildNumber = System.getProperty("runtime.java.build");
88-
if (buildNumber != null) {
89-
System.out.println("buildNumber2 = " + buildNumber);
90-
return buildNumber;
91-
}
92-
93-
switch (version) {
94-
case 24:
95-
// latest explicitly found build number for 24
96-
return "29";
97-
case 25:
98-
return "3";
99-
default:
100-
throw new IllegalArgumentException("Unsupported version " + version);
101-
}
102-
}
10379
}
10480

10581
private static final Pattern VERSION_PATTERN = Pattern.compile(
@@ -114,15 +90,20 @@ private static String resolveBuildNumber(int version) {
11490

11591
// package private so it can be replaced by tests
11692
List<JdkBuild> builds = List.of(
117-
getBundledJdkBuild(),
118-
// release candidate of JDK 24
119-
new ReleaseJdkBuild(JavaLanguageVersion.of(24), "download.java.net", "24", "36", "1f9ff9062db4449d8ca828c504ffae90"),
120-
new EarlyAccessJdkBuild(JavaLanguageVersion.of(25))
93+
getBundledJdkBuild(VersionProperties.getBundledJdkVersion(), VersionProperties.getBundledJdkMajorVersion()),
94+
getEarlyAccessBuild(JavaLanguageVersion.of(25), "3")
12195
);
12296

123-
private JdkBuild getBundledJdkBuild() {
124-
String bundledJdkVersion = VersionProperties.getBundledJdkVersion();
125-
JavaLanguageVersion bundledJdkMajorVersion = JavaLanguageVersion.of(VersionProperties.getBundledJdkMajorVersion());
97+
static EarlyAccessJdkBuild getEarlyAccessBuild(JavaLanguageVersion languageVersion, String buildNumber) {
98+
// first try the unversioned override, then the versioned override which has higher precedence
99+
buildNumber = System.getProperty("runtime.java.build", buildNumber);
100+
buildNumber = System.getProperty("runtime.java." + languageVersion.asInt() + ".build", buildNumber);
101+
102+
return new EarlyAccessJdkBuild(languageVersion, buildNumber);
103+
}
104+
105+
static JdkBuild getBundledJdkBuild(String bundledJdkVersion, String bundledJkdMajorVersionString) {
106+
JavaLanguageVersion bundledJdkMajorVersion = JavaLanguageVersion.of(bundledJkdMajorVersionString);
126107
Matcher jdkVersionMatcher = VERSION_PATTERN.matcher(bundledJdkVersion);
127108
if (jdkVersionMatcher.matches() == false) {
128109
throw new IllegalStateException("Unable to parse bundled JDK version " + bundledJdkVersion);

build-tools-internal/src/test/groovy/org/elasticsearch/gradle/internal/toolchain/OracleOpenJdkToolchainResolverSpec.groovy

Lines changed: 27 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,17 @@ class OracleOpenJdkToolchainResolverSpec extends AbstractToolchainResolverSpec {
3030
return null
3131
}
3232
}
33-
toolChain.builds = toolChain.builds + [
33+
toolChain.builds = [
3434
new OracleOpenJdkToolchainResolver.ReleaseJdkBuild(
3535
JavaLanguageVersion.of(20),
3636
"download.oracle.com",
3737
"20",
3838
"36",
3939
"bdc68b4b9cbc4ebcb30745c85038d91d"
40-
)]
40+
),
41+
OracleOpenJdkToolchainResolver.getBundledJdkBuild("24+36@1f9ff9062db4449d8ca828c504ffae90", "24"),
42+
OracleOpenJdkToolchainResolver.getEarlyAccessBuild(JavaLanguageVersion.of(25), "3")
43+
]
4144
toolChain
4245
}
4346

@@ -52,17 +55,28 @@ class OracleOpenJdkToolchainResolverSpec extends AbstractToolchainResolverSpec {
5255
[20, anyVendor(), LINUX, X86_64, "https://download.oracle.com/java/GA/jdk20/bdc68b4b9cbc4ebcb30745c85038d91d/36/GPL/openjdk-20_linux-x64_bin.tar.gz"],
5356
[20, anyVendor(), LINUX, AARCH64, "https://download.oracle.com/java/GA/jdk20/bdc68b4b9cbc4ebcb30745c85038d91d/36/GPL/openjdk-20_linux-aarch64_bin.tar.gz"],
5457
[20, anyVendor(), WINDOWS, X86_64, "https://download.oracle.com/java/GA/jdk20/bdc68b4b9cbc4ebcb30745c85038d91d/36/GPL/openjdk-20_windows-x64_bin.zip"],
55-
// https://download.java.net/java/early_access/jdk23/23/GPL/openjdk-23-ea+23_macos-aarch64_bin.tar.gz
56-
[24, ORACLE, MAC_OS, X86_64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-x64_bin.tar.gz"],
57-
[24, ORACLE, MAC_OS, AARCH64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-aarch64_bin.tar.gz"],
58-
[24, ORACLE, LINUX, X86_64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-x64_bin.tar.gz"],
59-
[24, ORACLE, LINUX, AARCH64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-aarch64_bin.tar.gz"],
60-
[24, ORACLE, WINDOWS, X86_64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_windows-x64_bin.zip"],
61-
[24, anyVendor(), MAC_OS, X86_64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-x64_bin.tar.gz"],
62-
[24, anyVendor(), MAC_OS, AARCH64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-aarch64_bin.tar.gz"],
63-
[24, anyVendor(), LINUX, X86_64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-x64_bin.tar.gz"],
64-
[24, anyVendor(), LINUX, AARCH64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-aarch64_bin.tar.gz"],
65-
[24, anyVendor(), WINDOWS, X86_64, "https://download.java.net/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_windows-x64_bin.zip"]]
58+
// bundled jdk
59+
[24, ORACLE, MAC_OS, X86_64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-x64_bin.tar.gz"],
60+
[24, ORACLE, MAC_OS, AARCH64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-aarch64_bin.tar.gz"],
61+
[24, ORACLE, LINUX, X86_64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-x64_bin.tar.gz"],
62+
[24, ORACLE, LINUX, AARCH64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-aarch64_bin.tar.gz"],
63+
[24, ORACLE, WINDOWS, X86_64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_windows-x64_bin.zip"],
64+
[24, anyVendor(), MAC_OS, X86_64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-x64_bin.tar.gz"],
65+
[24, anyVendor(), MAC_OS, AARCH64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_macos-aarch64_bin.tar.gz"],
66+
[24, anyVendor(), LINUX, X86_64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-x64_bin.tar.gz"],
67+
[24, anyVendor(), LINUX, AARCH64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_linux-aarch64_bin.tar.gz"],
68+
[24, anyVendor(), WINDOWS, X86_64, "https://download.oracle.com/java/GA/jdk24/1f9ff9062db4449d8ca828c504ffae90/36/GPL/openjdk-24_windows-x64_bin.zip"],
69+
// EA build
70+
[25, ORACLE, MAC_OS, X86_64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_macos-x64_bin.tar.gz"],
71+
[25, ORACLE, MAC_OS, AARCH64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_macos-aarch64_bin.tar.gz"],
72+
[25, ORACLE, LINUX, X86_64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_linux-x64_bin.tar.gz"],
73+
[25, ORACLE, LINUX, AARCH64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_linux-aarch64_bin.tar.gz"],
74+
[25, ORACLE, WINDOWS, X86_64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_windows-x64_bin.zip"],
75+
[25, anyVendor(), MAC_OS, X86_64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_macos-x64_bin.tar.gz"],
76+
[25, anyVendor(), MAC_OS, AARCH64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_macos-aarch64_bin.tar.gz"],
77+
[25, anyVendor(), LINUX, X86_64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_linux-x64_bin.tar.gz"],
78+
[25, anyVendor(), LINUX, AARCH64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_linux-aarch64_bin.tar.gz"],
79+
[25, anyVendor(), WINDOWS, X86_64, "https://download.java.net/java/early_access/jdk25/3/GPL/openjdk-25-ea+3_windows-x64_bin.zip"]]
6680
}
6781

6882
@RestoreSystemProperties

build-tools-internal/version.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ elasticsearch = 9.1.0
22
lucene = 10.1.0
33

44
bundled_jdk_vendor = openjdk
5-
bundled_jdk = 23+37@3c5b90190c68498b986a97f276efd28a
5+
bundled_jdk = 24+36@1f9ff9062db4449d8ca828c504ffae90
66
# optional dependencies
77
spatial4j = 0.7
88
jts = 1.15.0

build-tools/src/main/java/org/elasticsearch/gradle/testclusters/RunTask.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public abstract class RunTask extends DefaultTestClustersTask {
4242

4343
private Boolean debug = false;
4444
private Boolean cliDebug = false;
45-
private Boolean entitlementsEnabled = false;
45+
4646
private Boolean apmServerEnabled = false;
4747

4848
private Boolean preserveData = false;
@@ -74,9 +74,7 @@ public void setCliDebug(boolean enabled) {
7474
option = "entitlements",
7575
description = "Use the Entitlements agent system in place of SecurityManager to enforce sandbox policies."
7676
)
77-
public void setEntitlementsEnabled(boolean enabled) {
78-
this.entitlementsEnabled = enabled;
79-
}
77+
public void setEntitlementsEnabled(boolean enabled) {}
8078

8179
@Input
8280
public Boolean getDebug() {
@@ -90,7 +88,7 @@ public Boolean getCliDebug() {
9088

9189
@Input
9290
public Boolean getEntitlementsEnabled() {
93-
return entitlementsEnabled;
91+
return true;
9492
}
9593

9694
@Input
@@ -240,9 +238,7 @@ else if (node.getSettingKeys().contains("telemetry.metrics.enabled") == false) {
240238
if (cliDebug) {
241239
enableCliDebug();
242240
}
243-
if (entitlementsEnabled) {
244-
enableEntitlements();
245-
}
241+
enableEntitlements();
246242
}
247243

248244
@TaskAction

build.gradle

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,34 @@ allprojects {
404404
apply plugin: 'elasticsearch.formatting'
405405
}
406406

407+
tasks.named("updateDaemonJvm") {
408+
def myPlatforms = [
409+
BuildPlatformFactory.of(
410+
org.gradle.platform.Architecture.AARCH64,
411+
org.gradle.platform.OperatingSystem.MAC_OS
412+
),
413+
BuildPlatformFactory.of(
414+
org.gradle.platform.Architecture.AARCH64,
415+
org.gradle.platform.OperatingSystem.LINUX
416+
),
417+
BuildPlatformFactory.of(
418+
org.gradle.platform.Architecture.X86_64,
419+
org.gradle.platform.OperatingSystem.LINUX
420+
),
421+
BuildPlatformFactory.of(
422+
org.gradle.platform.Architecture.X86_64,
423+
org.gradle.platform.OperatingSystem.WINDOWS
424+
),
425+
// anyone still using x86 osx?
426+
BuildPlatformFactory.of(
427+
org.gradle.platform.Architecture.X86_64,
428+
org.gradle.platform.OperatingSystem.MAC_OS
429+
)
430+
]
431+
toolchainPlatforms.set(myPlatforms)
432+
languageVersion = JavaLanguageVersion.of(21)
433+
vendor = JvmVendorSpec.ADOPTIUM
434+
}
407435

408436
tasks.register("verifyBwcTestsEnabled") {
409437
doLast {

distribution/tools/server-cli/src/main/java/org/elasticsearch/server/cli/SystemJvmOptions.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
import org.elasticsearch.common.settings.Settings;
1313
import org.elasticsearch.common.util.concurrent.EsExecutors;
14-
import org.elasticsearch.core.Booleans;
1514
import org.elasticsearch.jdk.RuntimeVersionFeature;
1615

1716
import java.io.IOException;
@@ -28,9 +27,8 @@ static List<String> systemJvmOptions(Settings nodeSettings, final Map<String, St
2827
String distroType = sysprops.get("es.distribution.type");
2928
String javaType = sysprops.get("es.java.type");
3029
boolean isHotspot = sysprops.getOrDefault("sun.management.compiler", "").contains("HotSpot");
31-
boolean entitlementsExplicitlyEnabled = Booleans.parseBoolean(sysprops.getOrDefault("es.entitlements.enabled", "true"));
32-
// java 24+ only supports entitlements, but it may be enabled on earlier versions explicitly
33-
boolean useEntitlements = RuntimeVersionFeature.isSecurityManagerAvailable() == false || entitlementsExplicitlyEnabled;
30+
31+
boolean useEntitlements = true;
3432
return Stream.of(
3533
Stream.of(
3634
/*

distribution/tools/server-cli/src/test/java/org/elasticsearch/server/cli/ServerCliTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ public void testElasticsearchSettingCanNotBeEmpty() throws Exception {
185185
}
186186

187187
public void testElasticsearchSettingCanNotBeDuplicated() throws Exception {
188-
assertUsage(containsString("setting [foo] already set, saw [bar] and [baz]"), "-E", "foo=bar", "-E", "foo=baz");
188+
assertUsage(containsString("setting [foo] set twice via command line -E"), "-E", "foo=bar", "-E", "foo=baz");
189189
}
190190

191191
public void testUnknownOption() throws Exception {

docs/changelog/120869.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 120869
2+
summary: Threadpool merge scheduler
3+
area: Engine
4+
type: feature
5+
issues: []

docs/changelog/124595.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 124595
2+
summary: '`ToAggregateMetricDouble` function'
3+
area: "ES|QL"
4+
type: enhancement
5+
issues: []

0 commit comments

Comments
 (0)