Skip to content

Commit c75fb9f

Browse files
authored
Merge branch 'main' into cache-impl-size-setting-bugfix
Signed-off-by: Peter Alfonsi <[email protected]>
2 parents 76ad2ef + dccd40f commit c75fb9f

File tree

133 files changed

+1076
-722
lines changed

Some content is hidden

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

133 files changed

+1076
-722
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,17 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
1313
- Switch from `buildSrc/version.properties` to Gradle version catalog (`gradle/libs.versions.toml`) to enable dependabot to perform automated upgrades on common libs ([#16284](https://github.com/opensearch-project/OpenSearch/pull/16284))
1414
- Increase segrep pressure checkpoint default limit to 30 ([#16577](https://github.com/opensearch-project/OpenSearch/pull/16577/files))
1515
- Add dynamic setting allowing size > 0 requests to be cached in the request cache ([#16483](https://github.com/opensearch-project/OpenSearch/pull/16483))
16+
- Support installing plugin SNAPSHOTs with SNASPHOT distribution ([#16581](https://github.com/opensearch-project/OpenSearch/pull/16581))
1617
- Make IndexStoreListener a pluggable interface ([#16583](https://github.com/opensearch-project/OpenSearch/pull/16583))
1718
- Support for keyword fields in star-tree index ([#16233](https://github.com/opensearch-project/OpenSearch/pull/16233))
1819
- Add a flag in QueryShardContext to differentiate inner hit query ([#16600](https://github.com/opensearch-project/OpenSearch/pull/16600))
1920
- Add vertical scaling and SoftReference for snapshot repository data cache ([#16489](https://github.com/opensearch-project/OpenSearch/pull/16489))
21+
- Support prefix list for remote repository attributes([#16271](https://github.com/opensearch-project/OpenSearch/pull/16271))
2022
- Add new configuration setting `synonym_analyzer`, to the `synonym` and `synonym_graph` filters, enabling the specification of a custom analyzer for reading the synonym file ([#16488](https://github.com/opensearch-project/OpenSearch/pull/16488)).
2123

2224
### Dependencies
25+
- Bump `com.google.cloud:google-cloud-core-http` from 2.23.0 to 2.47.0 ([#16504](https://github.com/opensearch-project/OpenSearch/pull/16504))
26+
- Bump `google-auth-library-oauth2-http` from 1.7.0 to 1.29.0 in /plugins/repository-gcs ([#16520](https://github.com/opensearch-project/OpenSearch/pull/16520))
2327
- Bump `com.azure:azure-storage-common` from 12.25.1 to 12.27.1 ([#16521](https://github.com/opensearch-project/OpenSearch/pull/16521))
2428
- Bump `com.google.apis:google-api-services-compute` from v1-rev20240407-2.0.0 to v1-rev20241021-2.0.0 ([#16502](https://github.com/opensearch-project/OpenSearch/pull/16502), [#16548](https://github.com/opensearch-project/OpenSearch/pull/16548))
2529
- Bump `com.azure:azure-storage-blob` from 12.23.0 to 12.28.1 ([#16501](https://github.com/opensearch-project/OpenSearch/pull/16501))
@@ -28,6 +32,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
2832
- Bump `com.nimbusds:nimbus-jose-jwt` from 9.41.1 to 9.46 ([#16611](https://github.com/opensearch-project/OpenSearch/pull/16611))
2933
- Bump `lycheeverse/lychee-action` from 2.0.2 to 2.1.0 ([#16610](https://github.com/opensearch-project/OpenSearch/pull/16610))
3034
- Bump `me.champeau.gradle.japicmp` from 0.4.4 to 0.4.5 ([#16614](https://github.com/opensearch-project/OpenSearch/pull/16614))
35+
- Bump `mockito` from 5.14.1 to 5.14.2, `objenesis` from 3.2 to 3.3 and `bytebuddy` from 1.15.4 to 1.15.10 ([#16655](https://github.com/opensearch-project/OpenSearch/pull/16655))
36+
- Bump `Netty` from 4.1.114.Final to 4.1.115.Final ([#16661](https://github.com/opensearch-project/OpenSearch/pull/16661))
37+
- Bump `org.xerial.snappy:snappy-java` from 1.1.10.6 to 1.1.10.7 ([#16665](https://github.com/opensearch-project/OpenSearch/pull/16665))
3138

3239
### Changed
3340

@@ -43,6 +50,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
4350
- Support retrieving doc values of unsigned long field ([#16543](https://github.com/opensearch-project/OpenSearch/pull/16543))
4451
- Fix rollover alias supports restored searchable snapshot index([#16483](https://github.com/opensearch-project/OpenSearch/pull/16483))
4552
- Fix permissions error on scripted query against remote snapshot ([#16544](https://github.com/opensearch-project/OpenSearch/pull/16544))
53+
- Fix `doc_values` only (`index:false`) IP field searching for masks ([#16628](https://github.com/opensearch-project/OpenSearch/pull/16628))
4654
- Fix max request cache size settings not working properly with pluggable caching ([#16636](https://github.com/opensearch-project/OpenSearch/pull/16636))
4755

4856
### Security

DEVELOPER_GUIDE.md

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
- [Getting Started](#getting-started)
33
- [Git Clone OpenSearch Repo](#git-clone-opensearch-repo)
44
- [Install Prerequisites](#install-prerequisites)
5-
- [JDK 11](#jdk-11)
6-
- [JDK 14](#jdk-14)
7-
- [JDK 17](#jdk-17)
5+
- [JDK](#jdk)
86
- [Custom Runtime JDK](#custom-runtime-jdk)
97
- [Windows](#windows)
108
- [Docker](#docker)
@@ -76,35 +74,24 @@ Fork [opensearch-project/OpenSearch](https://github.com/opensearch-project/OpenS
7674

7775
### Install Prerequisites
7876

79-
#### JDK 11
77+
#### JDK
8078

81-
OpenSearch builds using Java 11 at a minimum, using the Adoptium distribution. This means you must have a JDK 11 installed with the environment variable `JAVA_HOME` referencing the path to Java home for your JDK 11 installation, e.g. `JAVA_HOME=/usr/lib/jvm/jdk-11`. This is configured in [buildSrc/build.gradle](buildSrc/build.gradle) and [distribution/tools/java-version-checker/build.gradle](distribution/tools/java-version-checker/build.gradle).
79+
OpenSearch recommends building with the [Temurin/Adoptium](https://adoptium.net/temurin/releases/) distribution. JDK 11 is the minimum supported, and JDK-23 is the newest supported. You must have a supported JDK installed with the environment variable `JAVA_HOME` referencing the path to Java home for your JDK installation, e.g. `JAVA_HOME=/usr/lib/jvm/jdk-21`.
8280

83-
```
84-
allprojects {
85-
targetCompatibility = JavaVersion.VERSION_11
86-
sourceCompatibility = JavaVersion.VERSION_11
87-
}
88-
```
81+
Download Java 11 from [here](https://adoptium.net/releases.html?variant=openjdk11).
8982

90-
```
91-
sourceCompatibility = JavaVersion.VERSION_11
92-
targetCompatibility = JavaVersion.VERSION_11
93-
```
9483

95-
Download Java 11 from [here](https://adoptium.net/releases.html?variant=openjdk11).
84+
In addition, certain backward compatibility tests check out and compile the previous major version of OpenSearch, and therefore require installing [JDK 11](https://adoptium.net/temurin/releases/?version=11) and [JDK 17](https://adoptium.net/temurin/releases/?version=17) and setting the `JAVA11_HOME` and `JAVA17_HOME` environment variables. More to that, since 8.10 release, Gradle has deprecated the usage of the any JDKs below JDK-16. For smooth development experience, the recommendation is to install at least [JDK 17](https://adoptium.net/temurin/releases/?version=17) or [JDK 21](https://adoptium.net/temurin/releases/?version=21). If you still want to build with JDK-11 only, please add `-Dorg.gradle.warning.mode=none` when invoking any Gradle build task from command line, for example:
9685

97-
#### JDK 14
98-
99-
To run the full suite of tests, download and install [JDK 14](https://jdk.java.net/archive/) and set `JAVA11_HOME`, and `JAVA14_HOME`. They are required by the [backwards compatibility test](./TESTING.md#testing-backwards-compatibility).
100-
101-
#### JDK 17
86+
```
87+
./gradlew check -Dorg.gradle.warning.mode=none
88+
```
10289

103-
By default, the test tasks use bundled JDK runtime, configured in [buildSrc/version.properties](buildSrc/version.properties), and set to JDK 17 (LTS).
90+
By default, the test tasks use bundled JDK runtime, configured in version catalog [gradle/libs.versions.toml](gradle/libs.versions.toml), and set to JDK 23 (non-LTS).
10491

10592
```
10693
bundled_jdk_vendor = adoptium
107-
bundled_jdk = 17.0.2+8
94+
bundled_jdk = 23.0.1+11
10895
```
10996

11097
#### Custom Runtime JDK

distribution/tools/plugin-cli/src/main/java/org/opensearch/plugins/InstallPluginCommand.java

Lines changed: 4 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -137,8 +137,6 @@
137137
*/
138138
class InstallPluginCommand extends EnvironmentAwareCommand {
139139

140-
private static final String PROPERTY_STAGING_ID = "opensearch.plugins.staging";
141-
142140
// exit codes for install
143141
/** A plugin with the same name is already installed. */
144142
static final int PLUGIN_EXISTS = 1;
@@ -307,14 +305,7 @@ void execute(Terminal terminal, List<String> pluginIds, boolean isBatch, Environ
307305
private Path download(Terminal terminal, String pluginId, Path tmpDir, boolean isBatch) throws Exception {
308306

309307
if (OFFICIAL_PLUGINS.contains(pluginId)) {
310-
final String url = getOpenSearchUrl(
311-
terminal,
312-
getStagingHash(),
313-
Version.CURRENT,
314-
isSnapshot(),
315-
pluginId,
316-
Platforms.PLATFORM_NAME
317-
);
308+
final String url = getOpenSearchUrl(terminal, Version.CURRENT, isSnapshot(), pluginId, Platforms.PLATFORM_NAME);
318309
terminal.println("-> Downloading " + pluginId + " from opensearch");
319310
return downloadAndValidate(terminal, url, tmpDir, true, isBatch);
320311
}
@@ -341,38 +332,25 @@ private Path download(Terminal terminal, String pluginId, Path tmpDir, boolean i
341332
return downloadZip(terminal, pluginId, tmpDir, isBatch);
342333
}
343334

344-
// pkg private so tests can override
345-
String getStagingHash() {
346-
return System.getProperty(PROPERTY_STAGING_ID);
347-
}
348-
349335
boolean isSnapshot() {
350336
return Build.CURRENT.isSnapshot();
351337
}
352338

353339
/** Returns the url for an official opensearch plugin. */
354340
private String getOpenSearchUrl(
355341
final Terminal terminal,
356-
final String stagingHash,
357342
final Version version,
358343
final boolean isSnapshot,
359344
final String pluginId,
360345
final String platform
361346
) throws IOException, UserException {
362347
final String baseUrl;
363-
if (isSnapshot && stagingHash == null) {
364-
throw new UserException(
365-
ExitCodes.CONFIG,
366-
"attempted to install release build of official plugin on snapshot build of OpenSearch"
367-
);
368-
}
369-
if (stagingHash != null) {
348+
if (isSnapshot == true) {
370349
baseUrl = String.format(
371350
Locale.ROOT,
372-
"https://artifacts.opensearch.org/snapshots/plugins/%s/%s-%s",
351+
"https://artifacts.opensearch.org/snapshots/plugins/%s/%s",
373352
pluginId,
374-
version,
375-
stagingHash
353+
Build.CURRENT.getQualifiedVersion()
376354
);
377355
} else {
378356
baseUrl = String.format(

0 commit comments

Comments
 (0)